我的Java Swing应用程序具有JFrame
的最大边界。到目前为止,应用程序以jar文件的形式发布。
最初对于背景图像我使用了png
格式的一些大的任意图像文件。我确实有一个代码可以加载并设置图像作为JFrame
的背景。
现在,我以cdr
和png
格式从设计师那里获得了一张新图片。 Png图像现在是5 x 4千像素。
我的要求:
满足要求的最佳选择是什么?
png
,并根据分辨率在运行时调整为较小的图像cdr
或其他一些矢量格式。但我不确定Java是否可以轻松阅读并将其转换为BufferedImage
答案 0 :(得分:2)
如果您有机会获取.svg
中的文件,这将最符合您的需求。然后,您可以查看Apache's Batik库及其光栅化器来渲染图像。
答案 1 :(得分:1)
满足要求的最佳选择是什么?
将文件大小调整为1920x1080并保持为
png
,并在运行时调整为较小的图像..
..或更大 - 时间继续,屏幕分辨率变大(&更大)..
..如果根据决议需要。
是。我认为这是最好的选择。
加载库以在运行时将SVG或EPS渲染到BufferedImage
对于BG图像而言似乎有些过分。
应用程序以jar文件形式发布..
使用图像的应用程序通常具有GUI。这个应用程序吗?有一个GUI?
如果是这样,最好使用Java Web Start部署它。
JWS for JWS可以通过懒惰和编程方式下载,并在更新时刷新,因此图像可能应该位于单独的Jar中,以避免每次修复bug时都下载新版本。放置图像(或一般的压缩媒体文件 - 声音,视频......)时,请使用“无压缩”。 Zip对这些已经高度优化或至少非常专业的数据格式没有任何好处。