ドキュメントにあるセクション、およびその情報はsectionsプロパティから取得します。

//セクションの情報を取得
var sectObj= app.activeDocument.sections;
$.writeln ('section num:'+sectObj.length);
for (i=0; i<app.activeDocument.sections.length; i++) {
    $.writeln ('------------');
    $.writeln ('continueNumbering: '+sectObj[i].continueNumbering); //自動ページ番号(true/false)
    $.writeln ('pageNumberStart: '+sectObj[i].pageNumberStart); //ページ番号割当を開始
    $.writeln ('sectionPrefix: '+sectObj[i].sectionPrefix); //セクションプレフィックス
    $.writeln ('pageNumberStyle: '+sectObj[i].pageNumberStyle); //スタイル(PageNumberStyle定数)
    $.writeln ('marker: '+sectObj[i].marker); //セクションマーカー
    $.writeln ('includeSectionPrefix: '+sectObj[i].includeSectionPrefix); //プレフィックスを含む(か否か)
    $.writeln ('length: '+sectObj[i].length); //内包されるページ数
    $.writeln ('pageName: '+sectObj[i].pageStart.name); //開始ページオブジェクト(ここではその名前を取得)
}

プロパティはGUI上で設定できるものと同様です。 それに加えてスクリプトからはlengthpageStartが取得できます。なお、pageNumberStyleプロパティから取得するのはPageNumberStyle定数です。

 

任意のページがどのセクションに属しているかは、appliedSectionプロパティからSectionsオブジェクトを取得します。

以下の例では、アクティブページからSectionsオブジェクトを取得し、そのpageStartプロパティ(開始ページのPageオブジェクト)をアクティブページに設定しています。

var pgObj= app.activeWindow.activePage; //アクティブページ
var sectObj= pgObj.appliedSection; //セクションオブジェクト
//そのページをアクティブページに
app.activeWindow.activePage= sectObj.pageStart;

 

セクションの作成は以下のようにします。必要に応じて「ページの移動を許可しない」などの手順が必要になります。

以下の例では、アクティブページを新しいセクション開始ページに設定します。

var docObj= app.activeDocument; 
docObj.documentPreferences.allowPageShuffle= false; //ページの移動を許可しない
var pgObj= app.activeWindow.activePage; //アクティブページ
var prop= {
    //作成したいセクションのプロパティ(任意のもの)
    continueNumbering: false,
    pageNumberStart: 10,
    pageNumberStyle: PageNumberStyle.KANJI,
    } ;
docObj.sections.add(pgObj, prop); //セクション作成

 

 

Joomla templates by a4joomla