如何将多个PDF文件合并/转换为一个大型PDF文件?
我尝试了以下内容,但目标文件的内容不符合预期:
convert file1.pdf file2.pdf merged.pdf
Run Code Online (Sandbox Code Playgroud)
我需要一个非常简单/基本的命令行(CLI)解决方案.如果我可以将合并/转换的输出直接输入pdf2ps
(最初尝试在我之前提出的问题:Linux管道(转换 - > pdf2ps - > lp)),那将是最好的.
我一直在使用PDFTK
Server OSX pre 10.11
超过一年没有任何问题在命令行上运行命令.
安装OSX 10.11 beta后,我无法再PDFTK
在命令行上运行任何Server命令.它不会抛出任何错误,我尝试执行的所有命令都会无限期地挂起.
我PDFTK
一直从服务器网站下载的pkg安装:
https://www.pdflabs.com/tools/pdftk-server/
我也尝试使用Homebrew从源代码安装.安装工作,但我得到相同的结果,命令只挂在终端:
我已经通过他们的反馈助手应用程序向Apple发送了投诉,该应用程序在两个月前安装测试版时安装,没有响应.
我被告知Apple反馈助理:
您可能永远不会收到回复.Apple仅通过反馈助手回复操作系统中需要其他信息的主要错误.它不是获得支持的一种方式,对第三方应用程序来说更是如此.
我还联系了包装的制造商PDF Labs,但没有回复.
在MacPorts上,他们遇到了OS X 10.11上的构建问题,这是否意味着PDFtk和10.11在软件级别存在兼容性问题?
我在网上搜索了一些线索,了解可能导致问题的原因以及解决方法,但没有找到任何实际问题.
在OS X上,我不知道如何确定升级后是否存在权限或路径甚至是Java问题.
任何有助于解决根本原因或提供修复的帮助都表示赞赏.
更新1:
我从PDF实验室的Sid Steward那里听到了回复:
只要测试版已经发布,我们就一直在努力解决这个问题.我们仍在努力.似乎与pdftk使用的一个(非Apple)库和OS X 10.11不兼容.目前我正在为Apple的开发人员工具安装另一个更新,希望它能解决问题.我会告诉你我们的进展.
更新2:
看起来有两个线程在pdftk下运行,并且它们已经死锁.这意味着每个线程都在等待另一个线程完成.我不是这里的专家,但那是我的印象.以下是来自Mac的Activity Monitor的截图,用于说明:
上面的快照来自于尝试在OS X 10.11上运行我们网站上当前的pdftk二进制文件.上面提到的libgcj库带有pdftk,其他的是OS X库.
正如我所说,我刚刚安装了Xcode 7.0.1,它于昨天在App商店发布.我现在将尝试使用这些工具来构建pdftk.
更新3:
MacPorts正在使用PDFtk解决构建问题,这是该线程的更新(注意:这与PDFtk Labs无关):
这是因为在10.11中使用Apple Clang 7重新编译了libunwind,产生了新的有效优化(根据Apple),它在FSF boehm-gc中发现了一个未知的错误.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66848
不要指望Apple有任何修复,因为他们无法触及GPLv3代码来查看FSF boehm-gc问题(除非他们使用的gcc43包应该仍然是GPLv2).这个问题是由重新编译libunwind引发的,这一事实表明,从10.10替换libunwind.dylib会消除boehm-gc和gcj失败.
请注意,这是作为radr:// 21372179提交的,"基于10.10构建的FSF boehm-gc库无法通过10.11的测试",但作为FSF boehm-gc错误关闭.
更新4:
我通常将其ghostscript
视为命令行工具; 然而,我从不停止对那里存在的大量设置和选项感到惊讶 - 这是因为这ghostscript
是一个完整的PostScript语言解释器(我经常忘记).
例如,在查询Ghostscript中输出设备的默认选项/设置(例如'pdfwrite'或'tiffg4') ; 一个人学习如何检索给定输出设备的默认选项.但是,我想知道的是 - 这些选项是否与所谓的PostScript词典相关?
或者,换句话说 - 什么是PostScript词典; 什么设施ghostscript
有,查询(并可能)修改这些数据?
在这个答案中'GhostScript命令行参数将EPS转换为PDF' ; 据说pdfwrite
Ghostscript设备的默认分辨率是720x720,我最初觉得难以置信!
有没有办法列出Ghostscript设备的默认选项?
是否可以在Matlab中将多个PDF合并为一个PDF文档,同时控制PDF合并的顺序?
例:
我有一个PDF文件夹:
docu1.pdf
docu2.pdf
docu3.pdf
docu4.pdf
Run Code Online (Sandbox Code Playgroud)
我想通过以下页面映射将它们合并到一个PDF文档中:
page 1: docu3.pdf
page 2: docu4.pdf
page 3: docu2.pdf
page 4: docu1.pdf
Run Code Online (Sandbox Code Playgroud)
上面的顺序只是一个例子,我希望能够控制脚本中的顺序.
pdf ×3
ghostscript ×2
dictionary ×1
homebrew ×1
linux ×1
macos ×1
matlab ×1
merge ×1
pdftk ×1
postscript ×1
stack ×1