スクリプト

【遊び】グラフデータを別のグラフに複製したい!

グラフデータ複製移動 アイキャッチ図版

Illustratorのグラフツールで作るグラフは,変形パネルや拡大・縮小ツールで大きさを変更すると,データを更新したときに形が崩れてしまいます。

そのため,サイズを変えたくなったら,グラフを新しく作って数値データをコピー&ペーストすることになります。

これはデータの行数・列数が少なければなんてことのない作業です。しかし一画面に収まらないほど長い場合,端の数値を取りこぼしがちなので注意が必要です。

それに単純に操作が大変で疲れますよね。Excelみたいに有効なデータ範囲を拾ってくれるショートカットはないですからね。

そこで今回は選択している2つのグラフのうち,背面にあるほうのデータを前面にあるグラフにコピーするJavaScriptを紹介します。

ただし,このスクリプトは「undo/redoをするとIllustratorがクラッシュする」という欠点があります。お遊びとして見れる方,自己責任でなんとかできる方のみ続きをどうぞ。

続きを読む

【解決】時計回りでアイウなどの連番をふり直したい!

時計回りに連番をふり直す アイキャッチ図版

【解決】時計回りでアイウなどの連番をふり直したい!

以前の記事【解決】Illustratorでアイウなどの連番をふり直したい!により,左上→右下座標の順番で連番をふり直せるようになりました。自分で作ったものながらシンプルでとても使いやすいです。

ところが理科の図版を作っていると,月の満ち欠けの説明図のように文字を円形に配置し,時計回りか反時計回りで連番をふる状況がよくあることに気づきました。明らかに法則に基づいているのに手入力しなくてはならず,何とも歯がゆいですね。

そこで今回は選択したテキストフレームの1文字目を連番とみなし,時計回りまたは反時計回りで番号をふり直すJavaScriptを紹介します。

続きを読む

【解決】レイヤー名から「のコピー」を取り除きたい!

レイヤー名から「のコピー」を削除する アイキャッチ図版

Illustratorでは,レイヤーパネルで選択しているレイヤーをオプションキーを押しながらドラッグすると複製できます。レイヤーの中にさらにレイヤー(サブレイヤー)を含む場合,その構造もそっくり同じになります。

このレイヤー構造を丸ごとコピーするやり方は,似ているけどちょっと違う地図を1つのファイルに何個も入れなければいけないときに便利です。例えば気象庁の天気図を3日分並べて1つの図版にするなどです。

ただこの方法ではサブレイヤーすべてに「のコピー」「のコピー 2」などが付くので,非常にうっとうしいです。かと言って消すには,1つひとつ選択してデリートキーを押す必要があります。穴を掘ってはそれを埋めているような気分になりますね。

そこで今回は選択しているレイヤーより下層のすべてのレイヤーの名前から,末尾の「のコピー」を取り除くJavaScriptを紹介します。

続きを読む

【解決】パスの余計なポイントを削除したい!

パスファインダ「余分なポイントを削除」アイキャッチ図版

Illustratorで表の背景の塗りを作るときなど,たくさんの四角いパスをパスファインダで「追加」することがあります。そうすると,もともとはオブジェクトの境目だったところに余計なパスができてしまいます。

これには回避方法があり,パスファインダオプションの「余分なポイントを削除」にチェックを入れてから「追加」すればすっきりとしたパスができるようです。すでに「追加」してしまっている場合でも,そのパス1つだけ選択した状態で同じ動作をすればポイントはすっきりします。便利ですね。

でもパスファインダオプションは環境設定として保存されません。毎回変更するのも面倒です。ついでに言えば,アクションに記録はできましたが実行しても反映されませんでした。

そこで今回は選択しているオブジェクトが1つでも複数でも,余計なポイントを削除しながらパスファインダで追加するJavaScriptを紹介します。

続きを読む

【解決】価格ごとに集計してMisoca用CSVにしたい!

Misocaインポート用CSV生成 アイキャッチ

フリーランスにとって請求書を発行することは日常茶飯事ですが,みなさんはどのように作っているでしょうか。

