InDesign CS6自動化作戦 with JavaScript
このページはInDesign CS6をJavaScriptによって自動化運用するためのサンプルスクリプトを掲載しています。InDesign CSに関しては
InDesign CS自動化作戦のページ
、InDesign CS2に関しては
InDesign CS2自動化作戦のページ
、InDesign CS3に関しては
InDesign CS3自動化作戦のページ
、InDesign CS4に関しては
InDesign CS4自動化作戦のページ
、InDesign CS5に関しては
InDesign CS5自動化作戦のページ
を参照してください。なお、CS5.5は購入しなかったためCS5.5に関する自動化のページはありません。
また、InDesign CS2/CS3の自動化処理を行うための書籍「
組版時間を半減する! InDesign自動処理実例集
」もありますの、参考にしてみてください。書籍に収録できなかったMacOS XのInDesign CS3でHTTP(s)、FTP通信を行う方法とサンプルに関しては
日刊デジタルクリエイターズ
の連載を参考にしてください。また、書籍では一部CS4に関して記述がありますが、変更箇所のみなのでたいして参考にならないでしょう。
また、以下のサイトでは詳細にCS〜CS6のInDesign Object Modelが掲載されています。
InDesign Object Model
JavaScriptでなくAppleScriptで自動制御する場合は「組版時間を半減する! InDesign自動処理実例集」のサンプルをAppleScriptに変換したコードが以下のサイトに掲載されています。AppleScriptでの制御を考えている方は参考にしてみてください。
スクスニップ(JavaScript→AppleScript)
このページに掲載されているスクリプトはMacOS X Snow Leopard (10.6/64bit Kernel)版のInDesign CS6を基準にしているためOSX LionやOS X Mountain LionおよびWindows版では異なる動作になる可能性があります。あらかじめ、ご了承ください。
また、掲載されているスクリプトで不具合がある場合はメール、
openspc@alpha.ocn.ne.jp
までお願いします。(InDesign CS4自動化作成からのスクリプト/ページ内容を流用しているので、もしかしたら動かないスクリプトがあるかもしれません。その際はお手数ですがメールをいただければ幸いです)
Last update:2017/1/7 AM 10:55
準備
はじめに
注意事項
JavaScriptとは?
アプリケーション/バージョンアップに伴う注意点
Adobe製品でのJavaScript
InDesign CS6のJavaScriptで、できることと、できないこと
InDesign CS6でのJavaScriptの実行方法
JavaScript実行時の注意点
InDesignでの日本語の文字コードと拡張子
ファイルの指定(パス)について
ExtendScript Toolkit CS6について
InDesignのJavaScriptでプログラムを作成する前に
InDesignのJavaScript入門
プログラムとは何?
(すぐに始めたい人&面倒な人は読む必要はありません)
JavaScriptとは?
(すぐに始めたい人&面倒な人は読む必要はありません)
簡単なプログラムでInDesign CS6を制御する
新規にドキュメントを作成する
文字を表示する
画像を表示する
別ファイルに書かれたスクプトをリンクする
よく使われる省略した書き方
JavaScriptの基本文法
行の記述
数値
文字列
変数名
型変換
特殊文字
三項演算子
代入演算子
演算子
比較演算子
文字列演算子
優先順位
オブジェクト
プロパティ/メソッド
イベント
リテラル
基本編
注釈(コメント)を入れる
変数を用意する
変数に数字や文字を入れる
配列変数を用意する
配列変数に数字や文字を入れる
配列のサイズ(個数)を調べる
基本的な演算を行う
高度な演算を行う
小数点以下の処理を行う
乱数値を発生させる
文字列を連結する(文字列の加算)
文字から数値に変換する
数値から文字に変換する
文字列の長さを調べる
特定の文字列があるかどうか調べる
文字列を抜き出す
文字をLatin 1コードに変換する
英文字を大文字、小文字に変換する
関数を定義する
条件判断を行う
複雑な条件判断を行う
一定回数繰り返し処理を行う
条件を満たしている間、繰り返し処理を行う
値によって分岐させる(switch, case)
例外処理(エラー処理)を行う
日付処理を行う
時間処理を行う
タイムアウト処理を行う
初級編
アラートダイアログを表示する
確認のダイアログを表示する
入力ダイアログを表示する
現在実行しているスクリプトのパスを調べる
ペーストする
終了する
ウィンドウ関連
ウィンドウ名を調べる
開かれているウィンドウの枚数を調べる
特定のウィンドウを最前面に表示する
特定のウィンドウを最大化する
特定のウィンドウを最小化する
特定のウィンドウの表示位置とサイズを指定する
ドキュメント関連
新規にドキュメントを作成する
ドキュメントのサイズを求める
総ページ数を表示する
ページ内にある項目数を調べる
ドキュメントを閉じる
最前面(アクティブ)ドキュメントを指定する
開かれているドキュメントを指定する
バージョンを調べる
テキスト(ストーリー)の総数を表示する
マスターページ関連
マスターページの総数を求める
マスターページを追加する
マスターページを削除する
マスターページを複製する
マスターページの名前を設定する
レイヤー関連
レイヤーの総数を求める
レイヤーを追加する
レイヤーのロック状態を調べる
全レイヤーをロックする
全レイヤーを不可視にする
レイヤーを複製する
レイヤーを削除する
レイヤーを移動する
フレーム関連
テキストフレームを作成する
テキストフレームを10個一定間隔で作成する
複数のテキストフレームを指定された座標に作成する
テキストフレームに文字を表示する
テキストフレームに画像を表示する
テキストフレームを回転させる
フレームの枠の色を指定する
フレームの枠の幅を指定する
テキストフレームを横に拡大縮小する
テキストフレームを縦に拡大縮小する
テキストフレームを傾ける
フレームの枠の角の形状を指定する
テキストがオーバーフローしている場合に警告する
ページ内にあるテキストフレーム数を調べる
テキストがオーバーフローしている場合に警告する(全ページチェック)
テキストフレームの座標を表示する
テキストフレームの不透明度を指定する
テキストフレームの背景色を指定する
テキストフレームの背景色をスォッチカラーで指定する
テキストフレームをグループ化する
テキストフレームにテキストファイルの内容を表示する
テキストフレーム内の文字を天地中央に配置する
テキスト(文字)関連
文字のサイズを指定する
文字の色を指定する
文字のフォント(書体)を指定する
文字のベースラインを指定する
文字の拡大縮小率(長体、平体)を指定する
文字のアウトラインを作成する
文字に下線(アンダーライン)を付ける
文字の下線(アンダーライン)に色を付ける
文字の下線(アンダーライン)の太さを指定する
文字の下線(アンダーライン)の位置を指定する
文字にルビを振る
選択された文字が特定の文字の場合のみルビを振る
段落関連
段落の最初の文字のインデントを指定する
段落の位置揃えを指定する
段落のフォント(書体)を指定する
段落に行番号を付ける
最初の段落に下線(アンダーライン)を付ける
最初の段落にトラッキングを設定する
最初の段落にベースラインを設定する
最初の段落を削除する
最初の段落にスタイルを適用する
フォント(書体)関連
利用できるフォント(書体)の総数を求める
利用できるフォント(書体)の名前をテキストフレームに書き出す
利用できるフォント(書体)のPostScriptフォント名をテキストフレームに書き出す
フォントの種類を表示する
利用できるフォント(書体)で埋め込み可能なフォント名をテキストフレームに書き出す
利用できるフォント(書体)でアウトラインが作成可能なフォント名をテキストフレームに書き出す
利用できるフォント(書体)でPDFに埋め込み可能なフォント名をテキストフレームに書き出す
フォントファミリー名、フォントスタイル名を取得する
選択関連
選択されている項目数を表示する
選択されている項目の描画モードを設定する
選択されているテキストフレーム内の文字数を表示する
選択されているフレームの種類を表示する
選択されたテキストフレーム内の段落数を求める
選択されたテキストフレーム内の段落ごとに色を交互に付ける
選択されたテキストフレームの全ての文字のアウトラインを作成する
選択されたテキストフレームの最初の文字のアウトラインを作成する
選択されたテキストフレームの最初の段落のアウトラインを作成する
選択項目から除外する
テキストフレームのみ選択する
選択されたオブジェクトの種類を表示する
画像関連
新規に画像を表示する
ファイル選択ダイアログで選択された画像を表示する
ファイル選択ダイアログでキャンセルボタンが押されるまで画像を配置する
画像を拡大縮小表示する
画像を指定位置に移動する
画像の座標を表示する
画像の不透明度を設定する
画像を回転させる
画像の境界をぼかす
画像のファイルパスを表示する
ファイル関連
ファイルを開く
ファイル内容を全部読み込む
最初の5文字だけ読み込む
1行読み込む
1文字読み込む
1文字読み込み文字コードを表示する
ファイルに文字を書き込む
ファイルタイプ(種類)を調べる
ファイルポインタの位置を調べる
ファイルポインタの位置を指定する
ファイル保存ダイアログを表示する
ファイル選択ダイアログを表示する
ファイルのバイト数を求める
ファイルの行数を求める
改行コードの数を調べる
ファイルの終わりかどうか調べる
ファイルのエンコードの種類を調べる
ファイルをコピーする
ファイル名を変更する
ファイルを削除する
ファイルが存在するかどうか調べる
ファイルの作成日/修正日を調べる
ファイル名を調べる
ファイルのパスを調べる
フォルダ選択ダイアログを表示する
フォルダオブジェクトを作成する
フォルダが存在するかどうか調べる
フォルダの作成日/修正日を調べる
フォルダのパスを調べる
フォルダを作成する
フォルダ名を変更する
フォルダを削除する
フォルダ内のファイル一覧を取得する
選択されたファイル名をテキストフレームに表示する
表/テーブル関連
表を作成する
表の行数を求める
表の列数を求める
表の内容を表示する
表のセルの文字を一括して設定する
表の最初の行の内容を一括して設定する
表の最初の列の内容を一括して設定する
表の最初の行の二番目のセルの内容を設定する
表の最初の列の二行目のセルの内容を設定する
中級編
全てのページに同じ文字を追加する
2つのテキストフレームの内容が同じかどうか調べる
語尾を変更する
定義されているハイパーリンク数を求める
テキストファイル内容をテキストフレームに自動的に読み込ませる
画像をテキストフレームに自動的に読み込ませる
テキストフレームに自動的に文字や画像を読み込ませる
全ページのフレームに自動的に文字や画像を読み込ませる
全ページのテキストフレームの総数を調べる
全ページのテキストフレーム以外のオブジェクトを削除する
全ページのフレームに自動的に文字や画像を読み込ませる(画像フィット)
全ページのフレームに自動的に文字や画像を読み込ませる(枠にフィット)
全ページの画像に図番号を連番で付ける
全ページのフレームに自動的に文字や画像を読み込ませる(縦横の比率を保ったままフレームにフィット)
検索/置換関連
全ページに渡って文字列を検索し置換する
PDF (Portable Document Format) 関連
PDFを配置する
PDFの指定されたページを配置する
PDFの指定された範囲のページを配置する
PDF形式で保存する
正規表現関連
該当する文字列があるかどうか全ページに渡って調べる
該当する文字列があるかどうか全ページに渡って調べ確認させながら置換する
全ページにある全角の英大文字を半角の英大文字にする
全ページにある全角の英文字を半角の英文字にする
全ページにある全角の数字を半角の数字にする
全ページにある全角の数字を漢数字にする
全ページにある郵便番号の表記を変更する
選択されたテキストフレームの点(.)を句点(。)に変換する
選択されたテキストフレームの文章の末尾の点(.)のみ句点(。)に変換する
選択されたテキストフレーム内の行頭に全角空白がない場合に全角空白を挿入する
選択されたテキストフレーム内の行頭が全角空白の場合に全角空白を削除する
選択されたテキストフレーム内の英文字の前後に半角空白を入れる
選択されたテキストフレーム内の数字を3桁ごとに区切る
選択されたテキストフレーム内の数字を3桁ごとに区切る(〜円の場合のみ)
選択されたテキストフレーム内の数字を3桁ごとに区切る(¥〜の場合のみ)
GUI(グラフィカルユーザーインターフェース)関連
ダイアログを表示する
編集できない文字を追加する
編集フィールドを追加する
枠を追加する
ドロップダウンリストを追加する
ラジオボタンを追加する
チェックボックスを追加する
編集フィールドに入力された文字を取得する
ドロップダウンリストで選択された項目の番号を取得する
どのチェックボックスが選択されたかどうかを調べる
ダイアログオブジェクトを破棄する
OKボタンかキャンセルボタンが押されたかどうかを調べる
角度を入力するコンボボックスを追加する
角度を入力するエディットボックスを追加する
整数値を入力するコンボボックスを追加する
整数値を入力するエディットボックスを追加する
単位付きの値を入力するコンボボックスを追加する
単位付きの値を入力するエディットボックスを追加する
%値を入力するコンボボックスを追加する
%値を入力するエディットボックスを追加する
実数値を入力するコンボボックスを追加する
実数値を入力するエディットボックスを追加する
ドロップダウンリストで選択された項目(テキスト)を取得する
ドロップダウンリストで選択された項目をテキストボックスに表示する(無理矢理
)
グラフィック(線、図形)
線を作成する
三角形を作成する
オープンパス、クローズパスを指定する
四角形を描く
L字型を描く
楕円を描く
多角形を描く
あまり意味のない役に立たないものか面白いもの
1文字ずつ等間隔で配置する
1文字ずつランダムな位置に配置する
不透明度を変化させながら1文字ずつ等間隔で配置する
テキストフレームをランダムに配置する
テキストフレームをランダムに配置しランダムに回転させる
テキストフレーム内の文字をうねるような感じにする
テキストフレーム内の文字を左右に揺れるような感じにする
テキストフレーム内の文字の色を交互に付ける
上級編
エクセルのデータを読み込み自動レイアウトする
エクセルのデータを読み込み自動レイアウトする(ダブルクォーテーション処理あり)
エクセルのデータを読み込み自動レイアウトする(写真あり)
エクセルのデータを読み込み自動レイアウトする(自動的にページ追加)
一致した単語を置き換える
選択したテキストフレームに特定の単語があるかどうか調べる
全てのページのテキストフレーム内に特定の単語があるかどうか調べる
選択されたテキストフレーム内の文字をファイルに書き出す
選択されたテキストフレーム内の文字をファイルに書き出す(保存ダイアログ)
選択されたテキストフレーム内の文字をファイルに書き出す(FileMaker 7用)
ファイルメーカーのデータを読み込み自動レイアウトする(自動的にページ追加)
特定のアプリケーションを起動する
HTMLタグを削除してテキストフレームに読み込む
索引を作成する
フォルダ内にあるJPEG画像を自動的に読み込み配置する
フォルダ内にあるPDFを自動的に読み込み配置する
タブ区切りテキストを読み込み表内に自動レイアウトする
内部のプロパティとその値を調べる
選択されたフレームがテキストフレームの場合のみファイルにテキストを保存する
XML
エレメントを追加する
エレメントの内容(テキスト)を設定する
タグを追加する
エレメントの内容(テキスト)をテキストフレームに表示する
属性を追加する
タグの総数を調べる
タグの名前を調べる
コメントを追加する
新規ドキュメントを作成しXMLデータを読み込む
XMLデータを読み込み内容を更新する
選択されているXMLに対して読み込みオプションを指定する
選択されているXMLに対して結合するか追加するか設定する
XMLルートのタグ名を取得する
ソケット通信
ソケット通信でWebサーバーのHTMLファイルを取得し配置する
ファイルメーカー& XML
最初のレコードの最初のフィールドの内容をテキストフレームに配置する
最初のレコードに含まれるフィールド内容を全てテキストフレームに配置する
1レコード1ページとして全レコード、全フィールドを配置する