gpt4 book ai didi

pdfbox - 使用 pdfbox 解析文件内容时使用后备字体 - 会导致错误吗?

转载 作者:行者123 更新时间:2023-12-03 23:18:23 28 4
gpt4 key购买 nike

我正在使用使用 pdfbox 2.0.3 的 Apache Tika 1.14。
我用它来提取文件的文本内容。在生产模式下处理许多文件时,我会记录许多如下语句:

WARN  o.a.p.pdmodel.font.PDTrueTypeFont - Using fallback font 'LiberationSans' for 'TimesNewRomanPSMT'
WARN o.a.p.pdmodel.font.PDTrueTypeFont - Using fallback font 'LiberationSans' for 'TimesNewRomanPS-BoldMT'

我比较了几个文件并将提取的文本与其原始文档进行了比较,没有遗漏任何内容。

我的问题是:如果我仅将 pdfbox 用于文本提取,那么我可以安全地忽略这种类型的语句而不会有任何遗漏的风险吗?或者我应该安装缺少的字体?

感谢您的任何建议

最佳答案

根据我在这里找到的
https://pdfbox.apache.org/1.8/cookbook/workingwithfonts.html
他们建议安装所谓的 标准 14 种字体 .

由于许可要求,我们需要提供替代字体。

基于类中的代码 org.apache.pdfbox.pdmodel.font.FontMapperImpl , 这些是 标准 14 种字体 及其替代品:

Courier:CourierNew,CourierNewPSMT,LiberationMono,NimbusMonL-Regu
Courier-Bold:CourierNewPS-BoldMT,CourierNew-Bold,LiberationMono-Bold,NimbusMonL-Bold
Courier-Oblique:CourierNewPS-ItalicMT,CourierNew-Italic,LiberationMono-Italic,NimbusMonL-ReguObli
Courier-BoldOblique:CourierNewPS-BoldItalicMT,CourierNew-BoldItalic,LiberationMono-BoldItalic,NimbusMonL-BoldObli
Helvetica:ArialMT,Arial,LiberationSans,NimbusSanL-Regu
Helvetica-Bold:Arial-BoldMT,Arial-Bold,LiberationSans-Bold,NimbusSanL-Bold
Helvetica-Oblique:Arial-ItalicMT,Arial-Italic,Helvetica-Italic,LiberationSans-Italic,NimbusSanL-ReguItal
Helvetica-BoldOblique:Arial-BoldItalicMT,Helvetica-BoldItalic,LiberationSans-BoldItalic,NimbusSanL-BoldItal
Times-Roman:TimesNewRomanPSMT,TimesNewRoman,TimesNewRomanPS,LiberationSerif,NimbusRomNo9L-Regu
Times-Bold:TimesNewRomanPS-BoldMT,TimesNewRomanPS-Bold,TimesNewRoman-Bold,LiberationSerif-Bold,NimbusRomNo9L-Medi
Times-Italic:TimesNewRomanPS-ItalicMT,TimesNewRomanPS-Italic,TimesNewRoman-Italic,LiberationSerif-Italic,NimbusRomNo9L-ReguItal
Times-BoldItalic:TimesNewRomanPS-BoldItalicMT,TimesNewRomanPS-BoldItalic,TimesNewRoman-BoldItalic,LiberationSerif-BoldItalic,NimbusRomNo9L-MediItal
Symbol:Symbol,SymbolMT,StandardSymL
ZapfDingbats:ZapfDingbatsITC,Dingbats,MS-Gothic

我知道,例如,当处理使用字体 Helvetica 的文件而我没有安装该字体时,将使用其中一种替代字体:
ArialMT、Arial、LiberationSans、NimbusSanL-Regu。
这很清楚。

如果我没有安装 Arial 字体(它不是 Standard 14 Fonts 之一)并且我希望在使用 Arial 处理文件时使用 LiberationSans,该怎么办。有没有办法配置这种映射?

还有一件事:在 1.8.13 版本中,我在类里面看到: org.apache.pdfbox.pdmodel.font.FontManager资源文件已加载: org/apache/pdfbox/resources/FontMapping.properties可用于提供此类映射。
在 2.x 版中,我看不到这样做的任何可能性。我想知道为什么它被删除了...

关于pdfbox - 使用 pdfbox 解析文件内容时使用后备字体 - 会导致错误吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44117759/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com