将PDF与“pdftk”进行裁剪和组合的问题`
使用将PDF与“pdftk”进行裁剪和组合的问题`,pdf,wkhtmltopdf,pdftk,Pdf,Wkhtmltopdf,Pdftk,使用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_
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:
“??
open_reader()中出现意外异常
java.lang.IllegalArgumentException:传入RandomAccessFileOrArray()的空文件名
请访问pdftk.com.lowagie.text.pdf.randomAccessFileOrray.(pdftk)
请访问pdftk.com.lowagie.text.pdf.randomAccessFileOrray.(pdftk)
在pdftk.com.lowagie.text.pdf.PRTokeniser
在pdftk.com.lowagie.text.pdf.PdfReader
在pdftk.com.lowagie.text.pdf.PdfReader
错误:无法打开PDF文件:
“??
这些文件肯定在那里,所以我不确定它们为什么没有被正确读取。我使用了您原来的命令(我只是为了可读性而重新格式化): 我和你犯的错误完全一样 但正如@MartinSchröder在评论中所观察到的,以及我在编辑您的OP以提高可读性时所注意到的,您使用的引用如下:
$ unicode “”
U+201C LEFT DOUBLE QUOTATION MARK
UTF-8: e2 80 9c UTF-16BE: 201c Decimal: “
“
Category: Pi (Punctuation, Initial quote)
Bidi: ON (Other Neutrals)
U+201D RIGHT DOUBLE QUOTATION MARK
UTF-8: e2 80 9d UTF-16BE: 201d Decimal: ”
”
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: "
"
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
您的引用看起来可疑。请尝试调试shell脚本。文件名有多长?请尝试较小的文件名。
mkdir trimmed-combined
for i in *pdf ; do
pdftk "$i" cat 2 output "trimmed-combined/trimmed-combined1.pdf" ;
done