【问题标题】:Can't read the embedded font ESNOYH+Calibri-Bold in pdf readingpdf阅读中无法读取嵌入字体ESNOYH+Calibri-Bold
【发布时间】:2013-10-24 14:51:52
【问题描述】:

我尝试了以下代码来阅读 pdf:

val byteArrayOutPutStream: ByteArrayOutputStream = new ByteArrayOutputStream
    val file = new File(path + name)
    val inputStream = new FileInputStream(file)
    val document = new PDFDocumentReader(inputStream)
    var result: List[BufferedImage] = Nil
    val numPgs = document.getNumberOfPages

    for (i <- 0 until numPgs) {
      val pageDetail = new PageDetail("", "", i, "")
      val resourceDetails = document.getPageAsImage(pageDetail)

      val image = ImageIO.read(new ByteArrayInputStream(resourceDetails.getBytes()))
      result ::= image
    }

但在特定的 pdf 中,我收到以下错误:

Oct 24, 2013 10:48:01 AM org.apache.pdfbox.pdmodel.font.PDTrueTypeFont getawtFont
INFO: Can't read the embedded font ESNOYH+Calibri-Bold
Oct 24, 2013 10:48:01 AM org.apache.pdfbox.util.PDFStreamEngine processOperator
WARNING: java.lang.NullPointerException
java.lang.NullPointerException
    at org.apache.pdfbox.pdmodel.font.PDTrueTypeFont.getawtFont(PDTrueTypeFont.java:427)
    at org.apache.pdfbox.pdmodel.font.PDSimpleFont.drawString(PDSimpleFont.java:97)
    at org.apache.pdfbox.pdfviewer.PageDrawer.processTextPosition(PageDrawer.java:190)
    at org.apache.pdfbox.util.PDFStreamEngine.processEncodedText(PDFStreamEngine.java:494)
    at org.apache.pdfbox.util.operator.ShowTextGlyph.process(ShowTextGlyph.java:62)
    at org.apache.pdfbox.util.PDFStreamEngine.processOperator(PDFStreamEngine.java:551)
    at org.apache.pdfbox.util.PDFStreamEngine.processSubStream(PDFStreamEngine.java:274)
    at org.apache.pdfbox.util.PDFStreamEngine.processSubStream(PDFStreamEngine.java:251)
    at org.apache.pdfbox.util.PDFStreamEngine.processStream(PDFStreamEngine.java:225)
    at org.apache.pdfbox.pdfviewer.PageDrawer.drawPage(PageDrawer.java:107)
    at org.apache.pdfbox.pdmodel.PDPage.convertToImage(PDPage.java:722)
    at org.apache.pdfbox.pdmodel.PDPage.convertToImage(PDPage.java:693)
    at org.dopdf.document.read.pdf.PDFPage.asImage(PDFPage.java:59)

我该如何解决这个问题?

【问题讨论】:

    标签: scala pdfbox pdf-reader


    【解决方案1】:

    显然这是一个已知问题PDFBOX-490: Pdf Printing of text from embedded fonts 已得到修复。但是我认为还没有发布的固定版本 2.0.0。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-09-10
      • 1970-01-01
      • 1970-01-01
      • 2019-10-07
      • 1970-01-01
      • 2016-01-30
      • 2014-06-02
      相关资源
      最近更新 更多