首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在InDesign中寻找一种更快的批量导出pdf:s的方法

在InDesign中寻找一种更快的批量导出pdf:s的方法
EN

Stack Overflow用户
提问于 2017-08-22 06:05:04
回答 1查看 1K关注 0票数 1

我正在使用这个脚本(下面)批次导出pdf:s从几个indesign文件为我每周做的一项任务。文件名总是一样的,我使用8-10个不同的indd文件来创建12-15个不同的pdf:s。

脚本的设置如下:

代码语言:javascript
复制
//Sets variables for print and web presets
var myPDFExportPreset = app.pdfExportPresets.item("my-present-for-print-pdf");
var myPDFExportPreset2 = app.pdfExportPresets.item("my-preset-for-web-pdf");

//sample of one pdf exported first with print, then web pdf preset as two different files

var firstFileIntoPdfs = function(){

var openDocument= app.open(File("MYFILEPATH/firstfile.indd"));

    openDocument.exportFile(
        ExportFormat.pdfType,
        File("MYFILEPATH/print-pdfs/firstfile-print.pdf"),
        false, 
        myPDFExportPreset
    );

    openDocument.exportFile(
        ExportFormat.pdfType,
        File("MYFILEPATH/web-pdfs/firstfile-web.pdf"),
        false, 
        myPDFExportPreset2
    );
};

我将像上面这样的所有导出定义为命名函数,有些只使用一个预置,有些使用上面的两个。我在文件末尾调用所有这些函数

代码语言:javascript
复制
firstFileIntoPdfs();
secondFileIntoPdfs();
thirdFileIntoPdfs();
fourthFileIntoPdfs();

等等..。¨

然而,这个脚本非常慢,每个1或2个pdfs中有10个文件,就像上面的函数一样,可能需要10分钟。我不认为这是CPU问题,我注意到的是,脚本似乎在等待创建"firstFileIntoPdfs()“中的文件,这个过程需要几分钟才能执行下一个函数。然后再等..。

手动选择“文件->导出”,您可以在前面的文件仍在处理pdf文件时设置要导出的新文件,这在我看来比这个脚本的工作速度要快。当然,手动单击很容易出错,而且很乏味。

是否有更好的方法来编写这个批处理导出脚本,这将使所有函数在以前函数的pdfs仍在系统中处理时执行?,我希望将它们保留为单独的函数,以便在只需要某些特定的pdf:s时,能够注释掉一些函数(除非导出所有函数的过程几乎与导出1pdf一样快)。

我希望我的问题有意义!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-22 11:33:12

有一个异步方法可用,将exportFile替换为asynchrousExportFile:

代码语言:javascript
复制
var openDocument= app.open(File("MYFILEPATH/firstfile.indd"));
openDocument.asynchronousExportFile(
    ExportFormat.pdfType,
    File("MYFILEPATH/print-pdfs/firstfile-print.pdf"),
    false, 
    myPDFExportPreset
);

使用后台任务的

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45809979

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档