とあるDTPオペレーターのInDesignスクリプト備忘録

デザイナー上がりですがいまはDTP命。InDesign用スクリプトの解説などを綴っています。読者登録して戴けると励みになります。

[InDesignスクリプト]基本的な文字設定

テキストフレーム内の文字列に対する操作をまとめてみました。

var myDoc = app.activeDocument; //アクティブなドキュメントが対象
var myTF = myDoc.textFrames[0]; //アクティブドキュメントのテキストフレーム[1個目]が対象

/////テキストフレームの『何』を対象にするか//////////
    myTF.characters[0]; //テキストフレーム内の文字[1文字目]が対象
    myTF.paragraphs[0]; //テキストフレーム内の段落[1段落目]が対象
    myTF.contents; //テキストフレーム内の内容が対象
    myTF.parentStory; //テキストフレーム内のストーリーが対象

/////上のストーリーを変数に入れてみましょう//////////
var myStory = myTF.parentStory; //テキストフレーム内のストーリーが対象

/////以下、変数myStory内のテキストを対象に設定//////////
    myStory.appliedFont = "小塚ゴシック Pro	B"; //フォントを指定
    myStory.strokeWeight = "1 mm"; //文字の線幅を指定
    myStory.endJoin = EndJoin.ROUND_END_JOIN; //線のラウンド結合
    myStory.strokeColor = "C=100 M=0 Y=0 K=0"; //文字の線カラー
    myStory.fillColor = "Paper"; //文字の塗りカラー
    myStory.pointSize = "16Q"; //文字のサイズ
    myStory.horizontalScale = 70; //文字の長体率
    myStory.verticalScale = 50; //文字の平体率
    myStory.baselineShift = 5; //ベースラインシフト
    
/////同じ変数が何度も出てくるときにはこんな書き方も//////////
    with (myStory) {
        appliedFont = "小塚ゴシック Pro	B"; //フォントを指定
        strokeWeight = "1 mm"; //文字の線幅を指定
        endJoin = EndJoin.ROUND_END_JOIN; //線のラウンド結合
        strokeColor = "C=100 M=0 Y=0 K=0"; //文字の線カラー
        fillColor = "Paper"; //文字の塗りカラー
        pointSize = "16Q"; //文字のサイズ
        horizontalScale = 70; //文字の長体率
        verticalScale = 50; //文字の平体率
        baselineShift = 5; //ベースラインシフト
        }