【问题标题】:Issues trimming and combining PDFs with `pdftk`使用“pdftk”修剪和组合 PDF 的问题
【发布时间】:2014-02-16 15:43:56
【问题描述】:

使用pdftk 时遇到一些问题。

我正在尝试在指定目录中获取每个 PDF 的第二页并将它们合并到一个输出文件中。

注意:有问题的 PDF 文件是使用wkhtmltopdf 创建的。

我切换到目录并运行以下命令:

mkdir trimmed-combined
for i in *pdf ; do
  pdftk “$i” cat 2 output “trimmed-combined/trimmed-combined1.pdf” ;
done

我收到以下错误:

Unexpected Exception in open_reader()
java.lang.IllegalArgumentException: null filename passed into RandomAccessFileOrArray()
   at pdftk.com.lowagie.text.pdf.RandomAccessFileOrArray.<init>(pdftk)
   at pdftk.com.lowagie.text.pdf.RandomAccessFileOrArray.<init>(pdftk)
   at pdftk.com.lowagie.text.pdf.PRTokeniser.<init>(pdftk)
   at pdftk.com.lowagie.text.pdf.PdfReader.<init>(pdftk)
   at pdftk.com.lowagie.text.pdf.PdfReader.<init>(pdftk)
Error: Failed to open PDF file: 
   “??

这些文件肯定在那里,所以我不确定为什么它们没有被正确读取。

【问题讨论】:

  • 您的报价看起来很可疑。尝试调试你的 shell 脚本。
  • 文件名有多长?试试小一点的。

标签: pdf wkhtmltopdf pdftk


【解决方案1】:

我使用了你原来的命令(我只是为了可读性而重新格式化):

mkdir trimmed-combined
for i in *pdf ; do
  pdftk “$i” cat 2 output “trimmed-combined/trimmed-combined1.pdf” ;
done

我遇到了和你一样的错误...

但正如@MartinSchröder 在评论中观察到的那样,正如我在编辑您的 OP 以提高可读性时注意到的那样,您使用的引号是:

$  unicode “”

  U+201C LEFT DOUBLE QUOTATION MARK
  UTF-8: e2 80 9c  UTF-16BE: 201c  Decimal: &#8220;
  “
  Category: Pi (Punctuation, Initial quote)
  Bidi: ON (Other Neutrals)

  U+201D RIGHT DOUBLE QUOTATION MARK
  UTF-8: e2 80 9d  UTF-16BE: 201d  Decimal: &#8221;
  ”
  Category: Pf (Punctuation, Final quote)
  Bidi: ON (Other Neutrals)

我假设您已从 HTML 电子邮件、PDF 文档或某些使用“智能”引号的网页复制“n”粘贴(部分)此命令。这些引号不会按预期在 shell 中工作。您需要使用 ASCII 引号:

$  unicode \"

  U+0022 QUOTATION MARK
  UTF-8: 22  UTF-16BE: 0022  Decimal: &#34;
  "
  Category: Po (Punctuation, Other)
  Bidi: ON (Other Neutrals)

所以把你的命令改成这样,一切都会按预期工作:

mkdir trimmed-combined
for i in *pdf ; do
  pdftk "$i" cat 2 output "trimmed-combined/trimmed-combined1.pdf" ;
done

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-07-15
    • 2013-09-16
    • 1970-01-01
    • 2014-07-10
    • 2016-08-13
    • 1970-01-01
    • 2012-08-13
    • 2017-08-16
    相关资源
    最近更新 更多