![見出し画像](https://assets.st-note.com/production/uploads/images/156661700/rectangle_large_type_2_3b10ab7ead041110d125af704573116e.jpg?width=1200)
座標
Illustrator用のExtendScript。コードの知識はゼロですが、イラレ操作はポケGOでLV40、多分「取り残されし中の中」ぐらいだと思う。
そんな私が、オブジェクトの位置を把握して、移動や変形の操作を組み込もうとしたとき、深い落とし穴がある事に最近気づきました(かなり遅いけど)。それは――
座標の規定です。
Illustratorを使い倒している人ほど、ここでつまずくのではないでしょうか(今の私がそうなので)。日本語環境で作業している多くのオペレーターは、メイン単位をmmに設定し、線や文字の単位も仕事に合わせて決めていますよね?(違いますか?)
しかし、ExtendScriptの世界では初期単位がpt。つまり、「3mm右に移動して」とお願いすると、しれっと「3pt」動いてしまうのです。また、左・右・上・下の認識も、こちらでちゃんと指定しないと、意図とは逆の方向にぶっ飛んでいくことも。
では、どうすればいいのか?
コード初心者の私が、ExtendScriptを書き始めるときのプロンプトに追加している座標系の条件は以下の通りです。
• サイズの単位はmmで指定するので、換算してください。
• 座標の把握は、Illustrator上の「変形ウインドウ」と同じにしてください。
具体的には、
• アクティブなアートボードの左上をX0、Y0とする。
• Xは右に行くほどプラス、左に行くほどマイナス。
• Yは下に行くほどプラス、上に行くほどマイナス。
これをコード生成の**「初回」**にプロンプトで伝えています。そうすることで、座標の把握や移動方向、サイズの扱いが実際の作業とシンクロしてくれるはずです。
居酒屋で言えば、「お冷やとおしぼりとお通し」が出てくるタイミング、つまり最初ですね(最初からそう言え!)。
途中で条件設定を変更すると、私が今取り組んでいるExtendScriptのように、一から書き直したほうが早いという、深夜真っ暗なデバッグ海峡を羅針盤なく彷徨うことになるでしょう(私の寝不足の原因はこれ)。
そのときの心境はまさに、
「ザヒョ〜〜ン!」
位置の把握ができない航海に出掛けないよう、どうかお気をつけて。(たぶん私だけ)