私の場合は表計算ソフトで値段を管理しておいて,最終的に
クラウド請求書・見積書・納品書管理サービス Misoca(みそか)
で入力して仕上げています。

というのもMisocaは本当にシンプルで,請求書作成のルールに疎くてもすぐ実用レベルのものが作成できるからです。

さて具体的な方法ですが,まず表計算ソフトでは下の表のようにファイルパスと値段をセットにしておきます。

@filepath price
~/Desktop/myFolder/fig1.ai 8000
~/Desktop/myFolder/fig2.ai 8000
~/Desktop/myFolder/fig3.ai 12000

最終的に請求書にするときには,次のように価格ごとに個数を集計して1行ずつ書き込みます。

品番・品名 数量 単位 単価
図版 種類1 2 8000
図版 種類2 1 12000

表計算ソフトのピボットテーブルを利用して価格ごとの個数を出し,それを見ながらMisocaに手入力をするという流れです。

ただこの方法はピボットテーブルを使うのが大げさで,手入力も無駄に感じ,だんだん面倒くさくなってきました。もう少し手軽なものがほしいです。

幸いなことにMisocaにはCSVから請求書を一括生成する機能があります。そのため値段ごとの個数をスクリプトで集計し,CSVにすればあらかたの作業は終わりそうです。

そこで今回は選択している価格リストをもとに値段ごとの個数を計算し,Misocaインポート用CSVとして保存するAutomatorサービスを紹介します。

続きを読む

【解決】パネルで選んだ複数のレイヤーの中身を選択したい!

複数レイヤー中身全部選択 アイキャッチ

Illustratorでは,レイヤーパネルでレイヤー名あたりをoption+クリックすると,そのレイヤーの中身をすべて選択できます。レイヤーパネルの右端と◯の間をクリックすることでも同じ効果があります。

しかしレイヤーが複数ある場合,さらにshiftを加えて1つひとつのレイヤーをクリックしていく必要があります。これは面倒なだけでなく,操作に失敗することが多いですよね。

そこで今回はレイヤーパネルで選んでいる複数のレイヤーの中身をすべて選択するスクリプトを紹介します。

続きを読む

【解決】レイヤー作成のとき黄色レイヤーを禁止したい!

黄色を禁止して新規レイヤー アイキャッチ図版

以前の記事【遊び】Illustratorで黄色レイヤーを禁止したい!で,Illustratorをずっと監視して黄色レイヤーを撲滅する方法を紹介しました。

この試みはマシンの負担が大きかったために「遊び」の域を出ませんでしたが,現在では代わりに作った手抜きスクリプトが意外と役に立っています。

そこで今回は新規レイヤーを実行し,できたレイヤーが黄色だったら他の色に変更するスクリプトを紹介します。

続きを読む

【解決】顔写真のサイズを自動で揃えて切り抜きたい(1)

顔矩形認識変形切抜スクリプト アイキャッチ

表題の通り世の中には,顔の大きさを揃えてトリミングする作業をしている方がたくさんいます。

インタビュー記事や名刺・社員証・パスポートなど,顔写真を使う状況は枚挙にいとまがありません。そう,いつだって人は人の顔に興味津々です。

でも何十人何百人といった単位でリサイズやマスクをしていたら,しまいには目を背けたくなってしまいますね。

そこで今回はIllustratorで選択している複数の写真から顔を自動認識し,大きさを揃えて切り抜くスクリプトを紹介します。

続きを読む

【解決】再リンク時同名ファイルを検索して出してほしい!

Spotlightで再リンクダイアログ アイキャッチ図版

前回の記事【解決】再リンクのとき画像のあるフォルダを起点にしたい!により,リンクの貼り直しが少し楽になりました。

それに関して「再リンクのときファイルの名前はわかっているのだから,同じ名前のファイルを検索して候補を挙げてくれればいいのにといつも思っていた」という主旨の感想をいただきました。確かにその通りで,実現すればさらに楽ができそうです。

