使用该软件包将单面 PDF 合并为多页 PDF 时,我遇到了质量问题pdfpages
。初始 PDF 由书籍的扫描面组成。
我在 R 中创建 LaTeX 文件并使用 texi2dvi() 函数对其进行编译。但是当我直接从 LateX 运行它时也会出现问题。因此我假设这是一个 LaTeX 问题。合并本身在以下代码中运行良好:
\documentclass{article}
\usepackage{pdfpages}
\pdfoptionpdfminorversion=6
\begin{document}
\includepdf{0_00018_Q_1920.pdf}
\newpage
\includepdf{0_00018_Q_1923.pdf}
\end{document}
我遇到的问题是文档的某些部分出现了一些随机的黑条,因此原本白底黑字的文本现在变成了黑底白字,而且质量总体下降,比如小扫描伪影被夸大了。这让我想起了当你复印某样东西并降低复印机亮度时的结果…… 顺便说一句:合并前后质量差异的示例。左边是原始的,右边是合并后的结果。
编辑:我认为有两个问题。一个是这些黑条,只出现在某些文档中。另一个是 pdf 的抗锯齿功能存在差异... 合并的 pdf 根本没有抗锯齿功能,因此质量似乎更差。 这里是合并之前看起来良好的示例文件(图像左侧)......
还是没有想法?
答案1
扫描仪不会将扫描结果存储为简单的位图。它使用多个位图,这些位图通过软掩码和光学内容组 (OCG) 功能组合而成。后者会造成麻烦,因为某些数据存储在 PDF 文档的目录中,而不是页面或其资源中。从另一个文档导入 PDF 页面时,TeX 引擎 pdfTeX 和 LuaTeX 仅将页面及其资源存储在一起。目录数据无法轻松合并。合并多个 OCG 设置(来自导入文档和导入文档)超出了 pdfTeX 的范围。
没有简单的解决方法,因为 pdfTeX 没有告诉您文档中使用了哪些 OCG,并且无法访问导入文档的目录。
以下特殊示例适用于 pdfTeX 3.14159265-2.6-1.40.15:
\pdfobjcompresslevel=0
\documentclass{article}
\usepackage{pdfpages}
\pdfoptionpdfminorversion=6
\pdfcatalog{
/OCProperties<<
/D <<
/OFF []
/Order [28 0 R 29 0 R]
/RBGroups []
>>
/OCGs [28 0 R 29 0 R]
>>
}
\begin{document}
\includepdf{0_00018_Q_1920.pdf}
\end{document}
我得到了一个文档,它在 AR9/Linux 中显示正确。但是目录内容是从文档中手动获取的,0_00018_Q_1920.pdf
对象引用28 0 R
是29 0 R
从上次运行的测试文件中获取的。\pdfobjcompresslevel
阻止将对象放入压缩对象流中。然后在文本查看器中查找/OCGs [...]
显示了所需的数字。这些取决于文档,当包含页面时。因此,这种解决方法根本不实用。