下面是示例代码,该示例代码使Microsoft示例图片(tulips.jpg)图像出现错误

bufferedImage = Imaging.getBufferedImage(new file("Tulips.jpg"));

File imageFile = new File("outputfile.jpg");
final Map<String, Object> optionalParams = new HashMap<String, Object>();
Imaging.writeImage(bufferedImage, imageFile, ImageFormats.JPEG, optionalParams);


该代码给出“无法写入此图像格式(Jpeg-Custom)”的代码。任何指针都会有很大帮助。我已经搜索了stackoverflow,谷歌-到目前为止没有帮助。

当我阅读文档时,它指出如果bufferedImage.getType()== TYPE_UNKNOWN,它将给出此消息,但不知道为什么给出UNKNOWN。

非常感谢你的帮助。

最佳答案

Apache Commons Imaging不支持写入JPEG文件。您可以在此处查看受支持的格式信息:http://commons.apache.org/proper/commons-imaging/formatsupport.html(甚至不完全支持JPEG读取)。但是,请写入其他受支持的格式(例如,您可以在writeImage函数调用中将图像格式更改为PNG,它将起作用)。

此外,Apache Commons Imaging还没有发布,所以我不建议在关键代码中使用它。

或者,您可以查看JDK javax.imageio.ImageIO类(一些示例:https://docs.oracle.com/javase/tutorial/2d/images/saveimage.html)。

您到底想在代码中实现什么?

10-07 18:55