そこで今回は選択した配置画像の名前でSpotlight検索し,見つかった候補の中から選んで再リンクするAppleScriptを紹介します。

続きを読む

【解決】再リンクのとき画像のあるフォルダを起点にしたい!

再リンクダイアログ アイキャッチ図版

Illustratorで「リンクを再設定」のダイアログを開くと,意図しないフォルダが表示されるときがあります。

どうも前回「配置」や「別名で保存」などで選んだフォルダがダイアログの起点になるようです。

基本的にリンク画像は同じフォルダにまとめて置いてあることが多いので,配置画像からそのフォルダを取得して表示してくれたら楽になりますよね。

そこで今回は選択した配置画像のあるフォルダを起点にして再リンクダイアログを開くスクリプトを紹介します

続きを読む

【解決】スタイルにショートカットを割り当てたい!(2)

ショートカットでスタイル適用(2)アイキャッチ

以前の記事【解決】スタイルにショートカットを割り当てたい!により,キーボードショートカットでスタイルを適用できるようになりました。お気に入りのスタイルをすぐに呼び出すことができ,とても便利に使っています。

でもこのスクリプトは,スタイルごとに1つずつJavaScriptファイルを必要とします。だんだん管理が面倒になってきました。

だって想像してみてください。私がこのスクリプトをアップデートするたびに,あなたは毎回JavaScriptファイルをリネームすることになるんですよ……

幸いなことに,Illustratorにはスクリプト実行時に引数(ひきすう)を渡す機能がついています。引数とはスクリプトに渡す文字や数字などのデータのことです。スタイル名を引数として渡せば,プログラムの中身はそのままでも,そのスタイルを適用する処理に変えられます。

前のスクリプトを作ったときは,引数を管理できるアプリが普及していなかったためファイル名で代用していました。最近はKeyboard Maestroを使う人が増えてきたので,それで管理できそうです。

そこで今回は,バージョンアップしたスタイル適用スクリプトKeyboard Maestroで,複数のスタイル適用ショートカットの管理を簡単にします。

続きを読む

【解決】使用フォント一覧をテキストファイルにしたい!

フォント一覧出力 アイキャッチ図版

Illustratorで図版の仕事をしていると,過去に誰かが作ったデータの仕様で新しいものを制作することがあります。

そんなとき私はまず,フォント管理アプリでセットを作るところから始めます。見つからない書体があるとファイルを開くたびに警告が出てしまいますからね。

しかし,InDesignから収集されたとおぼしき大量のIllustratorファイルを1つひとつ開き,使用書体をすべてピックアップするというのはとても大変なことです。
それに目視でフォント名を確認すると,ProとPr6・StdとStdNのようなややこしいものを取りちがえることが多いです。こういうのは機械にやってもらいましょう。

幸いにもこの問題にはすでにいい解決策が公開されています。
Illustratorドキュメントで使用しているフォント名をテキストに書き出す – ごんれのラボ
作者はこうちゃん黒猫まみれさんです。DTPerのスクリプトもくもく会でお世話になってます。

ドラッグ&ドロップによりファイルを指定できて便利なのですが,AppleScriptなのでMac専用です。また合成フォントの中身を取得しないので,フォントセットを作る目的だと少し不便でした。

そこで今回はダイアログで選択した複数のai/epsファイルから使用フォントを調べ,テキストとして保存するスクリプトを紹介します。JavaScriptなのでWindowsでも使えます。

続きを読む

【解決】選択アイテムを一発でアートボード中心に移動したい!

アートボードセンターに移動 アイキャッチ図版

最近はIllustratorで図版を作るとき,アートボードを仕上がりサイズにするよう指示を受けることが多くなりました。寸法の違う図版を1つのファイルにたくさん詰め込むこともしばしばあります。

このやり方では大抵,オブジェクトをアートボードのセンターに移動する動作がとても面倒になります。A4書類固定だったら,変形パネルでX座標に105mm,Y座標に148.5mmと入力すれば済むことなんですが,毎回違う数値ですからね。

