Pit*_*ger 2 java image-processing
如下图所示,我将第一张图像作为原始JPEG图像.第二张图像用于缓冲图像,然后使用质量为1.0的http://www.lac.inpe.br/JIPCookbook/6040-howto-compressimages.jsp进行保存.静止图像尺寸变小,失真很小.是否可以将图像保存到其质量中?请注意,保存图像不仅仅是一个样本测试.添加文本后,我以最高质量保存它,这也会丢失信息.
不要重绘图像并保存.只需复制原始字节!
我怀疑你当前的代码是这样的:
BufferedImage image = ImageIO.read(new File("my.jpg");
ImageIO.write(image, "jpg", new File("copy.jpg"));
Run Code Online (Sandbox Code Playgroud)
每次重复此操作时,图像都会稍微改变(如您所见,您总是会失去一些质量).如果您只想复制JPEG /文件而不更改任何内容,可以执行以下操作(从此页面http://www.exampledepot.com/egs/java.io/CopyFile.html):
void copy(File src, File dst) throws IOException {
InputStream in = new FileInputStream(src);
OutputStream out = new FileOutputStream(dst);
// Transfer bytes from in to out
byte[] buf = new byte[1024];
int len;
while ((len = in.read(buf)) > 0) {
out.write(buf, 0, len);
}
in.close();
out.close();
}
Run Code Online (Sandbox Code Playgroud)