[英]How can I modify an InDesign's document textFrame created from InCopy?
我有一個要嘗試編寫腳本的InDesign文件,但遇到了問題。 我相信文檔內容的一部分是從InCopy創建的,因為當我在頁面中編寫腳本后嘗試修改該文本框架時,會得到:
我沒有訪問InCopy的權限,並且嘗試通過將INDD文件導出到IDML文件然后將其重新導入來覆蓋InCopy幀,但是無法繞過InCopy。 當我研究該站點時,我能找到的最接近的問題是如何將InDesign / InCopy編寫為“簽入”和“簽出” textFrames腳本? 但是當我嘗試在選擇項上實現checkOut()
出現錯誤,因此我進行了研究並發現:
但是我仍然無法在選擇文本框中插入。
function run() {
throw new Error( "Script has run into an error" );
}
run.error = null;
try {
app.doScript( somePages );
if ( run.error ) {
throw run.error;
}
} catch(e) {
alert( e );
}
function somePages() {
var allPages = app.documents[0].pages.everyItem().getElements(),
items = app.activeDocument.allPageItems,
pageCount = allPages.length;
for ( var x = allPages.length-1; x >= 0; x-- ) {
if ( allPages[x].textFrames.length != 0 && items[x].locked == false ) {
app.activeDocument.pageItems.everyItem().locked = false;
app.select(allPages[x].textFrames[0].insertionPoints[0]);
app.selection[0].contents= "foobar" + allPages[x].name;
}
}
}
如何針對文本框架編寫腳本,以添加從InCopy創建的文本,從而使我可以瀏覽文檔?
這是因為在文本框的情況下,必須檢查的是故事。
function run() { throw new Error( "Script has run into an error" ); } run.error = null; try { app.doScript( somePages ); if ( run.error ) { throw run.error; } } catch(e) { alert( e ); } function somePages() { var allPages = app.documents[0].pages.everyItem().getElements(), items = app.activeDocument.allPageItems, pageCount = allPages.length; for ( var x = allPages.length-1; x >= 0; x-- ) { if ( allPages[x].textFrames.length != 0 && items[x].locked == false ) { app.activeDocument.stories.everyItem().checkOut(); app.activeDocument.pageItems.everyItem().locked = false; app.select(allPages[x].textFrames[0].insertionPoints[0]); app.selection[0].contents= "foobar" + allPages[x].name; } } }
app.activeDocument.stories.everyItem()。checkOut();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.