Illustratorには標準で整列機能がありますが、テキストオブジェクトについては「見た目」としての正確な整列ができません。これは昔からの仕様で、今後変更される可能性はかなり低いと思っています。そこで、テキストオブジェクトの正確な整列をサポートするスクリプトを作りました。うまく揃わないテキストに悩まされている方は、ぜひ使ってみてください。
更新履歴
- GitHubのリポジトリをご確認ください
対応バージョン
- Illustrator CS5/CS6/CC/CC 2014/CC 2015/CC 2015.3/CC 2017
ダウンロード
インストール方法
- ダウンロードしたファイルを解凍します。
- 所定の場所に「オブジェクトを整列Plus.jsx」をコピーします。Windows版ではお使いのIllustratorの種類によって保存する場所が異なりますのでご注意ください。
- Illustratorを再起動します。
ファイル
→スクリプト
→オブジェクトを整列Plus
と表示されていればインストール成功です。
ファイルをコピーする場所
OS | バージョン | フォルダの場所 |
---|---|---|
Mac | 全 | /Applications/Adobe Illustrator (ver)/Presets/ja_JP/スクリプト/ |
32bit Win | CS5まで | C:\Program Files\Adobe\Adobe Illustrator (ver)\Presets\ja_JP\スクリプト\ |
64bit Win | CS5, CS6(32bit版) | C:\Program Files (x86)\Adobe\Adobe Illustrator (ver)\Presets\ja_JP\スクリプト\ |
64bit Win | CS6(64bit版)以降 | C:\Program Files\Adobe\Adobe Illustrator (ver) (64 Bit)\Presets\ja_JP\スクリプト\ |
- (ver)にはお使いのIllustratorのバージョンが入ります
- 本スクリプトは、CS4以前では動作を検証しておりません
標準の整列機能ではテキストオブジェクトが正確に揃わない
Illustrator標準の整列機能を使ってテキストオブジェクトを揃えようとすると、以下2つの問題にぶつかります。
- 横書きテキストの場合、下に隙間ができてしまう(期待する位置より上に揃う)
- トラッキングされた文字の場合、右端(下端)にトラッキング分の隙間ができてしまう(期待するより左、または上に揃う)
いずれも、テキストのバウンディングボックス基準で整列位置が計算される仕様に基づくもので、Illustratorの整列がデタラメに処理されているわけではないのですが、おそらく現実として期待する結果になってないと感じることが多いのではないでしょうか。
このスクリプトを使うと
文字の(仮想)ボディのサイズを想定してテキストオブジェクトの大きさを再計算し、それに基づいて整列を行います。バウンディングボックスで文字の下に大きな隙間ができてしまうフォント(源ノ角ゴシックなど)や、トラッキングが設定されたテキストオブジェクトでも比較的正確な整列が可能です。
なお、Illustratorのテキストとバウンディングボックスの関係について興味のある方は、ものかのさんさんのブログ記事を参考にしてみてください。
使い方
- オブジェクトを選択してスクリプトを実行すると、整列のダイアログが開きます
- [水平方向]、[垂直方向]で、整列したい位置のチェックボックスをクリックします。整列をしたくないときは、オンになっているチェックボックスを再度クリックして、チェックをオフにします
- [基準の範囲]から、整列の基準としたい対象を選択します。
アートボード
、選択範囲
、最背面オブジェクト
、最前面オブジェクト
の4つから選択可能です - 整列基準の範囲を確認したいときは
整列の範囲をハイライト
のチェックをオンにします。対象範囲がピンクにハイライトされます 実行
をクリックすると整列を実行します
基準となる範囲の詳細
項目 | 説明 |
---|---|
アートボード | 現在アクティブなアートボードの大きさ |
選択範囲 | 選択されたオブジェクト全体の範囲 |
最前面オブジェクト | 選択された中で最も前面にあるオブジェクトの大きさ |
最背面オブジェクト | 選択された中で最も背面にあるオブジェクトの大きさ |
ダイアログについて
スクリプトは最後に実行したダイアログの状態を記憶しますので、スクリプトを起動したあとにすぐreturn(enter)キーを押せば前回と同じ設定で整列を実行できます。さらに、スクリプトの設定をカスタマイズすれば、ダイアログを省略して整列を実行することも可能です(次項参照)。
カスタマイズ
10行目あたりにあるsettings
の各値を変更することで、ダイアログを省略した整列ができます。ダイアログを省略するには、showDialog
をfalse
にしたうえで、その他の値を希望する挙動に合わせておきます。また、withAltKey
をtrue
にしておくことで、ダイアログ省略設定時でも一時的に表示可能です。下記を参考に、テキストエディタでスクリプトを直接編集してください。
キー | 型 | 説明 | 値 |
---|---|---|---|
vertical | Number | 水平方向の揃え | -1:移動なし|0:左|1:中央|2:右 |
horizontal | Number | 垂直方向の揃え | -1:移動なし|0:左|1:中央|2:右 |
base | Number | 整列の基準 | 0:アートボード|1:選択範囲|2:最前面オブジェクト|3:最背面オブジェクト |
previewArea | Boolean | 整列基準範囲のハイライト表示 | false:しない|true:する |
showDialog | Boolean | ダイアログを表示 | false:しない|true:する |
withAltKey | Boolean | option(Alt)キーを押しながら実行でダイアログを強制表示 | false:しない|true:する |
- ダイアログ表示をカットしたい場合は、
showDialog
をfalse
にしてください withAltKey
の値はshowDialog
がfalse
のときのみ有効です
キーボードショートカットのすすめ
ダイアログを省略して実行するときは特にですが、スクリプトをキーボードショートカットで実行できるようにしておくことをおすすめします。Illustrator標準ではスクリプトにショートカットキーを割り当てできないので、Macの方は、ものかのさんの「SPAi」や、Keyboard Maestroなどのツールを使うといいでしょう。Keyboard Maestroは、三階ラボさんの記事が詳しくて参考になります。Windowsの方は……なんとか頑張ってください!(ツールがあるのかどうか知らないです。すみません)
なお、ショートカットキーの中にoption(Alt)キーが含まれる場合、強制的にダイアログが表示されます。強制表示を無効にしたいときは、カスタマイズでwithAltKey
をfalse
に設定してください。ただし、この場合はダイアログの強制表示機能は使えませんのでご注意ください。
その他
- クリッピングマスクされたオブジェクトは、クリッピングパスの大きさを基準とします
- エリア内文字はテキストエリアを整列の基準とします
注意
- CS6ではダイアログ表示直後のプレビューが乱れることがありますが、何かの設定を一度変更すれば正常に戻ります(原因不明)
- 必要なオブジェクトが選択されていないときは、警告を表示して処理を中断します
- オブジェクトの種類や構造によって意図しない結果になる可能性もゼロではありません
- 大量のオブジェクトでは処理に時間がかかることがあります
免責事項
- このスクリプトを使って起こったいかなる現象についても制作者は責任を負えません。すべて自己責任にてお使いください。
- CS5からCC 2017(いずれもMac版)で動作の確認はしましたが、OSのバージョンやその他の状況によって実行できないことがあるかもしれません。もし動かなかったらごめんなさい。
ライセンス
- オブジェクトを整列Plus.jsx
- Copyright © 2017 Toshiyuki Takahashi
- Released under the MIT license
- http://opensource.org/licenses/mit-license.php
- Created by Toshiyuki Takahashi (Graphic Arts Unit)
Illustratorの書籍を執筆しています。基本機能を重点的に紹介している内容で、初心者がつまづきやすいポイントは特に詳しく解説しています。ベジェ曲線の基本となる、ペンツールについても取り上げていますので、ぜひチェックしてみてください!
- Illustratorプロフェッショナルの教科書 デザイン作成とパス・文字を正しく扱う技術 CC 2014/CC/CS6対応版
著者:高橋としゆき
出版社:エムディエヌコーポレーション/サイズ:B5判/ページ:208P/本体価格:本体2,800円+税
ISBN:978-4-8443-6473-3