【发布时间】:2011-08-28 06:14:19
【问题描述】:
我在整个应用程序中使用一种通用格式将图像保存为 png。上传的任何 jpg 图像仍会使用以下代码保存为 png。
java.awt.image.BufferedImage bufferedImage = ImageIO.read(jpgImagePAth);
if(!IsExtensionPng(jpgImagePath)){
ImageIO.write(bufferedImage, "png", new File(pptFolder, justNamePng));
}
但这会保留 alpha,即使它在 jpg 中不存在,所以 2MB 图像 7MB 和 6MB 到 16MB 。无论如何在不保持 alpha 的情况下保存 png 吗?
我需要转换为 PNG 的原因是,稍后当我在图像上添加文本时,它会失去实际分辨率。我已经尝试过无损 JPEG,但没有修复它。
【问题讨论】:
-
“上传的图片”,你会如何使用它们?根据这个答案,我也许可以提出一些建议......
-
jpgImagePAth 那就是已经上传 jpg 图片的地方。
-
我的意思是,一旦它们被上传并存储在硬盘上。这是用于桌面应用程序吗?如果是这样,请解释一下。你打算通过互联网为他们服务吗?我们在谈论多少张图片?你会经常使用它们吗?
-
这是一个网络应用程序。是的,我将通过互联网提供服务。 800KB 的图片保存为 png 后变成 1.5MB。
标签: java image-processing awt image-editor