代码之家  ›  专栏  ›  技术社区  ›  j will

Apache PDFBox在转换为PNG时删除水平线

  •  2
  • j will  · 技术社区  · 6 年前

    https://drive.google.com/file/d/1sAXwnaoZ-QJn1Kbpw85hhzV_X5zwgfkA/view?usp=sharing

    以下是使用PDFBox 2.0.13的PDF的PNG: enter image description here

    为什么要删除这些线?如何在PNG中渲染这些线?

    1 回复  |  直到 6 年前
        1
  •  4
  •   mkl    6 年前

    问题(很可能)是您没有安装JBIG2图像格式的Java ImageIO插件,因为缺少的行和标题实际上是JBIG2图像。

    有关PDFBox依赖项的更多详细信息,请阅读 the PDFBox 2.0 Dependencies 页特别地

    JAI映像I/O

    PDF支持嵌入式图像文件,但对某些格式的支持需要第三方库,这些库是根据与Apache 2.0许可证不兼容的条款分发的:

    这些库是可选的,如果类路径上存在,则将加载这些库,否则将禁用对这些图像格式的支持,并且在遇到不支持的图像时将记录警告。

    这些组件的Maven依赖项可以在parent/pom.xml中找到。如果需要,请更改组件的范围。请确保任何第三方许可证都适合您的项目。

    要包含JBIG2库,可以在项目pom.xml中包含以下部分:

    <dependency>
        <groupId>org.apache.pdfbox</groupId>
        <artifactId>jbig2-imageio</artifactId>
        <version>3.0.0</version>
    </dependency>