ChatGPT(など)にIllustrator用のスクリプト作成を依頼するときのテンプレート(と、JSXファイルの作成)
ChatGPT(など)にIllustrator用のスクリプトを依頼するとき、こちらをテンプレートとして使うとよい感じです。
Adobe Illustrator用のExtendScript開発を依頼します。
以下の要件に基づいたスクリプトの作成をお願いします。
# スクリプトの目的:
[実現したい具体的な機能や自動化したい作業内容を記述]
# 使用言語とバージョン:
- ExtendScript(ECMAScriptのバージョン3に基づくAdobe固有の拡張を含む)
- Adobe Illustrator 2024対応
# スクリプトの機能要件:
[実装してほしい機能の詳細リストを記述]
# 制約条件:
- ExtendScriptの仕様に準拠し、ECMAScriptのバージョン3の範囲内で動作すること
- Adobeの拡張機能を利用する場合は、Illustrator 2024でサポートされている機能に限定すること
- alert内のメッセージは日本語で
- //コメントは日本語で
# 納品物:
- スクリプトのソースコード(.jsxファイル)
- スクリプトのインストール方法と実行方法に関するドキュメント
- スクリプトの概要と使用方法を説明するユーザーマニュアル
# このスクリプトをファイル化したときの名前の候補
- 英数字のみ
- 5つくらい
ポイント
スクリプト実行後、選択がはずれてしまうことがあります。選択したままであれば、続けて別のスクリプトやアクションなどを適用できますので「実行後、選択したままにして欲しい」旨を伝えます。
エラーが出るとき
Adobe IllustratorがサポートしているExtendScript環境が古く、一部の現代的なJavaScript関数はサポートしていないため、動かないことが多々あります。
エラーが出る場合には、そのエラーの文字列を伝えてリライトを依頼します。
ChatGPTなら
チャット画面にスクショ画像をドラッグ&ドロップして添付します。
Macユーザーなら
次の手順でエラーメッセージをテキスト化します。
エラーメッセージをスクショし、Quick Lookで開く(ファイルを選択し、スペースバーを押す)
右下のアイコンをクリックして[テキスト認識表示]をONにしてエラーメッセージを選択し、コピー
[すべてコピー]でなく、エラーメッセージのみをコピーします。
Error 3:値を割り当てられません。
Line: 61
→>
var avgSize = originalSizes.reduce((a, b) => a + b, 0) /
originalSizes.length;
発想の転換
それでもうまくいかない場合には、発想の転換を検討してみてください。
たとえば、スクリプトでは選択しているエリア内文字を[自動サイズ調整]をONにできません。こちらの記事のスクリプトでは、スクリプト実行時の複数のテキストの高さを求め、合体後に高さにその値を戻しています。
ちなみに、その操作によって、文字サイズが変形されてしまうため、「垂直比率/水平比率を100に戻す」ステップが必要になります。
プロンプト作成マクロ
テンプレートのうち、変更したところは次の2つです。
スクリプトの目的:実現したい具体的な機能や自動化したい作業内容
スクリプトの機能要件:実装してほしい機能の詳細リストを記述
そこで次のようなダイアログボックスで入力するのがスピーディです。
[プロンプト作成]ボタンをクリックすると、クリップボードにプロンプトが入ります。
JavaScriptファイルを作成するKeyboard Maestroマクロ
なにげに面倒なのが、テスト用のJavaScriptファイルの作成です。Keyboard Maestroを使ってデスクトップにJavaScriptファイルを作成を用意しておくと便利です。
ファイル名:test-20240430-104404.jsxのように「test」とタイムスタンプ、拡張子jsxで構成
作成後、そのファイルをJedit Ωで開く(または、お好みのエディタに変更)
ご参考
MIGさんの記事がとても参考になります。
ダウンロード
本文内のテキストをファイル化しただけのものです。
ここから先は
¥ 100
定期マガジンを購読されるとサンプルファイルをダウンロードいただけます。 https://note.com/dtp_tranist/m/mebd7eab21ea5