非IT企業に勤める中年サラリーマンのIT日記

非IT企業でしかもITとは全く関係ない部署にいる中年エンジニア。唯一の趣味がプログラミングという”自称”プログラマー。

Javaで利用可能なフォント一覧を取得する方法

   

ソフトウェアを作る際に、それぞれのOSで使えるフォント一覧を取得したい時がありますね。

例えばこんなもの↓を作りたいなと思ったときなど。アプリケーションではよくある機能です。

 

Javaでは比較的OS依存の機能は弱いのですが、フォントに関してはそのOSで利用可能な一覧を取得することができます。

[ad#top-1]

GraphicsEnvironmentクラス

GraphicsEnvironmentクラスは特定のプラットフォームで利用可能なグラフィックスデバイスやフォントのコレクションを取得するためのクラスです。

その中にgetAllFonts() というメソッドがあり、これを使ってフォント一覧を取得します。返値はFontクラスの配列(Font[])です。

 

利用方法(ソースコード)

フォント一覧を取得するソースコードは以下の通りです。コンソール上にフォント一覧を羅列させるだけのプログラムです。

import java.awt.*;

public class FontGet{
  public static void main(String[] args){
    GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
    Font fonts[] = ge.getAllFonts();
    for(Font f : fonts){
      System.out.println(f.getName());
    }
  }
}
 

 

結果

上記のプログラムをコンパイルし実行させた結果がこちらです。Windows上で走らせたら以下のようにWindowsで使えるフォント一覧が表示されました。

 

ちなみに、Linux(kubuntu)でも動かしてみたら、以下の通りフォント一覧が取得できました。さすがRun Anywhereが謳い文句のJavaです。

.

[ad#ad-1]

スポンサーリンク

 - Java