从C#应用程序的文件加载字体

Fer*_*anB 23 .net c# fonts winforms

我希望在C#中加载和使用字体到桌面应用程序.没有在系统上安装字体就可以了吗?

这是一个像这样的问题,但不是来自DLL.我想从字体文件加载.

Joh*_*ren 25

System.Drawing.dll中有一个System.Drawing.Text.PrivateFontCollection类,它可以基于每个应用程序管理字体.

您所做的就是在应用程序中维护此集合,并通过AddFontFile或AddMemoryFont添加字体,然后您就可以使用该字体,就像它安装在您的系统上一样.

这就像仅为应用程序安装字体一样.一旦进程终止,将卸载该字体.

  • 我认为你必须保持你的私人字体集合,以便它不会被垃圾收集.当我尝试使用我使用我的字体集合中的数据构建的Font对象进行绘制时,我一直遇到异常.我想我曾经有过我的字体,我不关心这个系列,对吧?显然不是.只要您需要字体,只需保留对字体集的引用即可.这至少对我有用. (2认同)

小智 8

https://blog.andreloker.de/post/2008/07/03/Load-a-font-from-disk-stream-or-byte-array.aspx

试试这个...

该博客描述了如何使用FontCollection类.