public class FontOperate { [DllImport("kernel32.dll", SetLastError = true)] static extern int WriteProfileString(string lpszSection, string lpszKeyName, string lpszString); [DllImport("user32.dll")] public static extern int SendMessage(int hWnd, uint Msg, int wParam, int lParam ); [DllImport("gdi32")] public static extern int AddFontResource(string lpFileName); public static bool InstallFont(string sFontFileName, string sFontName) { string _sTargetFontPath = string.Format(@"{0}\fonts\{1}", System.Environment.GetEnvironmentVariable("WINDIR"), sFontFileName);//系统FONT目录 string _sResourceFontPath = string.Format(@"{0}\Font\{1}", System.Windows.Forms.Application.StartupPath, sFontFileName);//需要安装的FONT目录 try { if (!File.Exists(_sTargetFontPath) && File.Exists(_sResourceFontPath)) { int _nRet; File.Copy(_sResourceFontPath, _sTargetFontPath); _nRet = AddFontResource(_sTargetFontPath); _nRet = WriteProfileString("fonts", sFontName + "(TrueType)", sFontFileName); } } catch { return false; } return true; } } 使用 using System; using System.Collections.Generic; using System.Linq; using System.Text; using UtilityHelper; namespace LHCity_LMS_Client.Test { class Program { static void Main(string[] args) { FontOperate.InstallFont("simfang.ttf", "simfang"); Console.ReadLine(); } } }
原文地址:https://www.cnblogs.com/chlm/p/9451376.html
时间: 2024-10-11 03:31:40