使用Python压缩PDF
所以我在一个文件夹中有无数的PDF,我想递归地(使用os.path.walk)缩小它们。我看到adobe pro有一个“另存为”缩小版。我能用这个吗/你建议我怎么用 注意:是的,我希望它们保留为PDF,因为我发现它是最常用和安装的fileviewer。来自for pdfsizeopt,它是用Python编写的: pdfsizeopt是一个将大型PDF文件转换为小型文件的程序。更具体地说,pdfsizeopt是一个免费的跨平台命令行应用程序(适用于Linux、Mac OS X、Windows和Unix),是优化PDF文件大小的最佳实践集合,重点是从TeX和LaTeX文档创建的PDF。pdfsizeopt是用Python编写的……”使用Python压缩PDF,python,Python,所以我在一个文件夹中有无数的PDF,我想递归地(使用os.path.walk)缩小它们。我看到adobe pro有一个“另存为”缩小版。我能用这个吗/你建议我怎么用 注意:是的,我希望它们保留为PDF,因为我发现它是最常用和安装的fileviewer。来自for pdfsizeopt,它是用Python编写的: pdfsizeopt是一个将大型PDF文件转换为小型文件的程序。更具体地说,pdfsizeopt是一个免费的跨平台命令行应用程序(适用于Linux、Mac OS X、Windows和Un
您可以很容易地根据您的具体需要调整此选项。意识到这是一个老问题。我想我会建议一个替代pdfsizeopt的选项,因为我在地图PDF中使用它时遇到了质量损失。提供了一套全面的功能。下面是一个修改自的片段(请参见“示例1”):
到目前为止你写了什么?
pdfsizeopt
是Adobe免费的,并且是用Python编写的:@AdamMihalcin现在我只有递归的东西,os.path.walk(arg1,arg2,arg3)我想知道我应该用什么程序来压缩它。我会看看PDFSIZOPT!对于那些认为这是一个选项的人来说,最后一个提交是2014,它依赖于一个旧的也过时的java库。没有设法使它工作,java LIB仅仅是失败了:断言错误:多价失败(状态)更新了链接,使其进入GitHub。在那里:“2017年7月30日提交”-并且目前看起来相当活跃,我建议描述一下你在那里的经历。棒极了。它工作得非常好(甚至比smallpdf更好,它不是免费的)。这个项目似乎在某些PDF中存在一些问题。(它的输出与尝试优化XObject
图像有关,这似乎会导致它进入一个无限循环,连续处理同一个项目。我没有重定向输出以提交错误报告,因为对于我尝试压缩的所有PDF来说,成功并不重要。)请注意,它应该是PDFNetPython3 import中的。
import site
site.addsitedir(r"...pathToPDFTron\PDFNetWrappersWin32\PDFNetC\Lib")
from PDFNetPython import PDFDoc, Optimizer, SDFDoc
doc = PDFDoc(inPDF_Path)
doc.InitSecurityHandler()
Optimizer.Optimize(doc)
doc.Save(outPDF_Path, SDFDoc.e_linearized)
doc.Close()