見出し画像

InDesign 「数値指定で表全体のサイズを変更できる」 スクリプト

昔、InDesignが日本で発売される前に、WindowsでUrban Pressというレイアウトソフトを使っていたのですが、そのソフトには表全体のサイズを数値で変更できる機能がありました。今回は、その機能をInDesignのスクリプトで再現してみました。

◆ DTP用のスクリプトなので、環境設定の単位が 「mm」 「pt」 「歯」 以外では動作しません

このスクリプトが動作する前提として、InDesignのメニュー→「編集」→「環境設定」→「単位と増減値」→「定規の単位」の「水平方向」と「垂直方向」が「ミリメートル」か「ポイント」か「歯」になっている必要があります。
さらに、「水平方向」と「垂直方向」が同じ単位になっていないと動作しません。つまり「水平方向:ミリメートル、垂直方向:ミリメートル」、「水平方向:ポイント、垂直方向:ポイント」、「水平方向:歯、垂直方向:歯」のいずれかの場合のみ、このスクリプトが実行できます。

◆ スクリプトの実行方法

文字ツールで、サイズを変更したい表の全セルを選択(表全体が黒く反転表示されます)してからスクリプトを実行します(このとき、表の全セルが選択されていないと、警告が表示されてスクリプトは実行できません)。その後、ダイアログが表示されるので、希望のサイズを半角数字で入力して、最後に「OK」をクリックしてください。
なお、半角数字の箇所は「+」(プラス)、「-」(マイナス)、「*」(掛ける)、「/」(割る)の半角の四則演算子も入力できるので、「79*0.5」のような入力も可能です(「79の50%」という意味)

◆ 「横幅と高さの比を固定する」オプションについて

このオプションにチェックを入れると、表全体が等倍で拡大縮小されます。表全体のデザインを変えないでサイズを変更したい場合に便利です。

◆ パーセント指定で拡大縮小したい場合は

ダイアログの「拡大縮小率」の空欄に、希望のパーセントを半角数字で入力してください。なお、この欄に数字が入力されて「OK」がクリックされた場合、「横幅」と「高さ」の欄に入力されている数値は無視されて、表はパーセントの欄の数値が優先されて拡大縮小されます。
ですので、もし「横幅」と「高さ」で表のサイズを変更したい場合は、この「拡大縮小率」の欄に入っている数値を全部削除して空欄の状態にして、「横幅」と「高さ」の欄にのみ数値が入っている状態にしてから「OK」をクリックしてください。そうしないと「横幅」と「高さ」の指定では表のサイズを変更できません。

◆ 現在の表サイズを調べるのにも使えます

表を選択してスクリプトを実行した際に表示されるダイアログの「元の表サイズ」が、現在の表の「横幅」と「高さ」です。
現在の表サイズが知りたいだけでしたら、この後「cancel」ボタンをクリックしてスクリプトを終了させてください。

◆ 表パネルの「行の高さ」が「最小限度」になっていると、表が縮小される場合は高さが正しく変更されません(等倍縮小の場合も高さが正しく変更されません)

これは不具合では無くて、InDesignがそういう仕様になっているためです。「指定値を使用」ではなくて「最小限度」を選ぶと、セル内の文字が見える最小限度の高さ以下にはセルを縮小できません。そのため、文字が隠れてしまうようなセルの高さがスクリプトで指定された場合、高さは正しく縮小されません(逆に拡大の場合は、どのような高さでも正しく拡大されます)。一方、横幅(列幅)は「指定値を使用」や「最小限度」の設定項目が無いので、スクリプトで自由に拡大縮小ができます。

◆ InDesign CS4以降で、スクリプトの動作を確認済みです

InDesign 2024で書き出せる最も古いデータがCS4用なので、InDesign 2024で表を作成してCS4用に書き出し、InDesign CS4でスクリプトの動作確認をしたところ正常に動作しました。それより古いInDesignでは動作を保証できません…

◆ ダウンロードはこちらから

ここから先は

0字 / 1ファイル

¥ 500

この記事が気に入ったらサポートをしてみませんか?