Csharp/C#教程:Mono PrivateFontCollection.AddFontFile错误的解决方法分享


Mono PrivateFontCollection.AddFontFile错误的解决方法

当我在Mono.net中调用PrivateFontCollection.AddFontFile方法时,它总是返回一个标准的font-family。 这个bug已经在几个网站上报道,但据我所知,没有办法解决它。 错误本身尚未在Mono-libraries中修复。 它有什么解决方法吗?

编辑:作为对henchman的回答的反应,我将发布代码:

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的问题,而不是你的代码。

通过源代码,System.Windows.Drawing.PrivateFontCollection主要只是GDIPlus.GdipPrivateAddFontFile的包装器,它本身就是fontconfig的FcConfigAppFontAddFile的包装器。 它似乎没有抛出任何错误的原因是GDIplus没有检查来自fontconfig的返回值,所以看起来fontconfig因为某种原因无法读取字体,但是GDIplus不知道它,所以PrivateFontCollection也没有。

上述就是C#学习教程:Mono PrivateFontCollection.AddFontFile错误的解决方法分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/997890.html

(0)
上一篇 2021年12月26日
下一篇 2021年12月26日

精彩推荐