最後の旅を始めよう

-黒の英雄譚・零-

僕はただPhotoshopスクリプトでファイル名を書き込みたいだけなのに…

2020年02月26日 | ツレズレ日記
単純に、psdファイルの名前を画像データの中に書き込んで
画像を見ただけで、それがどのファイルか解る様にしたいだけなのですが
数量があると、全てに対してその処理を行うのは高タスクになる上、
名前を間違える等のヒューマンエラーも起きそうでしたので、
これはもうスクリプトに頼るしかないなと書くことにしました。

最近のPhotoshopはスクリプトも使えて便利ですね。
アクションではファイル名を取得するとか出来ませんからねぇ…

そう思って始めたものの、
予想以上にフォトショスクリプトの壁に阻まれ苦労してしまいました。

JavaScriptは、初見ですし、
リファレンスは英語しか見つからず、
ログ機能は、目が滑る結果しか吐かない…

そんな悪条件が重なり死ぬかと思いました。。。
Mayaはスクリプトを書く環境だけは整っていて良いですね。。。

念の為、成果物をメモ程度に載せておきます。

――――――――――――――――――――――――――――――
//『ファイル名記入ツール』

//ファイル名(ドキュメント名)を取得
var oDocName = app.activeDocument.name;

//テキストレイヤー作成
var oTextLayerf = activeDocument.artLayers.add();
oTextLayerf.kind = LayerKind.TEXT;

//テキストを入力(ドキュメント名から".psd"を除いたもの)
oTextLayerf.textItem.contents = oDocName.replace( ".psd","" );
//文字サイズ変更
oTextLayerf.textItem.size = 10;
//文字フォント変更
oTextLayerf.textItem.font = "Meiryo-Bold";
//文字行揃え右
oTextLayerf.textItem.justification = Justification.RIGHT;
//カラー変数に描画色を入力(16進数値記入の方法が見つからなかった…)
var oTextColor = new SolidColor;
oTextColor.rgb.red = 83;
oTextColor.rgb.green = 83;
oTextColor.rgb.blue = 83;
//文字色の変更
oTextLayerf.textItem.color = oTextColor;

//描画位置設定(画像サイズを取得して右下にくる様にする)
var oWidth = app.activeDocument.width;
var oHeight = app.activeDocument.height;
oTextLayerf.textItem.position = Array( oWidth - 2, oHeight - 4 );
//※なお、単位がpixelで無いと意図した位置に来ません。
――――――――――――――――――――――――――――――

それと参考にさせて頂いたサイトさんです。
http://www.openspc2.org/book/PhotoshopCS/
http://pic.phaku.net/?eid=24
https://blog.goo.ne.jp/m4g/e/bf02ab652842bcebae2f1e0af3b75741
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする