2019年04月22日

InDesignで折れ線グラフの座標から値テキストを生成するスクリプト

DTP作業者にとっての難易度 ★☆☆☆☆(1)

※2019.9.2/サンプルデータを更新(ダイアログから「折れ線本数」の項目を削除しました→自動的に認識できるため。数字を小数点第二位までに丸めるよう変更しました)。


前回は「InDesignで棒グラフの寸法から値テキストを生成するスクリプト」を作成しましたが今回は折れ線グラフ版です。各頂点が示す値が分からなくなっていても、このスクリプトで値テキストを生成することができます。値テキストがあれば「JavaScriptでInDesign上に折れ線グラフを描く」でグラフを好きな寸法でいつでも新規作成できることになります。

※折れ線グラフをIllustratorで作成していた場合、座標軸や折れ線のパスをInDesignドキュメントにペーストすれば値を抽出できます(InDesignドキュメントを保存してからスクリプトを実行してください)。


0421a.png


スクリプトの使用方法は棒グラフの時と同様です。以下、動画をご覧ください。


使用のための準備


グラフが描かれたInDesignドキュメントを開いて折れ線のオブジェクトを漏れなく選択します(折れ線以外のオブジェクトは選択しないようご注意ください)。

選択内にグループが含まれるとスクリプトは実行できません。グループを解除するか、ダイレクト選択ツールでオブジェクト群を選択してください。

なお、すべての折れ線オブジェクトに同じ数のアンカーポイントが存在しないと正しいテキストは生成できません。折れ線が途中から始まるケースなどでアンカーポイントが足りない場合はダミーのアンカーポイントを追加してからスクリプトを実行してください(不自然ほど他から離れた位置にアンカーポイントを置くと良いでしょう。動画を参照ください)。

スクリプトの実行


スクリプトを実行すると5つ4つの項目を入力できるダイアログが表示されます。【1】最大目盛り、【2】最小目盛り、【3】最大目盛りY座標、【4】最小目盛りY座標、 【5】折れ線本数、を設定して実行してください。

値のテキストデータはInDesignドキュメントと同階層に生成されます。

いつものことですが、業務に使用される際は充分にテストされるようお願いします。


サンプルデータ(2019.9.2更新)はこちら《g2t_oresen_2019_0902g.zip》です。
posted by 照山裕爾 at 04:16| Comment(0) | InDesign-グラフ | このブログの読者になる | 更新情報をチェックする

2019年04月20日

InDesignで棒グラフの寸法から値テキストを生成するスクリプト

DTP作業者にとっての難易度 ★☆☆☆☆(1)

※2019.9.2/サンプルデータを更新しました(数字を小数点第二位までに丸めるよう変更しました)。


2017年に書いた「JavaScriptでInDesign上に集合棒グラフを描く」「JavaScriptでInDesign上に集合棒グラフ(横方向)を描く」は、値を記録したテキストデータからInDesign上に棒グラフを作成するものでした。

各部の寸法を数値でコントロールしやすく便利だと思うのですが、先日ある方から「毎年棒グラフを更新(最新年の分のみ追加)するのだが、以前の値が記録されたテキストデータが残っていないのでこのスクリプトを使うのは難しい」というお話を伺いました。

そこで今回は既存の棒グラフのオブジェクト(の座標と寸法)から値テキストを生成するスクリプトを書いてみました。InDesignで使用するものですがIllustratorで描かれた棒グラフから値テキストを生成するためにも使えそうです。

0419a.png

以下、動画をご覧ください。

使用のための準備


グラフが描かれたInDesignドキュメントを開いて棒グラフのオブジェクト群を漏れなく選択します(棒以外のオブジェクトは選択しないようご注意ください)。

選択内にグループが含まれるとスクリプトは実行できません。グループを解除するか、ダイレクト選択ツールでオブジェクト群を選択してください。

なお、棒が存在しない箇所があると正しいテキストは生成できません。だいたいの位置で構いませんのでダミーの棒を描いてからスクリプトを実行してください(不自然なほど大きな寸法にすることをおすすめします。動画を参照ください)。

