java从png PDXObjectImage获取BuffereImage
我正在尝试从PDXObjectImage获取一个带有png后缀的BuffereImage,后缀为:
PDResources pdResources = pdPage.getResources();
Map<String, PDXObject> xobjects = (Map<String, PDXObject>) pdResources.getXObjects();
if (xobjects != null) {
for (String key : xobjects.keySet()) {
PDXObject xobject = xobjects.get(key);
if (xobject instanceof PDXObjectImage) {
PDXObjectImage imageObject = (PDXObjectImage) xobject;
String suffix = imageObject.getSuffix();
if (suffix != null) {
BufferedImage image = imageObject.getRGBImage();
}
}
}
}
这段代码在使用jpg PDXObjectImages时运行良好,但在使用png图像时,图像为空
从具有PNG后缀的PDXObjectImage获取BuffereImage的正确方法是什么
我也试过:
BufferedImage image = ImageIO.read(((PDPixelMap)imageObject).getPDStream().createInputStream());
但图像也是空的
我在用org。阿帕奇。pdfbox版本1.8.11
共 (0) 个答案