インデザインVBS文字間モード
管理者用インデザイン VBスクリプトにおける文字間の調整方法についてお話しします。
文字間モードの使い方については、つまずいて試行錯誤した経緯がありました。
参考にしていただければ幸いです。
さて、弊社では、宛名印刷をお受けしているのですが、社名や肩書の表記がカタカナ表記やアルファベットが良く見られます。
そして、文字数が非常に多いのです。
名前においても、カタカナ表記やアルファベット表記の方が多く、日本の国際化が進んでいる事がうかがわれます。
宛名レイアウトにおいては、一行に収めるために多くの事を行ってます。
文字間を詰める
フォントサイズを下げる
文字に長体/平体をかける
・・・・・・結構悩むところです。
文字間の調整については、トラッキング と ツメ の二つのプロパティーの値を変える事で容易に出来ます。
トラッキング 調整
VBスクリプトでのトラッキングの調整に記述例
1文字 = 1000 に相当するようです。
myTextFrame.ParentStory.Tracking = 100
DTPでの手作業では、次のダイアログで値を設定します。
ツメ 調整
VBスクリプトでのツメの調整 記述例
myTextFrame.ParentStory.Tsume = 50
DTPでの手作業では、次のダイアログで値を設定します
文字間モード
トラッキングと、ツメ の値によって、文字間のゆ調整が出来ますが、その前の設定として 文字間モード が有ります。
文字間モードには、
・オプティカル
・和文等幅
・メトリクス
・・・・・・の3種がありますが、実際にどのように違うのか見て見ます。
DTPでの手作業では、次のダイアログで値を設定します
縦書、横書、フォントの種類によっても変わってきます。
みなさんにおいては、どのようになるのか比べて見てください。
ここでは、モリサワの正楷書体で比べてます。
全角 漢字ひらがな
全角 カタカナ
全角 アルファベット
半角 アルファベット
どうですか、宛名印刷において、長い社名、肩書、名前などのカタカナ、アルファベット表記に対して、モード切替は有効と思いませんか。
文字間モード VBスクリプト
・文字間の設定の記述例
モード名を英語表記でテストしていたのですが、上手く行かず試行錯誤しました。
単純に、日本語表記の記述で問題は解決した経緯があります。
myDocument.Stories.Item(1).Characters.Item(1).KerningMethod = " オプティカル"
myDocument.Stories.Item(1).Characters.Item(2).KerningMethod = " 和文等幅"
myDocument.Stories.Item(1).Characters.Item(3).KerningMethod = " メトリクス"
・ 1行の指定例
myTextFrame.Paragraphs.Item(4).KerningMethod = " オプティカル"
・行~行 先頭行から最終行指定の例
テキストフレームに対して設定を行おうように色々試したのですが、残念ながらギブアップ。
そこで、1行から最後の行までの設定を記述して対応する事としました。
Set st = myTextFrame.ParentStory.Paragraphs.Item(1)
Set en = myTextFrame.ParentStory.Paragraphs.Item(-1)
myTextFrame.Texts.ItemByRange(st, en).Item(1).KerningMethod = " オプティカル"
以上