在具有不同页面尺寸的InDesign多页面文档中查找页面尺寸

时间:2018-07-31 22:04:02

标签: javascript adobe adobe-indesign extendscript

我正在尝试编写一个简单的脚本,该脚本查看活动的InDesign文件并报告页面的宽度和高度。但是,我有一个多页文档,并且并非所有页面都大小相同。因此,我无法使用文档页面大小。如何阅读各个页面的大小?

这是我的起始代码:

#target "InDesign"

var doc=app.activeDocument;  

// set in inches
doc.viewPreferences.horizontalMeasurementUnits = MeasurementUnits.inches;  
doc.viewPreferences.verticalMeasurementUnits = MeasurementUnits.inches;

for(var j =0;j<doc.pages.length;j++)  
    { 

        // gather data
        var pageW=doc.documentPreferences.pageWidth;  
        var pageH=doc.documentPreferences.pageHeight;  

        // display
        //$.writeln("w: " + pageW + " h: " + pageH );
        
        $.writeln(doc.pages[j].name);
        $.writeln(doc.pages[j].properties);

    }

2 个答案:

答案 0 :(得分:0)

罢工。找到了。

#target "InDesign"

var doc=app.activeDocument;  

// set in inches
doc.viewPreferences.horizontalMeasurementUnits = MeasurementUnits.inches;  
doc.viewPreferences.verticalMeasurementUnits = MeasurementUnits.inches;

for(var j =0;j<doc.pages.length;j++)  
    { 

        // gather data
        var pageW=doc.documentPreferences.pageWidth;  
        var pageH=doc.documentPreferences.pageHeight;  

        // display
        //$.writeln("w: " + pageW + " h: " + pageH );
        
        $.writeln(doc.pages[j].name);     
        $.writeln("Page Width : " +  doc.pages[j].bounds[3] + "\rPage Height : " + doc.pages[j].bounds[2] );

    }

答案 1 :(得分:0)

只是跟进。仅当您的ug区域中没有内容时,以上答案才有效。以下是一个更好的答案。

#target "InDesign"

var doc=app.activeDocument;  

// set in inches
doc.viewPreferences.horizontalMeasurementUnits = MeasurementUnits.inches;  
doc.viewPreferences.verticalMeasurementUnits = MeasurementUnits.inches;

$.writeln(doc.pages.item(0).marginPreferences.top);

for(var j =0;j<doc.pages.length;j++)  
    { 

        // gather data
        var pageW=doc.documentPreferences.pageWidth;  
        var pageH=doc.documentPreferences.pageHeight;  

        // write data
        $.writeln("Page : " + doc.pages[j].name);   
        $.writeln("  Page Width : " +  (doc.pages[j].bounds[3]-doc.pages[j].bounds[1]) + "\r  Page Height : " + (doc.pages[j].bounds[2] - doc.pages[j].bounds[0] ));

    }