DTP作業者にとっての難易度 ★★☆☆☆(2)
私の仕事では、サイズの異なる文字が混在する文字列に対して下線を引くことが時々あります(括弧書き部分を小さくするケースなど)。下線位置のコントロールについては大石さんが「なんでやねんDTP」(https://works014.hatenablog.com/entry/20101115)で詳しく説明されていますが、文字サイズがバラバラだったり拡大縮小されていたり、あるいはベースラインシフトされていたりすると計算はなかなか面倒なことになります。そこで今回は、これを処理するスクリプトを書いてみました。
使い方は難しくありません・
・対象となる文字列を選択してスクリプトを実行
・基準文字(下線位置の基準とする文字)を選択
・下線の太さおよび基準文字(の仮想ボディ下端)からの距離を設定して実行
という流れです。
ただし本スクリプトを使用するには、書式設定についていくつか条件があります。
【条件】
@「文字の比率を基準に行の高さを調整」はオフ
→オンでは文字揃えの設定が文字位置に反映されないケースがあります。A想定標準文字(その文字列の標準的な文字。本文文字)より大きい文字を使う場合は%で指定(級数は想定標準文字を超えない)
→級数指定すると(上記@を設定しても)行内の最大文字に文字位置が引っ張られてしまいます。B想定標準文字より小さい文字を使う場合も%による指定を推奨(※)
C想定標準文字より小さい文字を級数で指定する場合、上下位置はベースラインシフトによる指定を推奨(※)
D文字揃えは「仮想ボディの上/右」「仮想ボディの中央」「仮想ボディの下/左」に限る
→その他の文字揃えは本スクリプトでは対応していません。E下線の種類、カラーなどについては下線設定ダイアログでおこなう
→スクリプトが複雑になってしまうので下線設定ダイアログに頼ることにしました。F上付き・下付きは使用しない
→本スクリプトでは対応していません。小さい文字が必要な場合は縮小して文字揃えやベースラインシフトにより位置調整をおこなってください。※InDesignドキュメントを編集するスクリプトです。必ずバックアップをとってからお試しください。
サンプルデータはこちら《minimum_ul_240407a.zip》です。