見出し画像

Illustrator 「1クリックで、テキストを囲み枠の中央に揃えられる」 スクリプト

このスクリプトも多用しています。
すでにネットに、他の方が作成された同じ用途のスクリプトがあるのですが、スクリプトを実行すると途中でダイアログが挟まったり、個人的に使い勝手がいまいち良く無いので、1クリックで中央に揃えられるスクリプトを作成してみました。
上の見出し画像の例だと、7箇所もテキストを囲み枠の中央に揃えないといけないので、ワンクリックで揃えられると非常に楽です。

◆ テキストと囲み枠を選択して、スクリプトを実行するだけ

使用方法は、テキストと囲み枠を選択して、スクリプトを実行するだけです。
途中でダイアログが表示されることも無く、直ちにテキストが囲み枠の中央に移動します。
囲み枠は動きません

ただしこのスクリプトを実行できるのは、テキスト1つテキスト以外のオブジェクト1つ合計2つが選択されている場合のみです。これはスクリプトが「2つのオブジェクトのどちらがテキストか?」で移動させるオブジェクトを判別しているためです。

◆ テキストは必ず囲み枠の中央に揃う

スクリプトを実行すると、まずテキストのコピーが作成されて、それがアウトライン化されます。
それから、囲み枠の中央とアウトライン化されたテキストのコピーの距離が計算されて、アウトライン化されていない実際のテキストの方が移動します。
その後、アウトライン化されたテキストのコピーは削除されます。

そのため、テキストは必ず囲み枠の中央に揃います
もしテキストが囲み枠の中央に揃っていないように見えたら、それは目の錯覚だと思います。
不信な場合は、実際にテキスト部分をアウトライン化して、囲み枠との上下左右の間隔を測ってみてください。
正確に中央に揃っていると思います。

◆ オブジェクトの “重ね順” は関係無し

最初に “すでに同じ用途のスクリプトがネット上にある” と書きましたが、そちらはオブジェクトの “重ね順” が前面か背面かで、どちらのオブジェクトを動かすか判別しているようです。
ただそれだと、2つのオブジェクトが同じレイヤーに配置されている場合、どちらが前面か背面か、ユーザーが判別するのは非常に困難です。
ですのでこのスクリプトでは「2つのオブジェクトのどちらがテキストか?」で動かすオブジェクトを判別することにしました。
そのためオブジェクトの “重ね順” はオブジェクトの動きに関係がありませんが、スクリプトを実行できるのは、テキスト1つとテキスト以外のオブジェクト1つの合計2つが選択されている場合に限定されます。

◆ ダウンロードはこちらから

ダウンロード後に「スキ」をいただけると、今後の制作の励みになります!

この記事が気に入ったらサポートをしてみませんか?