如何将indd文件内容复制并粘贴到另一个indd文件中?

时间:2015-06-24 10:58:43

标签: adobe copy-paste extendscript adobe-indesign

我是新手写的东西。我道歉,因为我无法发布我的试验。

目的:
我有一个indd文件,它有图标题,标签等。我需要将其他indd文件中的内容(可编辑的图形)复制到相关图形标签所在的文件中。

例如:
sample.indd

Some text   
Fig.1.1 caption
some text

我需要复制figure1.indd的内容并粘贴到存在Fig.1.1字符串的sample.indd文档中,依此类推。现在我手动完成。但我应该自动化这个。

所以,我需要一些提示如何使用extendscript来实现它?

我已经找到了类似下面的内容来做这件事,但是我没有任何线索可以进一步开发它,也不确定这种方法是否正确以获得我的结果。请帮助我

myDocument=app.open(File("file.indd"),false);  //opening a file to get the content without showing.
myDocument.pages.item(0).textFrames.item(0).contents="some text"; 
//here I could set the content but I don't knw how to get the content

// ?????? Then I have to paste the content into active document.

2 个答案:

答案 0 :(得分:2)

我找到了符合我要求的脚本。

var myDoc = File("sample.indd");//Destination File  
var myFigDoc = File("fig.indd");//Figure File  
app.open(File(myFigDoc));  
app.activeDocument.pageItems.everyItem().select();  
app.copy();  
app.open(File(myDoc));  
app.findGrepPreferences = app.changeGrepPreferences = null;  
app.findGrepPreferences.findWhat = "FIG. 1.1 ";//Figure caption text  
//app.findGrepPreferences.appliedParagraphStyle = "FigureCaption";//Figure Caption Style  
myFinds = app.activeDocument.findGrep();  
for(var i=0;i<myFinds.length;i++){  
    myFinds[i].insertionPoints[0].contents="\r";  
    myFinds[i].insertionPoints[0].select();  
    app.paste();  
}  
app.findGrepPreferences = app.changeGrepPreferences = null;

答案 1 :(得分:0)

如果您可以接受,可以将indesign文件作为链接放置(放置...)。所以脚本可以尝试捕获“fig ...”字符串并进行输入。 看看使用finGrep()和place()命令的脚本。