スクリプトの実行


スクリプトを実行すると5つの項目を入力できるダイアログが表示されます。【1】最大目盛り、【2】最小目盛り、【3】最大目盛りY座標(X座標)、【4】最小目盛りY座標(X座標)、【5】グループ内の棒グラフ本数、を設定して実行してください。

値のテキストデータはInDesignドキュメントと同階層に生成されます。

いつものことですが、業務に使用される際は充分にテストされるようお願いします。

サンプルデータはこちら《g2t_2019_0902a.zip》です。
posted by 照山裕爾 at 01:59| Comment(0) | InDesign-グラフ | このブログの読者になる | 更新情報をチェックする

2019年04月04日

InDesignの検索/置換用「GREP」フォルダをスクリプトで切り換える

DTP作業者にとっての難易度 ★☆☆☆☆(1)

InDesignでは検索/置換設定をクエリとして保存することができます(正規表現検索/置換であれば「Find-Change Queries」フォルダの「GREP」フォルダに保存)。しかし複数の仕事が並行する時などクエリの数が多くなりプルダウンメニューから選択するのが面倒になります。これを解決するために検索/置換用「GREP」フォルダを切り換えるスクリプトを書いてみました。

※本スクリプトはMac用です。Windowsでは正しく動作しません。


cg2.png

※元としたのは以前「フォルダ内のGREPクエリをスクリプトで一括実行する[InDesign]」(http://mottainaidtp.seesaa.net/article/462789209.html)で作成したスクリプトです。応用すれば簡単だろうと思っていましたがケース分けがややこしく、思いのほか難航してしまいました。


スクリプト使用のための準備

このスクリプトはフォルダ名を書き換えるものです。想定していなかった作業により誤ってフォルダを削除するなどのトラブルが発生することがあるかもしれません。バックアップのため、使用の前に「Find-Change Queries」フォルダ全体を複製しておくことをお勧めします。いや、必ずバックアップをとっておいてください。
クエリを収めたフォルダは「GREP_テスト」など「GREP」から始まる名称とし「Find-Change Queries」フォルダの第一階層(「GREP」フォルダと同階層)に置いてください。

※「Find-Change Queries」の場所についてはアドビのサイトを参照してください。

スクリプトを実行する前にInDesignを起動しておきます(起動していないとスクリプトは動きません)。

スクリプトの流れ

@スクリプトをスタートすると「GREPとして使用するフォルダを選択してください」と表示されます。ここでフォルダを選択すると確認のため「『○○○○』をGREPフォルダとします。」と表示されます。
A次に「今まで使っていた「GREP」フォルダについては別名保存します。」という入力ダイアログ(プロンプト)が表示されますので任意の名称を入力します。
実行すると@で選択したフォルダの名称が「GREP」と変更され、今まで使っていたGREPフォルダはAで設定した名称に変更されます。

※「GREP」フォルダ内には「folderName.txt」というテキストファイルが保存されます。これは@の時点(名称を変更する前)のフォルダ名を記録しておくためのものです。これが存在すると後ほど更に切り換えをおこなう際、Aの入力ダイアログに「folderName.txt」の内容が自動的に反映されます。

※「folderName.txt」は誤って削除しても問題ありません。「GREP」フォルダ内に「folderName.txt」が存在しない場合、Aの入力ダイアログには「GREP_temp_yyyy_mm_dd」(「yyyy_mm_dd」は作業年月日)という名称が表示されます。

以下、動画をご覧ください。

【2019.4.8追記】GREPフォルダを変更したら検索/置換ダイアログを一度閉じてから開き直してください(開いたままだとプルダウンメニューにクエリが反映されないようです)。

最後に、繰り返しになりますが必ずバックアップをとった上でお試しください。
サンプルデータはこちら《minimum_2019_0403a.zip》です。
posted by 照山裕爾 at 03:14| Comment(0) | InDesign-書式・スタイル | このブログの読者になる | 更新情報をチェックする