如何在没有松散dpi的情况下降低图像的分辨率?

时间:2016-08-15 02:23:31

标签: java image resolution 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?

1 个答案:

答案 0 :(得分:1)

Dpi是每英寸点数的缩写,并且是图像质量的缩写。因此,当您更改图像的分辨率时,您将以该图像的原始大小放松图像的dpi(每英寸点数)(因为您失去了质量!)。 因此,不可能!