2017-03-31 16 views
0

UbuntuにインストールされたOracle 8 jdk、jre/lib内にはさまざまなfontPropertiesファイルとフォントを含むフォントディレクトリがあります。しかし、OpenJdk 8をインストールすると、jre/lib内のフォントファイルにこのようなフォントフォルダはありません。Openjdk Java用にフォントを定義/インストールした場所はどこですか?

どこからフォントを取得するのですか?システムのdepenにあるフォントがどこにインストールされているのでしょうか? gerynixからのアドバイス

fc-list

返さないフォント

GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames() 

に基づいて

更新 は、それはあなたがの上の環境からそれを取得

java.lang.NullPointerException 
     at sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1264) 
     at sun.awt.FontConfiguration.readFontConfigFile(FontConfiguration.java:219) 
     at sun.awt.FontConfiguration.init(FontConfiguration.java:107) 
     at sun.awt.X11FontManager.createFontConfiguration(X11FontManager.java:774) 
     at sun.font.SunFontManager$2.run(SunFontManager.java:431) 
     at java.security.AccessController.doPrivileged(Native Method) 
     at sun.font.SunFontManager.<init>(SunFontManager.java:376) 
     at sun.awt.FcFontManager.<init>(FcFontManager.java:35) 
     at sun.awt.X11FontManager.<init>(X11FontManager.java:57) 
     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
     at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) 
     at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 
     at java.lang.reflect.Constructor.newInstance(Constructor.java:423) 
     at java.lang.Class.newInstance(Class.java:442) 
     at sun.font.FontManagerFactory$1.run(FontManagerFactory.java:83) 
     at java.security.AccessController.doPrivileged(Native Method) 
     at sun.font.FontManagerFactory.getInstance(FontManagerFactory.java:74) 
     at sun.java2d.SunGraphicsEnvironment.getFontManagerForSGE(SunGraphicsEnvironment.java:190) 
     at sun.java2d.SunGraphicsEnvironment.getAvailableFontFamilyNames(SunGraphicsEnvironment.java:224) 
     at sun.java2d.SunGraphicsEnvironment.getAvailableFontFamilyNames(SunGraphicsEnvironment.java:252) 
     at sun.java2d.HeadlessGraphicsEnvironment.getAvailableFontFamilyNames(HeadlessGraphicsEnvironment.java:94) 
     at Fonts.main(Fonts.java:10) 

答えて

1

を与えますアプリケーションの実行。

ルック:

GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames() 

https://docs.oracle.com/javase/7/docs/api/java/awt/GraphicsEnvironment.html

+0

ので、私はあなたがいないフォントを剥ぎ取らLinuxマシンを持っているならば、インストールされている一部のフォントに依存する任意のコードが失敗すると仮定し、Linuxのコマンドがありますどのフォントがインストールされているかを確認するのに使うことができますか? –

+0

fc-list、 "linux check available fonts"の最初のgoogle検索結果 – gerynix

+0

大丈夫、どちらのコマンドも明示的にフォントがありません。だから、マシエンはLinuxを動かしているハードウェアです。通常のマシンのように更新するだけではいけません。何かに影響を与えずにファイルをコピーしてJavaアプリケーションで使用するためのフォントをインストールする方法はありますか? –

関連する問題