タイトルなし


※ このスクリプトは、macOS High Sierra + Illustrator 2020にて検証しています。

■ 自分で作りたい人に!


 こんにちは!@gorolib です。

 コロナ禍でテレワークとなり、時間ができた!という人も多いのではないでしょうか?

 そこで「かねてより自分で作りたいと思っていた!」という人に向けて、Illustrator スクリプトの自作を応援するシリーズを開始します。

 もちろん無料!ダウンロードもできますよ!

■ 選択オブジェクトをどうにかする


 選択した「もの」は、ここではオブジェクトと呼びます。

 Illustrator のスクリプトは「選択オブジェクトをどうにかする」というのが基本です。選択していないオブジェクトを扱うのは、ややこしいからです。これは、機会を改めて説明します。

 私が作るスクリプトは、ほとんどが「選択オブジェクトをどうにかする」形式です。

■ コードって何なの?


 それでは、早速コードを書いてみましょう。コードというは、プログラムの記述のことです。拡張子jsxというファイルに、書いていきます。

 コードを書くアプリは、テキストエディット(macOS)やメモ帳(Windows)などのテキストエディタで十分です。

 コードを編集するアプリのことは「エディタ」と呼ばれます。

 私は、Sublime Text というエディタを使っていますが、慣れないうちは何をつかっても同じです。慣れてきたら、それぞれのエディタの使いやすさがわかってきますので、そのときに選べば良いと思います。

■ 選択オブジェクトを動かす


 今回は、選択したオブジェクトを右に40ポイント動かすスクリプトです。最初にコードを書いておきます。

sel = activeDocument.selection
sel[0].translate(40,0)

 今回はたったの2行です(短っ!)。これだけで、選択したオブジェクトが右に40ポイント動きます。

 スクリプトを作る際、最初にぶつかる壁は「どれがシステム予約語で、どれが変数なのか」ということです。

 これはもう慣れるしかありません。今回は以下となります。

(システム予約語)→システムで決められている言葉。この綴りを間違えると、スクリプトは動きません(だからコピペがいいです)
 activeDocument.selection
 translate

(変数)→システム予約語とかぶらなければ何でも構いません。自分で決めます。
 sel


■ 中身を説明します


 activeDocument.selection には、選択されているオブジェクトが全部含まれます。

 sel = activeDocument.selection とすることで、それを sel という変数に格納します。activeDocument.selection という言葉が長いので、sel と3文字にして扱いやすくしています。

 activeDocument.selection は、配列と呼ばれます。オブジェクトを3つ選択したら、配列にも3つ格納されています。

 そして、sel[0] というのは、その配列の1番目ということです。

 [ ]内の数字が、配列の順番のことです。インデックスと呼びます。

 1番目なのにゼロというのも、初めての人にはなかなかの壁ですよね…。これも慣れましょう。スクリプトでは、インデックスはゼロから始まります。

 translate は移動のコマンドです。コマンドとは、命令という意味です。カッコ内は( ヨコの移動距離 , タテの移動距離 )です。

 sel[0] を40ポイント動かす場合は、

sel[0].translate(40,0)

 と記述します。sel[0]のあとにピリオド(.)を付け、移動する( ヨコの移動距離 , タテの移動距離 )という書き方です。

 距離の単位は、ポイント(pt)です。スクリプトでは、すべての単位がptになっています。ミリに直す方法は、少し慣れてきたところで説明します。

 また、動かす距離のプラスマイナスは、算数のグラフと同じです。ヨコは右がプラス、タテは上がプラスです。

 お役に立てれば幸いです!

■ スクリプトのダウンロードはこちらから


h001_translate40.jsx

使用データ(Illustrator)