2008-12-03 46 views
1

我正在嘗試在C#中加載自定義字體,以便它可以被COM庫(如ESRI)和GDI +使用。在.NET中使用COM對象的自定義字體

我想從磁盤加載字體並且不想在系統上安裝字體。

COM字體的類型是stdole.IFontDisp。

編輯:使用AddFontResourceEx組合與PrivateFontCollection解決問題。

+0

通常是好問一個問題,並與一些現有的代碼,顯示你如何試圖提示答案參考發現(可能失敗)做任何你正在努力去做。 – 2008-12-03 18:55:25

回答

1

有兩個GDI函數就可以使用

AddFontResource RemoveFontResoure

詳細here

明白,當你有這個加載其他應用程序將能夠看到和使用的字體。如果你想使用API​​,沒有其他解決方法。一旦你添加了字體,你就可以設置一個IFontDisp(用於COM)和一個CFont(用於GDI +)並使用它。

注意IFontDisp是通過向標準OLE類型