2

Java で単純な軽量の画像ブラウザを作成しようとしていますが、現在ImageIO.read(new File(/* PATH_TO_IMAGE */))は画像の読み込みに使用しています。

問題は、10 個の JPEG をロードするのに 10467 ミリ秒かかることです。何百もの画像をロードする可能性がある場合は特に、これは非常に遅くなるようです。

それらをロードするより速い方法はありますか?

paintComponentまた、違いがあれば、JPanel でオーバーライドし、Graphics2D を使用してサムネイルをペイントすることで、サムネイルを描画しています。(そして、これを行うためのより良い方法を提案してください)

4

2 に答える 2

3

サムネイルを表示する場合は、サムネイルの作成と保存を検討する必要があります。

毎秒何百もの 6 MB ファイルをロードできるとは期待できません。サムネイルは約 50 KB で、読み込みはかなり高速です (「読み込み」とは、ハードディスクから読み取り、メモリ内でデコードすることです)。

于 2012-05-15T05:00:55.450 に答える
3

サムネイルに関する @Thomas Mueller の提案を増幅すると、ここSwingWorkerに示すように、重労働を にオフロードできます。リサンプリングに関するこの回答も参照してください。

于 2012-05-15T05:24:14.817 に答える