- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
当我在 Mono.net 中调用 PrivateFontCollection.AddFontFile 方法时,它总是返回标准字体系列。这个错误已经在几个网站上报告过,但据我所知没有办法解决它。该错误本身尚未在 Mono 库中修复。有什么解决方法吗?
编辑:作为对追随者回答的回应,我将发布代码:
PrivateFontCollection pfc = new PrivateFontCollection();
pfc.AddFontFile("myFontFamily.ttf");
myFontFamily = pfc.Families[0x00];
Font myFont = new Font(myFontFamily,14.0f);
我知道这段代码在 Microsoft.Net 框架上运行良好,但在 Mono 上执行时,它只给出一个标准字体系列(我认为它是 Arial),名称为 myFontFamily.ttf
最佳答案
从谷歌找到这篇文章。如果有什么安慰的话,我遇到了与 AddMemoryFont 相同的问题(在 Windows 上工作正常,mono 给了我一个通用字体。)如果有任何安慰的话,它看起来像是 Mono 的问题,而不是你的代码。
通过源代码挖掘,System.Windows.Drawing.PrivateFontCollection 主要只是 GDIPlus.GdipPrivateAddFontFile 的包装器,它本身是 fontconfig 的 FcConfigAppFontAddFile 的包装器。它似乎没有抛出任何错误的原因是 GDIplus 不检查 fontconfig 的返回值,所以 fontconfig 似乎出于某种原因无法读取字体,但 GDIplus 不知道,所以 PrivateFontCollection 也没有。
关于c# - Mono PrivateFontCollection.AddFontFile 错误的解决方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2307860/
当我在 Mono.net 中调用 PrivateFontCollection.AddFontFile 方法时,它总是返回标准字体系列。这个错误已经在几个网站上报告过,但据我所知没有办法解决它。该错误本
我们创建了大量的字体供短期使用。字体嵌入在文档中。如果不再使用,我想删除字体文件。我们应该怎么做?以下简化代码不起作用: PrivateFontCollection pfc = new Private
每个人,我都在使用 GDI+ 以我自己的字体呈现文本,但在使用成员函数 AddFontFile(WCHAR*) 时,我总是得到错误状态 InvalidParameter PrivateFontColl
所以我需要使用项目中包含的 font.otf 文件将 .otf 字体文件添加到 c# 中的 PrivateFontCollection。当文件在本地加载时,我在部署到我的服务器时收到以下异常。 [异常
我是一名优秀的程序员,十分优秀!