4

の境界が最大化された Java Swing アプリケーションがありますJFrame。アプリケーションは今まで jar ファイルとして配布されていました。

png最初に背景画像として、 -formatの大きな任意の画像ファイルを使用しました。そして、画像を背景として読み込んで設定できるコードがありますJFrame

今、デザイナーからcdrpng形式の両方で新しい画像を受け取りました。現在、png 画像は 5 x 4,000 ピクセルです。

私の要件:

  1. 画像ファイルのサイズを最小限に抑える
  2. さまざまな画面解像度をサポートする

要件を満たすための最良の選択肢は何ですか?

  • ファイルのサイズを 1920x1080 に変更してそのままにしpng、解像度に応じて必要に応じて実行時に小さな画像にサイズ変更します
  • ファイルをcdr他のベクター形式として保持します。しかし、Javaがそれを簡単に読み取って変換できるかどうかはわかりませんBufferedImage
4

2 に答える 2

2

ファイルを取得する機会があれば、.svgこれがニーズに最適です。次に、Apache のBatikライブラリとそのラスタライザーを見て、画像をレンダリングすることができます。

于 2013-01-17T11:51:01.103 に答える
1

要件を満たすための最良の選択肢は何ですか?

ファイルのサイズを 1920x1080 に変更してそのままにしpng、実行時に小さな画像にサイズ変更します。

..以上- 時間が経つにつれて、画面の解像度が大きくなります (さらに大きくなります)。

.. 解像度に応じて必要な場合。

はい。それが最良の選択肢だと思います。

BufferedImage実行時に SVG または EPS をレンダリングするためのライブラリをロードすることは、BG 画像にとってやり過ぎのように思えます。

展開

アプリケーションは jar ファイルとして配布されます。

イメージを使用するアプリケーションには多くの場合、GUI があります。このアプリを行います。GUIをお持ちですか?

その場合は、Java Web Startを使用してデプロイするのが最適です。

JWS の Jar は遅延してプログラムでダウンロードでき、更新時に更新されるため、バグ修正があるたびに新しいバージョンをダウンロードすることを避けるために、イメージはおそらく独自の別の Jar にある必要があります。画像 (または一般的に圧縮されたメディア ファイル - サウンド、ビデオなど) を配置する場合は、「圧縮なし」を使用します。Zip は、これらの既に高度に最適化された、または少なくとも非常に特殊化されたデータ形式には何の役にも立ちません。

于 2013-01-18T02:39:05.200 に答える