所以this question佔地面積很好如何獲得當前字體路徑,但如果我想改變的路徑是什麼?如何更改Windows字體文件夾?
例如,目前
System.Environment.GetFolderPath(System.Environment.SpecialFolder.Fonts);
將包含類似
C:\ WINDOWS \字體
但如果這個項目我想要的目的它指向
d:\資源\字體
有沒有辦法我能做到這一點?或者告訴Windows不要使用其環境路徑,而是使用我想要的路徑?
所以this question佔地面積很好如何獲得當前字體路徑,但如果我想改變的路徑是什麼?如何更改Windows字體文件夾?
例如,目前
System.Environment.GetFolderPath(System.Environment.SpecialFolder.Fonts);
將包含類似
C:\ WINDOWS \字體
但如果這個項目我想要的目的它指向
d:\資源\字體
有沒有辦法我能做到這一點?或者告訴Windows不要使用其環境路徑,而是使用我想要的路徑?
你並不需要改變系統設置。您可以從您喜歡的任何文件夾加載字體。例如:
var pfc = new PrivateFontCollection();
pfc.AddFontFile(fontFile);
var fontFamily = new FontFamily(pfc.Families.First().Name,pfc);
richTextBox1.Font = new Font(fontFamily, 20f, FontStyle.Bold);
richTextBox1.Text = "Test";
PrivateFontCollection是System.Drawing程序集的一部分嗎?有沒有其他方法可以做到這一點?繪圖目前不是我可以訪問的程序集之一(儘管我可以通過給出足夠好的理由或證據來改變它,但沒有其他辦法)。 – AdamP
爲什麼?你想達到什麼目的?這聽起來像個壞主意。 – SLaks
你真的,真的不希望這樣做。 –
我們有一些自定義的字體已經安裝在系統中的資源文件夾。我們正在對系統進行一次重大改革,其中涉及將過去用腳本文件完成的大量代碼移到c#中。這是字體問題發揮作用的地方。我被要求儘可能避免移動字體。如果這是不可能的,我需要爲此做個案。 – AdamP