これらの記事によると:
http://news.kynosarges.org/2015/06/29/javafx-dpi-scaling-fixed
https://twitter.com/michaelsamarin/status/729234779292483584
Java 9 は、Swing で高 DPI ディスプレイ (自動 DPI スケーリング) をサポートする必要があります。Zulu 9上のJava 9 Early Access +の最新バージョンでテストしましたが、動作し、見た目も非常に優れています。
高解像度/網膜画像の読み込みという1つのことだけを解決できませんでした。
上下の記事 (リンク) によると、Apple の命名規則( @2x )を使用する必要があります。
image.png
、image@2x.png
、image@3x.png
など
これらの読み込み方法をテストしました:
Toolkit.getDefaultToolkit().getImage(getClass().getClassLoader().getResource("something/image.png"));
と
ImageIO.read(getClass().getResource("/something/image.png"));
しかし、これらはどれも機能しません (唯一の基本イメージがロードされてぼやけました)。
これによれば:
最初の方法は有望なはずです。
これを経験した人はいますか (Swing または JavaFX を使用)? 私が何か間違ったことをしているのか、それともこの機能が Java 9 ソファーの現在のプレリリース バージョンに実装されていないのかはわかりません。
アップデート:
可能なはずです:
次の命名規則も試しました(ここで説明):
Windows : image.scale-<dpi-value>.png (image.scale-140.png)
Linux : image.java-scale2x.png
Mac : image@2x.png and image.java-scale2x.png
ただし、実用的な解決策や公式情報は見つかりません。わかりません。今日、hdpi ディスプレイは一般的であり、Java アプリケーションは s のように見えます。