【问题标题】:When converting PDFs to JPEGs, how do I prevent characters with french accents from disappearing?将 PDF 转换为 JPEG 时,如何防止带有法语口音的字符消失?
【发布时间】:2015-05-08 19:16:54
【问题描述】:

当我使用 Ghostscript 将包含法语字符的 PDF 转换为 JPEG 时,一些带重音符号的字符在输出 JPEG 中消失了。似乎是什么导致了这个问题?我该如何解决?

我附上之前和之后的屏幕截图来说明这一点、调试日志、输入文件的链接以及我运行的特定命令。

命令:

gs -sDEVICE=jpeg -dDEBUG -dNOPAUSE -dFirstPage=1 -dLastPage=1 \
   -sOutputFile=./out-1.jpg -dJPEGQ=100 -r300 corde_a_linge.pdf -c quit

截图之前/之后:

输入PDF:

调试日志:

版本:GPL Ghostscript 9.15 (2014-09-22)

操作系统:OSX Yosemite 版本 10.10.1

如果我可以提供更多信息,请告诉我。

【问题讨论】:

  • 我目前使用的任何版本的 Ghostscript 都看不到这个结果。我现在正在旅行,所以我没有任何 Mac 访问权限,我会尝试看看我明天是否可以借一个。与此同时,你从哪里得到你正在使用的 Ghostscript 二进制文件?你是从源代码构建的吗?
  • 我的一位同事在具有当前主代码和 9.15 版本的 Mac 上进行了尝试,文件在这两种情况下都运行良好。在不知道您从哪里获取 Ghostscript 副本的情况下,我的建议是您获取当前源并自己重建它。
  • 该字体可能有问题。
  • 所有字体都嵌入到 PDF 文件中,这是我的第一个想法,正在发生字体替换,但似乎并非如此。
  • 您好 KenS 和 user3344003,首先非常感谢您的帮助!我使用 Homebrew 安装了 Ghostscript。

标签: pdf jpeg ghostscript


【解决方案1】:

我确实运行了与您的问题完全相同的命令,尽管是在 Mavericks 系统上。

  • 左边的结果来自 Ghostscript 9.10(通过 MacPorts 人员分发)。
  • 正确的结果是通过“从当前 Git 源自编译”Ghostscript 9.16 GIT PRERELEASE:


    (右击图片'在新标签页中打开'你可能会看到原始尺寸的图片。)


很明显,在 9.10(或 9.15,如果我们考虑到您的结果)和当前 Git 源代码之间的某个地方,肯定已经对这个问题进行了某种修复。

我现在无法进一步调试。也许KenS旅行回来后可以贡献更多的想法。


更新:

这里有更多信息。

MacPorts 安装使用的 FreeType

kp@mbp:>  otool -L /opt/local/bin/gs
/opt/local/bin/gs:
  /opt/local/lib/libgs.9.10.dylib (compatibility version 0.0.0, current version 0.0.0)
  /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1197.1.1)

kp@mbp:>  otool -L /opt/local/lib/libgs.9.10.dylib | grep -i freetype
  /opt/local/lib/libfreetype.6.dylib (compatibility version 18.0.0, current version 18.1.0)

“self-compiled-from-Git”安装使用的 FreeType

kp@mbp:>  otool -L /usr/local/bin/gs | grep -i freetype
 /opt/X11/lib/libfreetype.6.dylib (compatibility version 18.0.0, current version 18.2.0)

kp@mbp:> ls -l /opt/X11/lib/libfreetype.6.dylib /opt/local/lib/libfreetype.6.dylib
 -rwxr-xr-x  1 root  wheel  1143056 12 Aug  2014 /opt/X11/lib/libfreetype.6.dylib
 -rwxr-xr-x  1 root  admin  1099796  6 Jan 13:28 /opt/local/lib/libfreetype.6.dylib

确实,怀疑 FreeType 是原因是有道理的!

【讨论】:

  • 我与其他开发人员进行了快速讨论,我们所能想到的可能是一个损坏的共享 FreeType 库。当然,我们使用的是 Ghostscript 树并从源代码编译,而不是使用 MacPorts,我们怀疑它与 MacPorts 编译版本有关,但我们真的不知道是什么,也无法调试那个。我仍然建议从我们的来源编译。
  • 卸载 Homebrew 版本并从此处托管的目录构建后转换工作:ghostscript.com/download/gsdnld.html 非常感谢您的帮助
猜你喜欢
  • 1970-01-01
  • 2023-02-09
  • 1970-01-01
  • 1970-01-01
  • 2019-09-24
  • 2021-01-01
  • 2015-09-05
  • 2016-03-08
  • 2018-04-21
相关资源
最近更新 更多