では,整列基準をアートボードにして整列するという手はどうでしょうか。これはこれで,整列基準を変更するのにちまちまクリックしなくてはいけません。そのへんを解決するスクリプトは【解決】整列・分布を全部ショートカットで操りたい!で配っていて,一応表題の動作もできます。

でも,どうせならもっと速くしたいじゃないですか。だって1日に何回もやる動作ですよ。

そこで今回は選択している複数のアイテムを,各アイテムの位置関係はそのままで,アクティブなアートボードのセンターに移動するスクリプトを紹介します。スクリプトにショートカットを割り当てるソフトとの組み合わせで,一発移動を実現する作戦です。

続きを読む

【解決】ショートカットで矢印を解除したい!

Illustratorで矢印を解除するスクリプト アイキャッチ図版

Illustratorで地図などを作っていると,矢印と同じ色・線幅で矢頭のないものがよく欲しくなります。

でも普通に解除しようとすると,始点の矢印・終点の矢印に対してそれぞれドロップダウンリストをクリックし,[なし]を選ばなければいけません。これは手間ですね。

そこで今回は選択しているパスの矢印を解除するスクリプトを紹介します。スクリプトにショートカットを割り当てるソフトとの組み合わせで,キー呼び出しを実現する作戦です。

続きを読む

【解決】Keyboard MaestroのIllustratorスクリプト実行を簡単にしたい!

Keyboard MaestroでIllustratorスクリプト アイキャッチ図版

Keyboard MaestroでのIllustratorスクリプト実行を解説した記事としては,三階ラボさんの記事が有名です。私もお世話になりました。
3flab inc. | Keyboard Maestro で Illustrator のスクリプトをサクっと実行

記事の要点は,スクリプトのjsxファイルをIllustratorで開くように設定すると,呼び出したとき実行できるということです。シンプルでわかりやすいですね。

ところが慣れてくると,次の項目が気になってきました。

  • スクリプトを開くIllustratorのバージョンが固定されているので,別のバージョンを併用するときどうすればいいのかよくわからない
  • バージョンが増えるたびにいちいち全バージョン登録するのは面倒くさい
  • JavaScript(ExtendScript)のみ対応で,AppleScriptやJXAはそれぞれ別の方法を用意しなければいけない

一方スクリプト起動アプリとして有名なSPAiでは,ExtendScript/AppleScript/JXA の違いを気にすることなく実行できます。あまり気にしていないかもしれませんが,Illustratorのバージョンについても管理してくれています。

具体的には,スクリプトの種類によって

  • 目の前に出ているバージョンで実行する
  • 複数バージョン起動中は実行を中止する

といった判断をしています。Keyboard Maestroでもこういうのをやってほしいですね。

そこで今回はKeyboard MaestroにSPAi風スクリプト起動ヘルパーを組み合わせ,適切な方法やバージョンでスクリプトを実行してもらう方法を紹介します。

2022/03/15追記:
こちらはもう情報が古くなっています。新しいツールに引き継いだので,スクリプトファイルを実行する Keyboard Maestro 用アクション|note をご覧ください。

続きを読む

【解決】Quick Lookでテキストをコピーしたい!

SpotlightでQuick Look風文字コピー アイキャッチ図版

デザインやプログラミングなどテキストを多く扱う作業をやっていると,txtファイルから内容をコピー&ペーストすることがよくあります。でも,Finderで選択してテキストエディタで開く動作って結構集中力を削ぎませんか?

MacOS 10.10(Yosemite)では,設定すればQuick Lookで見えているテキストをコピーできました。そのため,Finderで選択,スペースを押してQuick Look,コピーという流れがとてもスムーズにつながります。

ところが,その設定は10.11(El Capitan)で廃止になってしまいました。なんてことをするんでしょう。

幸いなことに,Spotlight検索フィールド(Finder検索でない)に出てくるテキストファイルはなぜかコピー可能です。この挙動が使えそうですね。

そこで今回はFinderで選択しているファイルを,Spotlight検索欄に表示する機能を紹介します。

