2012-02-29 23 views
2

私のアプリは、以下を行いますとのTextArea:のFlex 4:サポートされていないグリフ(非埋め込みフォント)を検出

  1. は、クライアントマシンにインストールされているフォントを列挙し、彼らとドロップダウンリストを埋めるように、本
  2. (AOUのような)特殊文字
  3. 更新のTextAreaのフォントファミリドロップダウンリストで選択された1

にそれが更新された後、三つの可能な結果があるように思われる:正しいグリフ、空白SPAC e、またはデバイスフォントのフォールバックグリフ(_serifと思われますが、CSSスタイルは_typewriterです)。 私の目標は、デバイスフォントが選択されたユーザーフォントのすべてのグリフをサポートしているかどうかをプログラムで検出することです。

さまざまな子供(0の幅などを検出するため)でgetBoundsを試し、原子についての情報を取得し、空白またはフォールバックグリフのfontFamilyに対する正しいグリフのfontFamilyを比較しました。 UpdateCompleteEventまたはCompositionCompleteEventを送出する変更を書式設定する場合は、完了後に常にチェックを行います。

これにアプローチする別の方法はありますか、私は何かが足りないのですか?

ありがとうございました。

答えて

1
+0

hasGlyphsは有望に見えるが、どのように私は(真)enumerateFontsからフォントのインスタンスを作成するのでしょうか?私は埋め込みフォントを扱っていません。 – Ethan

+0

文書の一番下にあるコメントをチェックしてください。誰かがデバイスフォントではうまくいかないと言っていますが、フォントを読み込む方法に関しては、単にローダーを使うだけのようです。http: //labs.tomasino.org/2009/07/16/flash-as3-runtime-font-manager/ – shaunhusain

+0

これは明示的に埋め込む必要があるフォントです。私はクライアントのコンピュータ上のデバイスフォントのリストを読んでいます。 – Ethan

関連する問題