图像IO问题
for (int i = 0; i < width; i++) {
for (int j = 0; j < height; j++) {
int intPixel = image.getRGB(i, j);
image.setRGB(i, j, intPixel);
}
}
ImageIO.write(image, "JPG", new File("img/newfile01.jpg"));
此代码生成 96 dpi 的图像,但源图像是 72 dpi!为什么
for (int i = 0; i < width; i++) {
for (int j = 0; j < height; j++) {
int intPixel = image.getRGB(i, j);
image.setRGB(i, j, intPixel);
}
}
ImageIO.write(image, "JPG", new File("img/newfile01.jpg"));
This code make a 96dpi image but the source image was 72 dpi! why
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
似乎有一个默认值。
image.setDpi(72)
有效吗?it seems there is a default value. Does
image.setDpi(72)
work?看看这里的答案之前询问过 PNG 图像
ImageIO 允许您为某些输出格式设置图像元数据,但这不是一项简单的任务,并且可能不支持 JPEG 图像。
Take a look at the answer here previously asked for PNG images
ImageIO allows you to set image metadata for some output formats, but it is not a trivial task, and may not be supported for JPEG images.