gpt4 book ai didi

c# - Mono PrivateFontCollection.AddFontFile 错误的解决方法

转载 作者:可可西里 更新时间:2023-11-01 09:15:57 24 4
gpt4 key购买 nike

当我在 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/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com