如何将分辨率降低到没有宽松dpi的图像?
问题描述:
我有以下类如何将分辨率降低到没有宽松dpi的图像?
public void resize(InputStream input, OutputStream output, int width, int height) throws IOException {
BufferedImage src = ImageIO.read(input);
BufferedImage dest = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
Graphics2D g = dest.createGraphics();
AffineTransform at = AffineTransform.getScaleInstance((double)width/src.getWidth(), (double)height/src.getHeight());
g.drawRenderedImage(src, at);
ImageIO.write(dest, "tif", output);
output.close();
}
,但最终的结果,我输在1 DPI我怎么能保持dpi的图像中?
答
Dpi是每英寸点数的缩写,并且支持图像的质量。所以,当你改变图像的分辨率时,你会失去该图像原始尺寸的图像的dpi(每英寸点数)(因为你失去了质量!)。 因此,这是不可能的!