在winform中安装和使用特定字体
我想在winform应用程序中使用特定字体。 此字体将从我的应用程序资源自动安装在用户个人计算机中。
我怎样才能做到这一点?
我使用了一些来自用户个人计算机的代码。 如果我使用它, font
必须保留在用户个人计算机中,但我不希望这样。
System.Drawing.Text.PrivateFontCollection fontCollection = new System.Drawing.Text.PrivateFontCollection(); fontCollection.AddFontFile(@"C:\Windows\Fonts\SUTOM__.TTF"); FontFamily family = new FontFamily("SutonnyMJ", fontCollection); Font font3of9 = new Font(family, 15); label1.Font = font3of9;
1.使用安装项目安装
您可以从安装项目中安装字体来执行此操作
文件系统>右键单击目标计算机上的文件系统>添加特殊文件夹字体文件夹
然后选择字体文件夹并Add > File...
2.以编程方式安装字体
为了达到这个目的,你不得不做一些外部电话。
[DllImport("gdi32.dll", EntryPoint="AddFontResourceW", SetLastError=true)] public static extern int AddFontResource([In][MarshalAs(UnmanagedType.LPWStr)] string lpFileName);
然后从任何你想要的地方打电话
AddFontResource(@"C:\FontLocation\MyFont.TTF");