WPF - 使用自定义字体系列复制/粘贴选择
我的 WPF 应用程序中嵌入了一个自定义字体系列,我可以通过指定基本 URI 和字体系列名称来引用它。
new FontFamily(new Uri("pack://application:,,,/Fonts/"), "./#My Custom Font Family");
但是,当我复制使用此字体的选择时,剪贴板上的 xaml 类似于以下内容
<Run Text="Foo" FontFamily="./#My Custom Font Family" />
当我粘贴到同一个 RichTextBox 中时,我会丢失字体,因为它会回退到系统默认值,因为 -
当将 FontFamily 指定为标记中的属性时,始终隐含基本 URI 值 — 其值是 XAML 页面的 URI。 http://msdn.microsoft.com/en-我们/library/system.windows.media.fontfamily.aspx
和我的 xaml 页面与自定义字体系列不在同一目录中。
有解决方法的想法吗?
I have a custom font family embedded in my WPF application which I can reference by specifying a base URI and font family name.
new FontFamily(new Uri("pack://application:,,,/Fonts/"), "./#My Custom Font Family");
However, when I copy a selection which uses this font the xaml on the clipboard resembles the following
<Run Text="Foo" FontFamily="./#My Custom Font Family" />
When I paste into the same RichTextBox I lose the font as it falls back to the system default because -
When a FontFamily is specified as an attribute in markup, the base URI value is always implied—its value is the URI of the XAML page. http://msdn.microsoft.com/en-us/library/system.windows.media.fontfamily.aspx
and my xaml page is not located in the same directory as the custom font family.
Any ideas for a workaround?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我最终通过更改字体系列的初始化方式来解决这个问题。
当
序列化到剪贴板(XAML)
和最终结果时,我的自定义字体在富文本框中复制/粘贴时被保留。
I ended up working around this by changing the way the font family was initialized.
became
when serialized to the clipboard (XAML)
and the end result - my custom font is preserved when copy/pasted within the rich text box.