gpt4 book ai didi

java - 调整图像大小而不丢失信息

转载 作者:太空宇宙 更新时间:2023-11-04 14:06:39 26 4
gpt4 key购买 nike

我试图实现与 MS Word 中相同的调整图像大小的功能。

我想调整 BufferedImage 的大小,但在调整大小的过程中丢失了一些信息。

我尝试实现两种方法,但都产生了相同的结果。

在调整大小之前:

enter image description here

在我的应用程序中进行几次调整大小操作后的图片:

enter image description here

第一种方法:

image = Thumbnails.of(image).size(w,h).asBufferedImage();

第二种方法:

image = toBufferedImage(image.getScaledInstance(w, h, Image.SCALE_SMOOTH));

image 是 BufferedImage 的实例,w 是图像的新宽度,h 是图像的新高度

知道我做错了什么吗?

最佳答案

每次尝试调整大小后,您都会不断丢失图像中的信息。如果您想要解决方案(例如在 MS Word 中),您必须保留原始图像但仅显示调整大小的副本。

最好的解决方案是创建一个对象来存储原始图像并根据需要制作调整大小的副本。您可以通过添加简单的缓存来提高此解决方案的质量,这样您实际上就不会为每个请求生成另一个已调整大小的图像副本,但前提是您的应用程序需要与上次具有不同高度或宽度的图像。

希望对你有一点帮助。

关于java - 调整图像大小而不丢失信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28797428/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com