java怎么设置插入图片大小?

Python017

java怎么设置插入图片大小?,第1张

用Image中的getScaledInstance方法得到一个按照指定宽度和高度缩放以后的Image实例,然后再用setImage方法设置ImageIcon所显示的图像

static int SCALE_DEFAULT表示默认的图像缩放算法。

public Image getScaledInstance创建此图像的缩放版本。返回一个新的 Image 对象,默认情况下,该对象按指定的 width 和 height 呈现图像。即使已经完全加载了初始源图像,新的 Image 对象也可以被异步加载。

如果 width 或 height 为负数,则替换该值以维持初始图像尺寸的高宽比。如果 width 和 height 都为负,则使用初始图像尺寸。

BufferedImage image = javax.imageio.ImageIO.read(file)报错:java.lang.OutOfMemoryError

: Java heap space

图片大小是3425px*4843px,我本机内存1g。

------解决方案--------------------------------------------------------

Xms Xmx 把jvm的heap 调大点 试试~~~

------解决方案--------------------------------------------------------

设置一下stack size的大小 java 后跟参数即可设置,具体参数如下:

-Xms size set initial Java heap size

-Xmx sizeset maximum Java heap size

-Xss size set java thread stack size

------解决方案--------------------------------------------------------

用java.exe -Xmx1024m -Xms256m .来运行的程序,你机器是1G但是又没分配给jvm

------解决方案--------------------------------------------------------

ImageIO.read(File file)使用来自boolean getUseCache() 和 File getCacheDirectory()的当前缓存设置控制所创建的 ImageInputStream 中的缓存。其中getUseCache()默认设定是true,getCacheDirectory()返回的是setCacheDirectory(File cacheDirectory)所设定的目标,如果用户没有明显设定,那么getCacheDirectory()返回的将是null。