
preferences.rulerUnits = Units.PIXELS;
colObj = new SolidColor();
colObj.rgb.red = 0; // 赤の輝度
colObj.rgb.green = 0; // 緑の輝度
colObj.rgb.blue = 128; // 青の輝度
offsetX = 20; // 右側からの位置(20 pixel)
offsetY = 10; // 下側からの位置(10 pixel)
fontName = "HiraMaruPro-W4"; // ヒラギノ丸ゴ Pro W4
textAlign = Justification.RIGHT; // 右揃え
fontSize = 16;
psdFolderObj = Folder.selectDialog("PSDファイルがあるフォルダを選択してください");
if (psdFolderObj)
{
psdFileList = psdFolderObj.getFiles("*.psd");
for (i=0; i< psdFileList.length; i++) {
open(new File(psdFileList[i]));
txt = psdFileList[i].name;
docObj = activeDocument;
w = docObj.width.value;
h = docObj.height.value;
layObj = docObj.artLayers.add();
layObj.kind = LayerKind.TEXT;
layObj.textItem.contents = txt;
layObj.textItem.font = fontName;
layObj.textItem.size = fontSize;
layObj.textItem.justification = textAlign;
layObj.textItem.color = colObj;
x2 = parseFloat(layObj.bounds[2]);
y2 = parseFloat(layObj.bounds[3]);
layObj.translate(w-offsetX-x2, h-offsetY-y2);
activeDocument.close(SaveOptions.SAVECHANGES);
}
}
ファイル名でなくファイルパスを入れたい場合には
txt = psdFileList[i].name;
を
txt = psdFileList[i].fsName;
に変更します。また、表示位置を変更するには以下の2行の値を設定します。
offsetX = 20; // 右側からの位置(20 pixel)
offsetY = 10; // 下側からの位置(10 pixel)
サンプルではピクセル単位になっていますが、35mmなどミリメートルで指定したい場合には最初の行の
preferences.rulerUnits = Units.PIXELS;
を
preferences.rulerUnits = Units.MM;
にします。これで右から30mm、下から2.6mmの位置に表示する、といったことが可能になります。
【古籏一浩】openspc@po.shiojiri.ne.jp
< http://www.openspc2.org/
>
メールいただいて、こういう需要もあるのだなあ、と。InDesignではページ上に画像カタログを生成するというのは割とあったりするのですが。
毎日コミュニケーションズから「source&script」が出ます。最後の方のAPI部分書いてますので、こちらもよろしく。


colObj = new SolidColor();
colObj.rgb.red = 0; // 赤の輝度
colObj.rgb.green = 0; // 緑の輝度
colObj.rgb.blue = 128; // 青の輝度
offsetX = 20; // 右側からの位置(20 pixel)
offsetY = 10; // 下側からの位置(10 pixel)
fontName = "HiraMaruPro-W4"; // ヒラギノ丸ゴ Pro W4
textAlign = Justification.RIGHT; // 右揃え
fontSize = 16;
psdFolderObj = Folder.selectDialog("PSDファイルがあるフォルダを選択してください");
if (psdFolderObj)
{
psdFileList = psdFolderObj.getFiles("*.psd");
for (i=0; i< psdFileList.length; i++) {
open(new File(psdFileList[i]));
txt = psdFileList[i].name;
docObj = activeDocument;
w = docObj.width.value;
h = docObj.height.value;
layObj = docObj.artLayers.add();
layObj.kind = LayerKind.TEXT;
layObj.textItem.contents = txt;
layObj.textItem.font = fontName;
layObj.textItem.size = fontSize;
layObj.textItem.justification = textAlign;
layObj.textItem.color = colObj;
x2 = parseFloat(layObj.bounds[2]);
y2 = parseFloat(layObj.bounds[3]);
layObj.translate(w-offsetX-x2, h-offsetY-y2);
activeDocument.close(SaveOptions.SAVECHANGES);
}
}
ファイル名でなくファイルパスを入れたい場合には
txt = psdFileList[i].name;
を
txt = psdFileList[i].fsName;
に変更します。また、表示位置を変更するには以下の2行の値を設定します。
offsetX = 20; // 右側からの位置(20 pixel)
offsetY = 10; // 下側からの位置(10 pixel)
サンプルではピクセル単位になっていますが、35mmなどミリメートルで指定したい場合には最初の行の
preferences.rulerUnits = Units.PIXELS;
を
preferences.rulerUnits = Units.MM;
にします。これで右から30mm、下から2.6mmの位置に表示する、といったことが可能になります。
【古籏一浩】openspc@po.shiojiri.ne.jp
< http://www.openspc2.org/
>
メールいただいて、こういう需要もあるのだなあ、と。InDesignではページ上に画像カタログを生成するというのは割とあったりするのですが。
毎日コミュニケーションズから「source&script」が出ます。最後の方のAPI部分書いてますので、こちらもよろしく。

- Webクリエイティブのためのプログラミングマガジン Source &Script
- 毎日コミュニケーションズ 2006-10

- 改訂第4版 JavaScript ポケットリファレンス
- 古籏 一浩
- 技術評論社 2006-10-18