2009-05-04 36 views
3

我在GDI +中無法使用某些ttf字體時遇到問題。我似乎無法找到一些工作和非工作字體之間的區別。一些可以被讀取和渲染而沒有問題。對於某些字體,GDI +只是將文件報告爲缺失(它不是)。格式必須有錯誤,但我不能爲我的生活找出它是什麼...任何指針?GDI的字體問題+

回答

2

有關字體的事情是它們是編程中最難理解的方面之一。我有類似的問題(請參閱Corrupt TrueType font detection)。通過我的問題 - 這可能會有所幫助。

你可以發佈一些關於你的問題的更多細節,比如你正在使用的API,工作的字體,不需要的字體等?

+0

我似乎無法得到有關錯誤實際的信息 - 它似乎深深嵌入到GDI +中。不過在調用PrivateFontCollection.AddFontFile(string path)時會發生。不幸的是,我不能發佈由於我們的客戶擁有它們而不起作用的字體。可以工作的字體的例子都是Windows提供的標準ttf:s。 – 2009-05-04 10:50:27

+0

我假設這是一個輪廓字體,做驗證。如果是這樣,那麼你實際上可能需要閱讀TTF規範,然後去掉字體文件(通過MS Font Validator或自定義分析器)來解決這個問題。請注意,您也可能會被執行錯誤所困擾(即與TTF規範說的偏差 - 這是什麼讓我感到困擾)。 – dirkgently 2009-05-04 10:59:58

+0

可能性是 - 客戶的字體已損壞。也請和你的客戶談談。另外,你在小圈子裏有什麼字體相關的工具? – dirkgently 2009-05-04 11:01:36

5

GDI +是挑剔的,它只適用於真正的TrueType字體,而不適用於OpenType或PostScript字體,所以支持比使用GDI更少。

看看this link,它可能會幫助你。