Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wpf 如何在文本框中更改XAML中的字符间距?_Wpf_Xaml_Character_Spacing_Kerning - Fatal编程技术网

Wpf 如何在文本框中更改XAML中的字符间距?

Wpf 如何在文本框中更改XAML中的字符间距?,wpf,xaml,character,spacing,kerning,Wpf,Xaml,Character,Spacing,Kerning,如何在textblock中更改WPF应用程序中的字符间距。也称为字符紧排或跟踪。也许您可以为文本框添加一个行为,该行为将遍历每个字符并在其后面添加一个空格 或者,如果使用数据绑定,则使用具有相同逻辑的转换器 如果您想做得过火,可以创建一个自定义控件,该控件将继承TextBox并实现该间距逻辑 这还允许您添加一个依赖项属性,如“NumOfSpaces” 您还可以控制它将放置多少空格An建议使用 除此之外,还允许进行一些调整。字符间距或anton2g正确提到的紧排/跟踪不是在文本中的字符之间添加一个

如何在textblock中更改WPF应用程序中的字符间距。也称为字符紧排或跟踪。

也许您可以为文本框添加一个行为,该行为将遍历每个字符并在其后面添加一个空格

或者,如果使用数据绑定,则使用具有相同逻辑的转换器

如果您想做得过火,可以创建一个自定义控件,该控件将继承TextBox并实现该间距逻辑 这还允许您添加一个依赖项属性,如“NumOfSpaces” 您还可以控制它将放置多少空格

An建议使用


除此之外,还允许进行一些调整。

字符间距或anton2g正确提到的紧排/跟踪不是在文本中的字符之间添加一个或多个空格,而是更细粒度的调整。引用维基百科的话:在印刷术中,字距调整(不太常见的榫眼调整)是一种按比例调整字符间距的过程,通常是为了获得令人愉悦的视觉效果。紧排调整单个字母表单之间的间距,而跟踪(字母间距)在一系列字符上统一调整间距。FontStretch是一种字体选择属性,如果该字体系列支持更薄和更宽的变体(但并非所有变体都支持),则该属性可以工作。Arial窄字体就是这样一种著名的字体。当我尝试它时,Arial窄字体似乎忽略了该设置?@user230910:正如德韦恩·罗宾逊(Dwayne Robinson)已经指出的:并非所有字体都支持该设置。我理解,但从您的评论中我理解Arial窄字体支持它。没问题,只是想帮助未来的读者:)“也称为紧排”紧排默认启用,不应与字母间距(跟踪)混淆,因为紧排是特定字母对(如A和V)之间的调整(使用字体内部的距离调整将它们拉近)。另一方面,字母间距是对所有字符簇的全局调整,这听起来像是您想要的。Windows 8中存在CharacterSpacing属性,但我不确定它是否在您的WPF版本中可用。