三日月館【別館】開発・制作Tips集
[Photoshop] ExtendScriptでレイヤーを指定した座標へ移動させる
最終更新:
fumiduki1985
-
view
ArtLayerオブジェクトには、相対値を指定して移動させるtranslate()メソッドがあるが、絶対座標を指定して移動させるメソッドは存在しない。
そのため、あらかじめboundsフィールドを使って相対的な移動量を計算し、translate()メソッドを使う必要がある。
下記方法だと、レイヤーの描画範囲の左上が、指定した座標に合うようになる。
そのため、あらかじめboundsフィールドを使って相対的な移動量を計算し、translate()メソッドを使う必要がある。
下記方法だと、レイヤーの描画範囲の左上が、指定した座標に合うようになる。
記述例:
var posX = 10.0; // 移動先の絶対座標(X) var posY = 20.0; // 移動先の絶対座標(Y) var bounds = layer.bounds; var moveX = posX - parseFloat(bounds[0]); // 相対移動量を計算(boundsのパースに注意) var moveY = posY - parseFloat(bounds[1]); // 相対移動量を計算(boundsのパースに注意) layer.translate(moveX, moveY);