続きを読む

【解決】Illustratorにもオートフィルがほしい!

Illustratorオートフィル アイキャッチ図版

Illustratorで年表やグラフなどを作っていると,連続した数値を一定の距離で何回も複製することがあります。例えば,2010年→2015年→2020年といった具合です。

普通にやる場合,以下のような手順になると思います。

  1. テキストフレームを作って数値を入力する
  2. フォントやサイズなどのスタイルを整える
  3. テキストフレームを移動コピーして,次の数値を入力する
  4. ⌘Dの繰り返し複製などでコピー,入力を繰り返す

とても面倒ですね。

Excelなど表計算ソフトの場合,入力されている2つの値を参考に次の値を作り出す機能があります。いわゆるオートフィルと呼ばれているものです。

もしIllustratorで複製移動したときオートフィルもやってくれたら,半端なく便利ではないでしょうか。

そこで今回は選択した2つテキストフレームの距離でテキストフレームを複製移動し,数値をオートフィルするJavaScriptを紹介します。

続きを読む

【解決】選択した連番を1づつ増やし(減らし)たい!

選択連番インクリメント アイキャッチ図版

以前の記事【解決】Illustratorでアイウなどの連番をふり直したい!により,選択したテキストフレームの連番(123・アイウ・ABCなど連続した番号)を一括で変更できるようになりました。

しかし作業をしていればいっきに変えるのではなく,選択している文字のみ連番をスライドしたくなることもよくありますよね。

そこで今回は選択した1文字の連番を1つ増やしたり,減らしたりするJavaScriptを紹介します。

続きを読む

【解決】ファイルごとにオーバープリントの有無を確認したい!

オーバープリント確認 アイキャッチ図版

Illustratorで学習教材用の図版を作っていると「解答は特色でオーバープリントにする」というルールのときがあります。しかしそれ以上に「オーバープリントは一切使用しない」決まりの場合も多いのではないでしょうか。

オーバープリントの適用は,自ら属性パネルなどを使って設定しないとできません。そのため,大抵は何もしなければそのまま納品できます。

ただ,支給されたデータからコピーした部分に設定されていたり,InDesignから書き出したPDFを素材として使っているといつの間にか紛れ込んでいたりします。

一方で確認のほうはというと,1つひとつ選択して属性パネルを見るのが一番確実です。アピアランスで作った塗りなどはスクリプトから見えないので,スクリプトには頼れません。アクションで一括解除するにも,ロックや表示の状態によって漏れが出る可能性が高く不安です。

印刷して確認するとしても,印刷する側(お客さん側)で使うアプリをオーバープリントプレビューに設定しなければ正しい結果になりません。ちょっとこれはハードルが高いですよね。

このように,万が一のことを考えるとチェックしなくてはいけないけど,完全にチェックするのはとても難しいのがオーバープリントなのです。

幸いなことにIllustratorファイルは,オーバープリントを含んでいるかどうかの情報をメタデータという形で保存しています。適用していないことを確かめるだけなら,ファイルごとにそのメタデータを読み出せばこと足りるわけです。

そこで今回は,ダイアログで選択したai/epsファイルがオーバープリントを含むか調べ,結果をタブ区切りテキストとして保存するJavaScriptを紹介します。

続きを読む

【解決】パス文字列からQuick Lookしたい!

パス文字列でクイックルック アイキャッチ図版

図版の値段の管理や,InDesignのデータ結合用データの作成に表計算ソフトを使うことがよくあります。
その場合以下のように,パスの文字列と必要な情報を並べることになります。

@filepath rank price
~/Desktop/myFolder/図版1.ai A 12000
~/Desktop/myFolder/図版2.ai B 8000

ただこのやりかただと,ファイルのプレビューが見られません。「図版1ってどんなのだっけ?」って思いますよね。

そこで今回はパス文字列の本体ファイルをQuick LookするAppleScriptを紹介します。
ついでなのでQuick Look以外に, Finder で表示 Finder で開くも一緒にどうぞ。

続きを読む