Ubuntu 机器在解析 PDF 文件时出现字体问题
Font issue on Ubuntu machine in parsing PDF File
我的 Ubuntu 14.04.x 机器上有一个应用程序。此应用程序对 PDF 文件进行文本挖掘。我怀疑它正在使用 Apache Tika 等...
问题是,在阅读过程中,我收到以下警告:
2015-09-10 14:15:35 [WARN] FontManager Font not found: CourierNewPSMT
2015-09-10 14:15:36 [WARN] FontManager Font not found: CourierNewPSMT
2015-09-10 14:19:33 [WARN] FontManager Font not found: Helvetica
2015-09-10 14:19:34 [WARN] FontManager Font not found: ESQWSF+Helvetica
2015-09-10 14:19:34 [WARN] FontManager Font not found: ESQWSF+Helvetica
2015-09-10 14:19:34 [WARN] FontManager Font not found: ESQWSF+Helvetica
......
如何在我的机器上获取这些字体?还是我缺少一些 java 字体库?
我会采取三步法来解决这个问题。
- 使用 strace 分析搜索和未找到的文件
- 使用apt-file搜索提供这些文件的包
- 安装缺少的包
1.) 如果尚未安装 strace,请安装它 sudo apt-get install strace
检查您的应用使用了哪些文件:
$> strace <your app> 2>&1 | grep open
您可以进一步过滤 ENOENT 错误:
$> strace <your app> 2>&1 | grep open | grep ENOENT
现在你应该知道丢失了什么文件了。
2.) 检查提供此文件的软件包。
(dpkg -S 仅适用于已安装的软件包)
su
apt-get install apt-file
apt-file update
apt-file search <filename>
3.) 使用 apt-get install <package>
安装该包
我这里没有 Ubuntu,但 MS 字体通常在名为 "mscorefont" 或类似名称的包中提供。
我的 Ubuntu 14.04.x 机器上有一个应用程序。此应用程序对 PDF 文件进行文本挖掘。我怀疑它正在使用 Apache Tika 等...
问题是,在阅读过程中,我收到以下警告:
2015-09-10 14:15:35 [WARN] FontManager Font not found: CourierNewPSMT
2015-09-10 14:15:36 [WARN] FontManager Font not found: CourierNewPSMT
2015-09-10 14:19:33 [WARN] FontManager Font not found: Helvetica
2015-09-10 14:19:34 [WARN] FontManager Font not found: ESQWSF+Helvetica
2015-09-10 14:19:34 [WARN] FontManager Font not found: ESQWSF+Helvetica
2015-09-10 14:19:34 [WARN] FontManager Font not found: ESQWSF+Helvetica
......
如何在我的机器上获取这些字体?还是我缺少一些 java 字体库?
我会采取三步法来解决这个问题。
- 使用 strace 分析搜索和未找到的文件
- 使用apt-file搜索提供这些文件的包
- 安装缺少的包
1.) 如果尚未安装 strace,请安装它 sudo apt-get install strace
检查您的应用使用了哪些文件:
$> strace <your app> 2>&1 | grep open
您可以进一步过滤 ENOENT 错误:
$> strace <your app> 2>&1 | grep open | grep ENOENT
现在你应该知道丢失了什么文件了。
2.) 检查提供此文件的软件包。 (dpkg -S 仅适用于已安装的软件包)
su
apt-get install apt-file
apt-file update
apt-file search <filename>
3.) 使用 apt-get install <package>
我这里没有 Ubuntu,但 MS 字体通常在名为 "mscorefont" 或类似名称的包中提供。