我想阅读一个图像,使用awt和Apache Commons Imaging(以前称为Apache Commons Sanselan)进行扩展 我无法缩放图像,但我可以在浏览器中正确地看到它 jpg 没有任何问题。 使用
获取图像信息 Sanselan.getMetadata(fileData)
我收到此信息:
No Exif metadata.
Photoshop (IPTC) metadata:
代码
public static byte[] scale(byte[] fileData, int width, int height) {
ByteArrayInputStream in = new ByteArrayInputStream(fileData);
try {
BufferedImage img = javax.imageio.ImageIO.read(in);
....
return buffer.toByteArray();
} catch (IOException e1) {
System.out.println ("e1 -> " + e1.getMessage());
try {
BufferedImage img = Sanselan.getBufferedImage(in);
} catch (ImageReadException | IOException e2) {
System.out.println ("e2 -> " + e2.getMessage());
}
}
return fileData;
}
但我有例外:
e1 -> Unsupported Image Type
e2 -> Can't parse this format.
答案 0 :(得分:1)
图像缩放可以在没有外部库的情况下完成。
Image img = ImageIO.read(URL);
Image scaledImg = img.getScaledInstance(IMG_WIDTH, IMG_HEIGHT, Image.SCALE_DEFAULT);
请参阅docs获取更多灵感。