インデザインスクリプト
2016/01/15
8.インデザインスクリプト 初級講座(4)テキスト操作
管理者用インデザインスクリプト 初級講座(4)では、テキストフレームに記述したテキストの操作を実施します。
起動してみまよう。
まず、テキストフレームに、4行の住所データを流し込みました。
続けます。
フォントを指定する
'フォントを指定する
font_mei = "MS ゴシック"
font_W = "Regular"
myTextFrame.ParentStory.AppliedFont = font_mei
myTextFrame.ParentStory.FontStyle = font_W
実行後、インデザインのテキストフレームを選択すると、文字の設定タブで確認できます。
文字の設定タブで、文字フォントが[MSゴシック] なっていることを確認してください。
フォントサイズを指定する
'フォントサイズ指定する
font_P = 20
myTextFrame.ParentStory.PointSize = CStr(font_P)
フォントサイズが大きくなっていることを確認して!
文字タブでもフォントサイズを確認して!
行間を指定する
'行間を指定する。
myTextFrame.ParentStory.Leading = font_P * 2 '行送りの設定
行間を フォントサイズを2倍にしたので、40ptと変わりました。
文字間を変える
'文字間を変える
myTextFrame.ParentStory.Tracking = 100
文字間が、100変更されています。
平体を設定する
'長体/平体 を×
myTextFrame.ParentStory.HorizontalScale = 120
文字幅が、120%に変更されました。
長体を設定する
'長体/平体 を×
myTextFrame.ParentStory.VerticalScale = 150
文字の高さが、150% に変更されました。
参考スクリプトのリストの全文です。
Option Explicit
Private Sub CommandButton1_Click()
Dim myInDesign, myDocument, myTextFrame
Dim haichi_1_YS, haichi_1_XS, haichi_1_YE, haichi_1_XE
Dim filde_jyusyo1, filde_jyusyo2, filde_jyusyo3, filde_jyusyo4
Dim Me_size_GH, Me_size_GY
Dim dir_mei, INDD_name
Dim mov_XS, mov_YS
Dim font_mei, font_W, font_P
Rem この行は、コメント行です。 先頭に Rem を記入してコメント行とします。
' 'は、この後ろの記述がコメントとなります。 行の記述途中から後ろをコメントとします。
Rem 次の行は、インデザインを起動します。
'Set myInDesign = CreateObject("InDesign.Application.CS4_J") 'インデザインを起動する
Set myInDesign = CreateObject("InDesign.Application.CC_J") 'インデザインを起動する
Rem キュメントを開きます!"
'dir_mei = "M:\NAVI_VBA"
dir_mei = "I:\自動化\サンプル"
INDD_name = dir_mei & "\テストサンプル.indd"
Set myDocument = myInDesign.Open(INDD_name)
Set myTextFrame = myDocument.TextFrames.Add
Rem テキストフレームサイズを設定
haichi_1_YS = 100
haichi_1_XS = 20
haichi_1_YE = 200
haichi_1_XE = 180
myTextFrame.GeometricBounds = Array(CStr(haichi_1_YS) + "mm", CStr(haichi_1_XS) + "mm", CStr(haichi_1_YE) + "mm", CStr(haichi_1_XE) + "mm")
Rem テキストフレームに文字を書き込む。
filde_jyusyo1 = "岩手県盛岡市山田6-7-8"
filde_jyusyo2 = filde_jyusyo1 & vbCr & "電 話03ー3785ー4402"
filde_jyusyo3 = filde_jyusyo2 & vbCr & "FAX03ー3785ー4401" & vbCr & "E-mail:info@sanei-rint.co.jp"
filde_jyusyo4 = filde_jyusyo3 & vbCr & "http:www.sanei-print.co.jp"
myTextFrame.Contents = filde_jyusyo4 'テキストフレームに住所データを書き込む
MsgBox "フォントを指定する"
'フォントを指定する
font_mei = "MS ゴシック"
font_W = "Regular"
myTextFrame.ParentStory.AppliedFont = font_mei
myTextFrame.ParentStory.FontStyle = font_W
MsgBox "フォントサイズ指定する"
'フォントサイズ指定する
font_P = 20
myTextFrame.ParentStory.PointSize = CStr(font_P)
MsgBox "行間を指定する。"
'行間を指定する。
myTextFrame.ParentStory.Leading = font_P * 2 '行送りの設定
MsgBox "文字間を指定する。"
'文字間を変える
myTextFrame.ParentStory.Tracking = 100
'myTextFrame.ParentStory.Characters.Item(2).Tracking = 1000
MsgBox "平体"
'長体/平体 を×
myTextFrame.ParentStory.HorizontalScale = 120
MsgBox "長体"
myTextFrame.ParentStory.VerticalScale = 150