在c#应用程序中使用特定字体

时间:2016-05-18 07:40:30

标签: c# .net winforms fonts

基本上,我在我的项目中使用自定义字体,该字体安装在我的操作系统中。 问题是在客户端PC上没有安装此字体,因此应用程序使用默认字体。

在没有每个表单/控件代码更改的情况下,有没有办法在应用程序中使用该字体?最好的解决方案是使用字体而不在系统中安装它并更改每个表单/控制代码。

1 个答案:

答案 0 :(得分:1)

没有全球设置可以做到这一点。

您需要以递归方式遍历表单中的所有控件,并更改字体。创建一个继承自Form的基本表单。做递归。

然后使所有表单从该基本表单继承。使用PrivateFontCollection导入字体并更改conrtol字体。

var pfc = new PrivateFontCollection();
pfc.AddFontFile(@"C:\MyFont.ttf");
myControl.Font = new Font(pfc.Families[0], 14, FontStyle.Regular);