1

次の手順に従って、問題のあるフォント ファイルのディレクトリを見つけようとしています: http://devnet.jetbrains.com/docs/DOC-172

フォント名でエラーが発生します。ただし、一致するファイルを検索して削除しましたが、スクリプトは同じフォント名でエラーをスローし続けます。Windows 7 のどこかに隠しコピーがあると思われ、出力にファイル ディレクトリ情報を追加したいと考えています。

例外が出力される前に、ファイルに関するディレクトリ情報を取得する方法はありますか? または、システム内のフォントのリストを取得するために、Java はファイル ディレクトリ構造以外のものを使用していますか?

import java.awt.Font;
import java.awt.GraphicsEnvironment;

public class FontTest {
  public static void main(String[] args) {
    Font[] fonts = GraphicsEnvironment.getLocalGraphicsEnvironment().getAllFonts();
    for (int i = 0; i < fonts.length; i++) {
      final Font font = fonts[i];
      final String name = font.getName();

      System.out.print("Checking Font: " + name);

      if (font.canDisplay('a') &&
        font.canDisplay('z') &&
        font.canDisplay('A') &&
        font.canDisplay('Z') &&
        font.canDisplay('0') &&
        font.canDisplay('1')) {
        System.out.println(" OK.");
      } else {
       System.out.println();
      }
    }
  }
}
4

1 に答える 1

1

私はこれを理解しました。Windows 7 は、フォント管理用に洗練された UI を実装しています。ただし、これはディレクトリ内の Adob​​e Type 1 フォントを表示しませんでした。コマンドラインでディレクトリ検査を行い、見つかったファイルの 1 つを「検索」しました。これにより、最終的にエクスプローラーにディレクトリが表示され、そこからすべての Type1 ファイルを削除できました。ふぅ。ありがとう!

于 2013-03-25T15:33:31.523 に答える