我有以下课程
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?
答案 0 :(得分:1)
Dpi是每英寸点数的缩写,并且是图像质量的缩写。因此,当您更改图像的分辨率时,您将以该图像的原始大小放松图像的dpi(每英寸点数)(因为您失去了质量!)。 因此,不可能!