我想修改WPF文本框中字符之间的间距。
类似于letter-spacing: 5px
的东西,可在CSS中使用。
我认为这是可能的在XAML;最简单的方法是什么?如何在WPF文本框中指定字母间距或字距?
我找到了“Introduction to the GlyphRun Object and Glyphs Element”的文件,并发现它是非常无益的。
这是从该网页的代码实例:
<!-- "Hello World!" with explicit character widths for proportional font -->
<Glyphs
FontUri = "C:\WINDOWS\Fonts\ARIAL.TTF"
FontRenderingEmSize = "36"
UnicodeString = "Hello World!"
Indices = ",80;,80;,80;,80;,80;,80;,80;,80;,80;,80;,80"
Fill = "Maroon"
OriginX = "50"
OriginY = "225"
/>
同一个文件页面给出了Indices
属性的作用这个“解释”:
我不知道是什么任何这些手段。我也不确定索引是否正确 - 代码中的评论提到了我不关心的“字符宽度”。我想调整字符之间的宽度。
此外,对于如何将Glyphs
元素应用到文本框没有实例。当我尝试它时,我的WPF测试应用程序刚刚崩溃。
我想要做的是稍微增加WPF文本框中绘制字符之间出现的空白空间。文本的长度和内容会有所不同。每当有新角色时,我是否必须修改Indicies
属性?有没有办法说“让每个角色的空间比平时多出20%”。
任何人都可以帮助我吗?
这是一个不错的解决方案(我投了票),但这肯定会导致性能问题。我们在一些地方使用了这个解决方案,但是我们想在具有几百个项目的'ItemsControl'中使用它,并且它在渲染时间中添加了多个秒。在这些情况下,我们回到了常规的“TextBlock”。所以请注意/小心! – 2014-12-11 20:23:53
这也会打破修剪或换行文字的能力。 – Walkor 2017-06-12 16:47:37