ごんれのラボ

iOS、Android、Adobe系ソフトの自動化スクリプトのことを書き連ねています。

moveがよくわかんねぇ…

InDesignでJavaScript。

「その00」ってのは完成したスクリプトを配布するときだけにしようと決めた。

で、本題。

moveの挙動がよくわからんです。


docObj = app.activeDocument;

imgObj = docObj.textFrames.add();

imgObj.contentType = ContentType.graphicType;

imgObj.place("System:Users:hoge:Desktop:age.eps");

imgObj.fit(FitOptions.frameToContent);

imgObj.move("to",["5cm","10cm"]);



var mydocument = app.activeDocument;

var myobj = mydocument.pages[0].textFrames[0];

myobj.move("to",["5cm","10cm"]);


だと全然違う結果になる。

前者はtoの意味するところのページに対する絶対値で移動するんだけど、後者はtoなのに相対値で移動してしまう。

どちらも親属性はpageだから同じ挙動になってくれないと困るんだけど。

たぶん私が致命的な勘違いをしている気もするのだが…。

いちいちvisibleBoundsで計算するのも面倒なんだよね。

そういえばvisibleBoundsとgeometricBoundsって取得できる数値は細かいところで違うみたい。

visibleBoundsのほうが実際の座標値に近いような気がする。

プロパティを書き出してみると下記のような感じ。


geometricBounds:[80.0014282239408,-4.00192029454953,222.004021625702,35.9576405537591],

visibleBounds:[80.0026388888889,-3.99866666666666,222.000916666667,35.9571666666667],