Riz*_*zen 6 java pdf jpeg2000 pdfbox
使用PDFBox 2.0.4将页面提取为图像,我的结果页面包含多个"黑洞",如下面的屏幕所示:
这种情况仅发生在这个PDF和其他几个:http://www.filedropper.com/selection_3
这是一个简单的代码(使用JavaFX)来重现问题(下载PDF后更改文件路径):
public class PDFExtractionTest extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
FileInputStream inputStream = new FileInputStream(new File("C:\\Users\\John\\Desktop\\selection.pdf"));
PDDocument document = PDDocument.load(inputStream);
PDFRenderer pdfRenderer = new PDFRenderer(document);
BufferedImage bufferedImage = pdfRenderer.renderImage(1);
Image fxImage = SwingFXUtils.toFXImage(bufferedImage, null);
BorderPane borderPane = new BorderPane();
ImageView imageView = new ImageView(fxImage);
borderPane.setCenter(imageView);
primaryStage.setScene(new Scene(borderPane, 1024, 768));
primaryStage.show();
}
public static void main(String[] args) throws FileNotFoundException {
launch(args);
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的依赖项:
在日志中我有这个,但我不知道这是否是问题的原因.我该如何解决?
févr. 01, 2017 11:20:51 AM org.apache.pdfbox.pdmodel.font.PDSimpleFont toUnicode
AVERTISSEMENT: No Unicode mapping for .notdef (9) in font Times-Bold
févr. 01, 2017 11:20:51 AM org.apache.pdfbox.rendering.Type1Glyph2D getPathForCharacterCode
AVERTISSEMENT: No glyph for 9 (.notdef) in font Times-Bold
févr. 01, 2017 11:20:51 AM org.apache.pdfbox.pdmodel.font.PDSimpleFont toUnicode
AVERTISSEMENT: No Unicode mapping for .notdef (9) in font Helvetica
févr. 01, 2017 11:20:51 AM org.apache.pdfbox.rendering.Type1Glyph2D getPathForCharacterCode
AVERTISSEMENT: No glyph for 9 (.notdef) in font Helvetica
Run Code Online (Sandbox Code Playgroud)
我错过了代码中的内容还是应该报告错误?
这是一个长期存在的问题(请参阅PDFBOX-1752)。该错误存在于 JAI 中,而不是存在于 PDFBox 中。“No unicode...”在这里无关紧要,这只与文本提取相关。
查看jai-imageio-jpeg2000 项目StdEntropyDecoder.java,然后按照此提交更改文件(从此拉取请求扩展)。构建项目并在 maven pom.xml 中引用版本 1.3.1-SNAPSHOT 或将 jar 文件复制到类路径中。
如果 jai-imageio-jpeg2000 项目团队发布了包含该拉取请求的新版本,那么您将不再需要自己构建。
其他关键词:黑色墨迹、黑色斑点
| 归档时间: |
|
| 查看次数: |
734 次 |
| 最近记录: |