当我上传带有图像的图像时,它正在转换图像的分辨率
我的意思是说我正在上传300 dpi的图像,它会转换为96 dpi为什么?
我没有使用任何调整大小
答案 0 :(得分:0)
猜猜,你不复制图像元数据,这里简单的例子如何做到这一点:
ImageInputStream iis =ImageIO.createImageInputStream(new File("test.jpg"));
ImageReader reader = (ImageReader) ImageIO.getImageReaders(iis).next();
reader.setInput(iis, true);
IIOMetadata meta = reader.getImageMetadata(0);
BufferedImage image = reader.read(0);
/*
do image manipulations here
*/
ImageOutputStream ios = ImageIO.createImageOutputStream(new File("out.jpg"));
ImageWriter writer = ImageIO.getImageWriter(reader);
writer.setOutput(ios);
writer.write(meta, new IIOImage(image, null, null), null);
由于您未提供任何具体细节,我已在本地文件上进行了测试。但是,我希望它能为您提供一些提示。