gpt4 book ai didi

pdf - 将 pdf 正确转换为 ps,反之亦然

转载 作者:行者123 更新时间:2023-12-04 19:14:55 24 4
gpt4 key购买 nike

我正在使用“pdftops”将 .pdf 文件转换为 .ps 文件,然后使用“ps2pdf”进行反向处理(poppler-utils)。问题是,从 .ps 文件创建 .pdf 文件时,文本看起来不错,但是当我尝试复制它时,字符非常奇怪(就像它们已损坏)。我在其他文件上使用了这些工具很长时间,效果很好。
我也试过“pdftohtml -xml”来创建一个.xml文件,文本没问题(字符提取正确)。

  • 转换可能有什么问题?也许如果我使用“pdftops”和“ps2pdf”,是否有一些选项需要更改?
  • 如果我创建 .xml 输出,有没有办法从 .xml 文件创建 .pdf 文件?

  • 编辑:
    “pdffonts original.pdf”的输出
    pdffonts_output_originalpdf

    “roundtripped.pdf”的输出
    pdffonts_output_roundtrippedpdf

    最佳答案

    我只是在介绍 PS->PDF 转换......(我假设你的反之亦然的短语并不意味着指向同一个文件的“往返”转换 [PDF->PS- >PDF],但任何 PS 文件的一般转换方向。这是正确的吗?)

    首先,很可能是您的 ps2pdf只是一个shellscript,它在内部使用带有一些默认参数的Ghostscript 命令来完成实际工作。 ps2pdf使用起来要容易得多。 Ghostscript 有更多的选择,但更难学。 ps2pdf如果您使用 Ghostscript,它会剥夺您可能拥有的许多潜在控制权。 (你可以用 ps2pdf 调整一些参数——但是你已经离运行真正的 Ghostscript 命令更近了......)

    其次,在不确切知道您的 PS 输入文件是如何被调节的情况下,很难给您很好的建议:您的 PS 是否嵌入了它使用的字体?它们是哪种字体?等等。

    第三,Ghostscript 获得了很多额外的功能和控制,并且在过去几年中在输出 PDF 时消除了一些错误或弱点。那么,您系统上安装的 Ghostscript 版本是什么? (请记住,ps2pdf 调用 Ghostscript,如果没有本地安装的 gs 可执行文件,它将无法工作。)

    您无法从 PDF 复制文本的一个可能原因可能是最终被使用并嵌入到您的 PDF 文件中的字体类型(和编码)。您可以告诉我们有关生成的 PDF 的哪些字体详细信息? (尝试 pdffonts your.pdf 找出- pdffonts 也是您提到的 Poppler 实用程序的一部分。)

    您可以尝试使用此(完整)Ghostscript 命令进行 PS->PDF 转换,并检查它带您到哪里:

    gs \
    -o output.pdf \
    -sDEVICE=pdfwrite \
    -dPDFSETTINGS=/prepress \
    -dHaveTrueTypes=true \
    -dEmbedAllFonts=true \
    -dSubsetFonts=false \
    -c ".setpdfwrite <</NeverEmbed [ ]>> setdistillerparams" \
    -f input.ps

    关于pdf - 将 pdf 正确转换为 ps,反之亦然,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10781588/

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