問題
同事反應參考 透過 Aspose.Words 將 Word 轉出 PDF 時,自造字(EUDC) 可以顯示出來 這篇的做法轉出 PDF 內容,自造字(EUDC)有顯示出來,但其他字卻變成了黑點。
除錯
1.設定 EUDC 檔案與系統字型連結
當拿到字造字型檔(TTE)放到電腦後,要設定機碼讓它連結到系統字型,
機碼目錄為 電腦\HKEY_CURRENT_USER\EUDC\950
,
機碼SystemDefaultEUDCFont
,值為EUDC檔案目錄
,如下,
2.重開機
重開機後,可直接開啟 Word 檔,另存成 PDF 檔案來驗證 一般字及自造字 是否完整呈現
3.透過 Aspose.Words 來另存 PDF 檔
安裝 Aspose.Words Nuget 套件
1 | Aspose.Words.Document doc = new Aspose.Words.Document(@"c:\eudc\t1.doc"); |
查看 t3.pdf 一般字及自造字 都是有呈現的。
詢問同事後,同事給了 VB.NET 的程式碼,如下,
1 | Dim doc = New Aspose.Words.Document("c:\eudc\t1.doc") |
看了一下,原來是少了給 SystemFontSource ,補足 SystemFontSource 就沒問題了
1 | Dim doc = New Aspose.Words.Document("c:\eudc\t1.doc") |