所有这些文本看起来都是一样的,但我试图让它们看起来不同。我要小口径的短信。我在这里遗漏了什么,才能让小盘排字效果发挥作用?
若要复制此操作,请打开Visual 2008,执行文件\新建项目,创建一个新的Windows\WPF应用程序,将下面的标记粘贴到Window1.xaml中,然后运行它。
<Window x:Class="WpfApplication1.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="300">
<Grid>
<FlowDocumentReader>
<FlowDocument>
<Paragraph>
<Run>Some text</Run> <LineBreak />
<Run Typography.Capitals="SmallCaps">Some text</Run> <LineBreak />
<Run Typography.Capitals="AllSmallCaps">Some text</Run> <LineBreak />
<Run Typography.Capitals="PetiteCaps">Some text</Run> <LineBreak />
<Run Typography.Capitals="AllPetiteCaps">Some text</Run> <LineBreak />
</Paragraph>
</FlowDocument>
</FlowDocumentReader>
</Grid>
</Window> 根据第一个答案,如果您指定了一个特定的字体,您就可以得到某个位置。将FlowDocument开始标记更改为:
<FlowDocument FontFamily="Palatino Linotype">。。你得到的是SmallCaps和AllSmallCaps,而不是PetiteCaps或AllPetiteCaps。所以这取决于字体。但这也引发了其他问题:
< code >H 111可以在代码中确定字体支持什么--如果是这样的话,我可以伪造AllSmallCaps --例如,将文本转换为所有大写并缩放80%。但不是SmallCaps.
发布于 2009-03-12 14:31:00
这只适用于特定的OpenType字体-帮助中的示例使用Pescadero,它位于OpenType示例中。即使如此,也只支持SmallCaps和AllSmallCaps。
发布于 2012-05-16 03:51:30
我注意到带有“粗体”字体的默认字体确实正确地呈现了SmallCaps:
<StackPanel>
<TextBlock Typography.Capitals="SmallCaps" FontFamily="Pescadero" Padding="2">2pm</TextBlock>
<TextBlock Typography.Capitals="SmallCaps" FontWeight="Bold" Padding="2">2pm</TextBlock>
</StackPanel>https://stackoverflow.com/questions/636454
复制相似问题