c# – Mono PrivateFontCollection.AddFontFile错误的解决方法
发布时间:2020-12-15 06:45:45 所属栏目:百科 来源:网络整理
导读:当我在Mono.net中调用PrivateFontCollection.AddFontFile方法时,它总是返回一个标准的font-family.这个错误已经在几个网站上报告过,但据我所知,没有办法解决它.这个bug本身并没有在Mono-libraries中修复.有没有解决办法? 编辑:作为对henchman答案的反应,我
当我在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上执行时,它只是给出一个标准的font-family(我认为是Arial),名称为myFontFamily.ttf 解决方法
从谷歌发现这个帖子如果它是任何安慰,我遇到与AddMemoryFont相同的问题(在Windows上工作正常,单声道给我一个通用的字体.)如果它是任何安慰,它看起来像是Mono的问题,而不是您的代码.
挖掘源码,System.Windows.Drawing.PrivateFontCollection大多只是围绕GDIPlus.GdipPrivateAddFontFile的包装器,它本身是围绕fontconfig的FcConfigAppFontAddFile的包装器.不出现任何错误的原因是GDIplus不会检查fontconfig中的返回值,所以看起来fontconfig无法以任何原因读取字体,但是GDIplus不了解它,所以也不是PrivateFontCollection. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |