我试图将某些PDF文件转换为PDF / X-1A格式。我已经在Acrobat中创建了一个动作来执行此操作,我想在使用当前进程创建新的PDF文件时从NodeJS调用此动作。然后我想将转换后的文件提供给用户。似乎没有任何其他解决方案以Acrobat Pro的方式转换/压缩PDF,所以这就是我追求这个选项的原因。
我的流程基本如下:
genPdf:function(content,cb){
// Config for PDF generation, etc
// ...
pdfGenerator.doConversion(config, pdfPath, function(result) {
// After file is generated, I want to call my adobe action
var cmd = 'call_adobe_acrobat_action_cmd';
exec(cmd, function(error, stdout, stderr) {
// After action is called I'll initiate a watch on the directory that the action will write the converted file to
// When conversion has completed, I will serve the converted file back to the user
});
}
}
答案 0 :(得分:1)
Acrobat插件AutoBatch将允许您创建一个.bat
文件,该文件将启动Acrobat并运行一个给定的"动作"你已经在Acrobat中定义了。
请注意,AutoBatch不是免费的。
AutoBatch创建的批处理文件实际上只是设置了一些环境变量,这些变量可能是由Acrobat插件选取的,这反过来会触发您的操作。
AutoBatch生成的示例.bat
文件:
SET AUTOBATCHSEQU=C:\Users\IEUser\AppData\Roaming\Adobe\Acrobat\10.0\Sequences\myaction.sequ
SET AUTOBATCHFINAL=0
SET AUTOBATCHDEST=
SET AUTOBATCHALTPATH=%1
SET AUTOBATCHALTOUTPUTPATH=%2
SET AUTOBATCHNOPROGRESS=no
SET AUTOBATCHFILEEXT=
SET AUTOBATCHNOSUBFOLDERS=no
"C:\Program Files\Adobe\Acrobat 10.0\Acrobat\Acrobat.exe" /n /h
答案 1 :(得分:0)
以这种方式使用它实际上违反了Acrobat许可协议。 Acrobat Actions可以处理多个文件,但Action需要由用户触发。
查看pdfToolbox Server,以便从PDF到PDF / X进行服务器端自动转换。