我正在试图找出一个脚本,以重新链接一个链接的PDF在Illustrator.基本上,我的文件将有两个链接的页面从一个pdf插图.然后,该文件将从每个页面中的特定部分导出由画板制作的图像.我会重复这个过程250次,所以,如果我能把它自动化就太棒了.

每个Images.ai文件都将位于不同的文件夹中,还有我想用来替换链接的pdf的pdf.有什么主意吗?

谢谢!

推荐答案

然而,即使Illustrator不能通过脚本处理多页pdf,这个简单的解决方案在我的测试文件上也能很好地工作:

d:\test
│
├───folder1
│       ├───artwork.ai
│       └───folder1.pdf
│
├───folder2
│       ├───artwork.ai
│       └───folder2.pdf
│
└───folder3
        ├───artwork.ai
        └───folder3.pdf

它遍历文件夹folder1folder2folder3,打开文件artwork.ai,并分别用folder1.pdffolder2.pdffolder3.pdf更新链接.

var main_folder = Folder('d:/test');
var dirs = main_folder.getFiles();

for (var i=0; i<dirs.length; i++) {
    var dir = dirs[i];
    if (dir instanceof Folder) update_links(dir);
}

function update_links(dir) {
    var ai_file = File(dir.fullName + '/artwork.ai');
    var doc = app.open(ai_file);
    var pdfs = doc.placedItems;
    var new_pdf = File(dir.fullName + '/' + dir.name + '.pdf');
    for (var i=0; i<pdfs.length; i++) pdfs[i].relink(new_pdf);
    // doc.save();
    // doc.close();
}

令人惊讶的是,它保留了链接的pdf的原始页面.试试看.

Javascript相关问答推荐

如何expose 像React在onChange、onClick等中所做的那样的参数?

如何使用CSS和JavaScript创建粘性、凝聚力的形状到形状(容器)变形?

基于每个索引迭代嵌套对象

在具有焦点和上下文的d3多线图表中,如何将上下文的刷新限制在特定日期?

foreach循环中的Typescript字符串索引

JS生成具有给定数字和幻灯片计数的数组子集

RxJS setTimeout操作符等效

TypScript界面中的Infer React子props

我应该绑定不影响状态的函数吗?'

并不是所有的iframe都被更换

Next.js服务器端组件请求,如何发送我的cookie token?

当使用';字母而不是与';var#39;一起使用时,访问窗口为什么返回未定义的?

如何在Bootstrap中减少网格系统中单个div的宽度

将数组扩展到对象中

一个实体一刀VS每个实体多刀S

使用自动识别发出信号(&Q)

顶点图使用组标签更新列之间的条宽

MongoDB通过数字或字符串过滤列表

使用可配置项目创建网格

由于http.get,*ngIf的延迟很大