PDF 文件的修改不显示

PDF 文件的修改不显示

我通常更喜欢将 PDF 图像用于我的 LaTeX 文档,因为它们很容易使用 Adob​​e Professional 进行裁剪/调整大小。我遇到了一个奇怪的问题。我使用 Adob​​e Professional 修改了其中一个 PDF 图像,使用铅笔工具编写了一些注释,并在图像上添加了一个矩形框并保存了它。LaTeX 输出没有显示我对图像文件所做的修改,但当我打开图像文件时,修改仍然存在。有人遇到过类似的问题吗?

答案1

保留矢量形式的一种方法是使用 Adob​​e Acrobat“Preflight”工具,该工具允许您“展平”您的评论(“展平表格和注释”)。我试图向您展示一个例子,但它却反过来了!也许这是版本 X 的一个错误。:(

在 Acrobat 中,另一种方法是打开控制台 (Ctrl-J),然后执行命令flattenPages(),我可以确认它在我的 Acrobat 版本中有效,并且它被 pdfLaTeX 正确编译为矢量形式。输出是像这样

第三个选项是使用 Adob​​e Exchange 中的几个脚本之一来选择性地扁平化内容,例如 这个(还有很多其他的)以防万一

答案2

问题在于,注释是在单独的层上添加到 PDF 的,而许多将 PDF 嵌入其他 PS/PDF 内容的工具无法处理这种添加方式。因此,您必须将注释扁平化(将其转换为普通的 PDF 基元)才能显示它们。

在 OS X 上,注释展平是通过“导出为 PDF”从预览中完成的。

以下是我用来注释照片的工作流程:

  1. 在预览中打开任何图像文件。
  2. 可选择减小尺寸以减小文件大小。
  3. 导出为 PDF - 这将是可编辑的带注释的文件。
  4. 在预览中打开 PDF。
  5. 向 PDF 添加注释。如果您稍后使用预览重新打开文件,则可以编辑它们。
  6. 导出为 PDF - 这将是在 pdflatex 输出等中正确显示的扁平文件。

答案3

PATHGhostScript 可以拼合 PDF。尝试将其放入您的(如)上的文件中/usr/local/bin/flattenpdf并使其可执行:

#!/bin/bash
gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sPDFPassword='' -dPDFSETTINGS=/prepress -dPassThroughJPEGImages=true -sOutputFile="${1%.*} (Flattened).pdf" "$1"

然后只需使用它flattenpdf yourpdffile.pdf来创建一个扁平版本。

它还可以删除 PDF 的密码限制

[编辑于 2023 年 9 月] 从 Ghostscript 版本 9.21 开始,此功能不再起作用(gs 保留了注释层,从某种意义上说是好的),但有一个标志可以解决这个问题:-dPreserveAnnots=false。该脚本的新版本(对我有用)将是:

#!/bin/bash
gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sPDFPassword='' -dPDFSETTINGS=/prepress -dPassThroughJPEGImages=true -dPreserveAnnots=false -sOutputFile="${1%.*} (Flattened).pdf" "$1"

答案4

当我使用 pdf 编辑器在我的 pdf 中添加一行时遇到了类似的问题,但该行没有显示在由 latex 生成的 pdf 文件中。

我刚刚解决了这个问题使用 Word 打开我的 pdf 文件,然后使用 Word 对其进行修改。然后,修改后的word可以重新保存回pdf,就可以了。

太棒了!你可以试试。

相关内容