我有一个PNG图像,我想调整它的大小。我该怎么做?虽然我已经通过this我无法理解片段。在java中调整大小图像
回答
如果你有一个Image
,rezising它不需要任何额外库。只要做到:
Image newImage = yourImage.getScaledInstance(newWidth, newHeight, Image.SCALE_DEFAULT);
Ovbiously,具有指定图像的尺寸更换newWidth
和newHeight
。
注意最后一个参数:它告诉运行时您要用于调整大小的算法。
有算法可以产生非常精确的结果,但是这些算法需要很长时间才能完成。
您可以使用任何的算法如下:
Image.SCALE_DEFAULT
:使用默认的图像缩放算法。Image.SCALE_FAST
:选择一种图像缩放算法,该算法比缩放图像的平滑度具有更高的缩放速度优先级。Image.SCALE_SMOOTH
:选择图像缩放算法,使图像平滑度比缩放速度更优先。Image.SCALE_AREA_AVERAGING
:使用面积平均图像缩放算法。Image.SCALE_REPLICATE
:使用ReplicateScaleFilter
类中包含的图像缩放算法。
查看Javadoc了解更多信息。
文档链接指的是旧版本使用它来代替:http://download.oracle.com/javase/6/docs/api/java/awt/Image.html – 2011-05-05 10:57:12
@哈里乔伊:你说得对。我会编辑我的答案。谢谢! – 2011-05-05 18:42:11
试试这个:
ImageIcon icon = new ImageIcon(UrlToPngFile);
Image scaleImage = icon.getImage().getScaledInstance(28, 28,Image.SCALE_DEFAULT);
IIRC,这种方式(getSclaedInstance())由于缺乏性能而不被建议(我认为很久以前,我在“肮脏的富客户端”中阅读过)。 – jfpoilpret 2011-05-05 10:22:12
@jfpoilpret:欲了解更多信息。看[Image.getScaledInstance()]的危害(http://today.java.net/pub/a/today/2007/04/03/perils-of-image-getscaledinstance.html)。 – 2011-05-05 10:37:02
不需要使用'ImageIcon',你可以直接执行'ImageIO.read(...)'。 – 2011-05-07 14:59:52
我们这样做是为了创建图像的缩略图:
BufferedImage tThumbImage = new BufferedImage(tThumbWidth, tThumbHeight, BufferedImage.TYPE_INT_RGB);
Graphics2D tGraphics2D = tThumbImage.createGraphics(); //create a graphics object to paint to
tGraphics2D.setBackground(Color.WHITE);
tGraphics2D.setPaint(Color.WHITE);
tGraphics2D.fillRect(0, 0, tThumbWidth, tThumbHeight);
tGraphics2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);
tGraphics2D.drawImage(tOriginalImage, 0, 0, tThumbWidth, tThumbHeight, null); //draw the image scaled
ImageIO.write(tThumbImage, "JPG", tThumbnailTarget); //write the image to a file
- 1. Java调整图像大小
- 2. 用Java调整图像大小。如何调整大小
- 3. 在窗口调整大小时自动调整图像大小
- 4. 在窗口调整大小的图像映射调整大小
- 5. 在Symfony 2.8中调整图像大小
- 6. 在MATLAB中调整图像大小
- 7. 在Python中调整图像大小
- 8. 在XCode中调整图像大小?
- 9. 在Iphone中调整图像大小
- 10. 在VB.NET中调整图像大小
- 11. 在Python中调整图像大小
- 12. 在R中调整大小图像
- 13. 在jQuery中调整图像大小
- 14. 在ASPNET中调整图像大小VB
- 15. 调整图像大小
- 16. Drupal - 图像调整大小
- 17. 图像的大小调整
- 18. 调整图像大小5
- 19. php调整大小图像
- 20. 调整图像大小
- 21. Opencart - 图像调整大小
- 22. JavaME调整图像大小
- 23. PHP:调整图像大小
- 24. Javascript图像调整大小
- 25. 图像调整大小捏
- 26. 调整图像大小 - Symfony
- 27. TCPDF图像调整大小
- 28. imageWithContentsOfFile调整图像大小
- 29. CGRect图像调整大小
- 30. CSS图像大小调整
你究竟对这段代码不了解? – Heisenbug 2011-05-05 10:02:55
你想生成一个原始PNG的调整大小的版本,或者只是在你的用户界面的某处绘制一个调整大小的版本? – dcn 2011-05-05 10:03:51
@ dcn resized version – 2011-05-05 10:35:45