> はい、別の者が位置情報が必要になるので、取得してほしいといわれました。
InDesignで使うわけではなく、どっか別の用途に使うんですよね(独り言
> ページ内にある20〜30全てのテキストボックスの座標を知りたいです。
> 羅列ですが、ページ数・テキストボックス内文字・Y軸・X軸みたいな感じが理想です。
> たとえば3ページ目の「0023」というテキストボックスだったら、
> 03-0023 y:00 x:00
> こんな感じができればいいのですが...。
なるほど、ページ数というのはドキュメントの先頭から何枚目でいいですかね?(ノンブルだと少し面倒なので)
テキストフレーム内の文字は、後で特定するためですかね。
contentsを取れば良いと思いますのでそうします。
座標はx,yの2つですね。左上としておきますね。
#target indesign
var doc=app.activeDocument;
var result=[]; // 情報を溜めておく所
for(var i=0;i<doc.pages.length;i++){
for(var j=0;j<doc.pages[i].textFrames.length;j++){
// テキストフレーム内の改行は〓で代用しておく
result.push(i+"-"+doc.pages[i].textFrames[j].contents.replace(/\r/g,"〓")+"\ty:"+doc.pages[i].textFrames[j].geometricBounds[0]+"\tx:"+doc.pages[i].textFrames[j].geometricBounds[1]);
}
}
// 取得した情報を新規ドキュメントに出力
var NewDoc=app.documents.add();
var NewDocFrm=NewDoc.pages[0].textFrames.add();
NewDocFrm.visibleBounds=[0,0,NewDoc.documentPreferences.pageHeight,NewDoc.documentPreferences.pageWidth];
NewDocFrm.parentStory.contents=result.join("\r"); // 溜めた情報を改行して出力
alert("出力しました。");
[17558] 流星光輝 (2014/12/16 Tue 13:22) web