IllustratorでApplescript
AppleScriptで配置されている画像の回転角度を得る事はできない。ようだ。
配置された画像に対して、rotateというコマンドを利用して、回転を行なう事はできる。
-
- 配置された画像に45度の回転をかける
tell application "Adobe Illustrator"
rotate placed item 1 of layer 1 of document 1 angle 45.0 about bottom left
end tell
また、変換行列(変換matrix)という形式を利用して、オブジェクトに変形をくわえる事もできる
-
- 配置された画像に45度の回転をかける
tell application "Adobe Illustrator"
set baseMatrix to get rotation matrix angle 45.0
transform placed item 1 of layer 1 of document 1 using baseMatrix
end tell
ところが、回転された画像は、回転された情報をmatrixという形でしか持たないので、
-
- 配置された画像のmatrixを得る
tell application "Adobe Illustrator"
get matrix of placed item 1 of layer 1 of document 1
end tell
得られたmatrixは、わけわかめ。
{class:matrix, mvalue_a:0.707106649876, mvalue_b:-0.70710670948, mvalue_c:0.707106649876, mvalue_d:0.707106649876, mvalue_tx:316.75048828125, mvalue_ty:587.07666015625}
Adobeのスクリプトマニュアルには
「変換マトリックスは、線形代数という分野から生まれた、数学的な概念です」とあるので、なんか計算すればここから回転度数を得られるのだろうけど、難しい。ってか私には無理。
そもそも、なんでpropertiesの中にangleとかscaleが無いんだろう。
get angle of placed item 1 of layer 1 of document 1
とか
get horizontal scale of placed item 1 of layer 1 of document 1
でとれればいいのに。