ファイル内容を読み込み配置する

■プログラム説明(ソースコード説明)
 Fileオブジェクトでai_textフォルダ内にあるheadline.txtファイルを指定しファイルオブジェクトを作成します。open()を使って読み込みモードで開きます。ファイルを開くことができた場合はopen()の戻り値がtrueになるのでifで判断してtrueの場合のみ処理を行います。テキストを読み込むためテキストオブジェクトを作成します。textArtItemsオブジェクトにadd()を使い追加します。作成されたテキストオブジェクトのcontentsプロパティに文字を入れることでドキュメント上に文字が表示されます。文字サイズなど細かい調整を行いたい場合はTextRangeオブジェクトを作成して処理を行います。

■ソースコード
fileObj = new File("/ai_text/headline.txt");
flag = fileObj.open ("r","","");
if (flag)
{
textObj = activeDocument.textFrames.add();
textObj.contents = fileObj.read();
}


■使い方
1:テキストを読み込み配置するドキュメントをアクティブ(最前面にする)にします。
2:ファイルメニューからスクリプトを実行します。
3:テキストが配置されます。


■ポイント
 作成したテキストに指定できるプロパティはたくさんありますが、主に以下のものが指定できます。

contents 内容(テキスト)
height 縦幅(ポイント値)
width 横幅(ポイント値)
left X座標(ポイント値)
top Y座標(ポイント値)
opacity 不透明度(0〜100)
position XY座標(配列で指定)
kind 種類(以下の値。指定しても無効)
エリアテキスト TextType.AREATEXT
パステキスト TextType.PATHTEXT
ポイントテキスト TextType.POINTTEXT

 エリアテキストとして読み込み縦書きで配置するには以下のようになります。

fileObj = new File("/ai_text/sample.txt");
flag = fileObj.open ("r","","");
if (flag)
{
textObj = activeDocument.textFrames.add();
areaSize = activeDocument.pathItems.rectangle(170,0,200,150);
textObj = activeDocument.textFrames.areaText(areaSize);
textObj.contents = fileObj.read();
textObj.orientation = TextOrientation.VERTICAL;
fileObj.close();
}

 パステキストして配置しパス上にテキストを表示するには以下のようになります。

fileObj = new File("/ai_text/sample.txt");
flag = fileObj.open ("r","","");
if (flag)
{
tPath = activeDocument.pathItems.add();
tPath.setEntirePath([[0,0],[700,300]]);
textObj = activeDocument.textFrames.pathText(tPath);
textObj.contents = fileObj.read();
fileObj.close();
}

■実際のスクリプトをダウンロード(sample.js.zip)