有没有办法在我的 WPF 应用程序中使用 ODTTF 字体文件?
创建 XPS 文件时,它会将原始文档的字体子集化并混淆为 ODTTF 字体文件,并将它们捆绑在 XPS 文件中(这只是一个 zip 文件,因此很容易提取它们。)
我已经提取了其中一个 ODTTF文件,并将其作为资源包含在我的 WPF 应用程序中。
我现在尝试将它用作 TextBlock 的 FontFamily。我尝试了各种 URI 字符串来引用 XAML 中的 ODTTF 字体,但我根本无法让它工作。 (我可以使用常规 TTF 文件,而不是 ODTTF)
有办法做到这一点吗?我在一些谷歌搜索中发现了人们正在设法做到这一点的证据!
When an XPS file is created, it subsets and obfuscates the original document's fonts as ODTTF font files, and bundles them in the XPS file (which is just a zip file, so they are easily extracted.)
I've extracted one of these ODTTF files, and included it as a Resource in my WPF app.
I'm now trying to use it as the FontFamily of a TextBlock. I tried various URI strings to reference the ODTTF font in my XAML, but I can't get it to work at all. (I can get a regular TTF file to work, just not an ODTTF)
Is there a way to do this? I've found evidence in a few Google searches that people are managing to do this!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
ODTTF 文件已被混淆。要将它们用作 TTF,您必须对它们进行反混淆。您可以使用此代码:
一旦以这种方式写入 .TTF 文件,您就可以使用该字体。请注意,XPS 文件中的字体是子集,仅包含 XPS 文件中实际使用的那些字符,因此它们无法在 MS-Word 等中用作字体。
ODTTF files are obfuscated. To use them as TTF you must deobfuscate them. You can use this code:
Once written to a .TTF file this way you can use the font. Note that the fonts in XPS files are subsets, only containing those characters actually used in the XPS file, so they won't be useful to use in, say, MS-Word as a font.