如何使用 MacTex 工具修复 pdf“流中的‘长度’属性错误”问题?

如何使用 MacTex 工具修复 pdf“流中的‘长度’属性错误”问题?

场景:我正在使用平面波分复用器从 php 开始,我使用模板 pdf 来填写表单(它是静态的而不是可填写的),我将文本放置在所需的位置以给人一种由用户填写的感觉。除了尺寸比预期的稍微大一点之外,它工作得很好,而且 pdf 可以查看而没有任何错误或问题

新要求:现在我需要

  • 将这些文件合并为单个文件
  • 为第一步生成的每个报告创建书签(创建目录)
  • 可以重置页码

显然我需要一个开源工具,我找不到任何开源库/工具(php / java / commandline),所以我为 pdflatex 和相关工具安装了 MacTex 包

每当我包含从 php 生成的 pdf 时,我都会收到以下错误。我向这个伟大的社区提出的问题是如何解决这个问题,以及合并从 php 生成的 pdf 文件并添加目录的可能性有多大

我从以下位置借用了 tex 文件东南 作者:@captaincomic

特克斯

\documentclass[8pt]{article}
\usepackage[final]{pdfpages}
\usepackage{fancyhdr}

\topmargin 70pt
\oddsidemargin 150pt

\pagestyle{fancy}
\rfoot{\Large\thepage}
\cfoot{}
\renewcommand {\headrulewidth}{0pt}
\renewcommand {\footrulewidth}{0pt}

\begin{document}
\includepdfset{pagecommand=\thispagestyle{fancy}}
\includepdf[pages=-]{include_file.pdf}
\end{document}

> pdflatex 数字.tex

输出错误

  ....
    <include_file.pdf, id=3, page=1, 614.295pt x 794.97pt>
    <use include_file.pdf, page 1> <use include_file.pdf, page 1>
    <use include_file.pdf, page 1> <use include_file.pdf, page 1>
    <use include_file.pdf, page 1> [1{/usr/local/texlive/2011/texmf-var/fonts/map/p
    dftex/updmap/pdftex.map} <./include_file.pdfError (2874915): Bad 'Length' attribute in stream

    !pdfTeX error: pdflatex (file ./include_file.pdf): PDF inclusion: type <error> 
    cannot be copied
     ==> Fatal error occurred, no output PDF file produced!

PDF 文件

答案1

include_file.pdf我使用命令行工具成功修复pdftk

pdftk include_file.pdf output include_file_fixed.pdf

或命令行工具qpdf

qpdf include_file.pdf include_file_fixed.pdf

这两种工具都会重新压缩 PDF 文件中的所有流对象,从而更新/Length流对象关联流字典中条目的值。qpdf报告\Length12 个流对象中的错误值。

修复文件后错误消失。

相关内容