Cod*_*987 6 wpf formatting glyph
在WPF4,我怎么可以计算'Size'
的FormattedText
或者GlyphRun
一个drawingvisual
.
我在画布上使用drawingvisual.当我更改文本大小或文本时,会发生更改但实际宽度和高度相同或不会更新.
Using dc As DrawingContext = drawingvisual.RenderOpen
Dim ft As New FormattedText(...)
dc.DrawText(ft, New Point(0, 0))
dc.Close()
End Using
Run Code Online (Sandbox Code Playgroud)
一旦初始化了FormattedText,它的Width和Height成员等于其给定参数的实际渲染大小.实际上,更改参数会立即更新它们,例如:
FormattedText ft = new FormattedText(cellString, CultureInfo.CurrentCulture, FlowDirection.LeftToRight, fontFace, fontSize, fontBrush);
ft.Trimming = TextTrimming.CharacterEllipsis;
double originalHeight = ft.Height;
double width = ft.Width;
ft.MaxTextWidth = bCellRect.Width; // Set the width to get a new height
double height = ft.Height;
Run Code Online (Sandbox Code Playgroud)
编辑GlyphRun:当您创建GlyphRun时,您已经为每个字符提供了预先宽度,因此您可以为宽度添加宽度.要获得高度,请使用GlyphTypeface.Baseline*FontSize
归档时间: |
|
查看次数: |
5768 次 |
最近记录: |