2009-05-04 15 views
3

GDI +で動作しないttfフォントで問題が発生しました。一部の作業用フォントと非作業用フォントの間に違いは見当たりません。あるものは、問題なく読んで、レンダリングすることができます。一部のフォントでは、GDI +はそのファイルを不足していると報告します(これはそうではありません)。何かがフォーマットに間違っている必要がありますが、私の人生はそれが何であるかを見つけることができません...任意のポインター?GDI +のフォントに問題があります

答えて

3

マイクロソフトはMicrosoft Font Validatorと呼ばれるまともなツールを無料でダウンロードできます。

+0

私はまだエラーが実際に何を意味するのか全く分かりませんが、少なくとも私はそれらのリストを持っています...私がフォントプロバイダに渡すことができないフォント。非常に便利、ありがとう! –

+0

私は、OpentypeがTrueTypeのアウトラインを持っていても、フォントはGDI +(System.Drawing)を使って描画しないという似た問題を抱えていた - Microsoft Font Validatorはフォントが、私のアプリケーションでは機能しません。 –

2

フォントに関することは、それらがプログラミングの最も理解されていない側面の1つであるということです。私も同様の問題がありました(Corrupt TrueType font detection参照)。私の質問には行きましょう。それは助けになるかもしれません。

使用しているAPI、動作しているフォント、そうでないフォントなど問題の詳細を投稿できますか?

+0

実際にエラーが発生したという情報は得られません.GDI +に深く組み込まれているようです。ただし、PrivateFontCollection.AddFontFile(文字列パス)を呼び出すときに発生します。残念ながら私はクライアントが所有しているので動作しないフォントを投稿することはできません。動作するフォントの例は、Windowsで提供される標準のttf:sです。 –

+0

これはアウトラインフォントであると仮定していますが、検証してください。そうであれば、実際にはTTF仕様書を読んで、MS Font Validatorまたはカスタムパーサーを介して問題のフォントファイルを調べる必要があります。実装上のバグ(つまり、TTF仕様の逸脱 - これは私を噛んだものです)によってもかまわないことに注意してください。 – dirkgently

+0

あなたのクライアントのフォントが壊れている可能性があります。あなたのクライアントにも話してください。また、どのようなフォント関連ツールをあなたの同僚に持っていますか? – dirkgently

5

GDI +は真のTrueTypeフォントでのみ動作し、OpenTypeまたはPostScriptフォントでは動作しないため、GDIよりもサポートが少なくなります。

this linkをご覧ください。お手数ですが、

+0

OpenTypeは、それぞれCFFまたはTrueTypeグリフアウトライン(それぞれ 'CFF'または 'glyf'テーブル)に適用できるスーパーセット用語です。したがって、TrueTypeフォントはOpenTypeフォントですが、すべてのOpenTypeフォントがTrueTypeであるとは限りません。 GDI +はWindows 8.1のOpenType CFFフォントをサポートしています。 –

関連する問題