我的软件使用内置的API(PDFKit)生成PDF文件。
我现在需要以编程方式从中创建一个受密码保护(通过加密)的PDF文件。 PDFKit似乎不支持。
我希望我可以使用AppleScript告诉Preview打开PDF,然后使用密码保存它,但是看来Preview的AppleScript词典没有为此提供选项。 >
我有什么选择?
答案 0 :(得分:4)
如果您已经熟悉Apple的PDFKit API,那么对PDF进行加密非常容易。
为诸如kCGPDFContextOwnerPassword
和kCGPDFContextAllowsCopying
之类的项创建具有键/值的辅助词典。然后使用PDFDocument
的{{1}}方法。
https://developer.apple.com/documentation/pdfkit/pdfdocument/1436053-writetofile?language=objc
这是将加密PDF的python脚本,但是将其转换为Swift或ObjC应该非常容易。该词典被命名为“ writeToFile:withOptions
”。
在命令行上,提供PDF的文件名作为参数。您也可以在Automator的“运行Shell脚本”操作中使用它。
options