jsx

大量のテクスチャー画像を、超簡単にパターン登録する.jsx ( バッチ処理不使用

以前作ったjsxは ( Fireworksのテクスチャー画像等をPhotoshopのパターンに一括登録したい )

  1. .jsxをアクションに登録して
  2. [ファイル] – [自動処理] – [バッチ] から登録したアクションを指定

といった手順を踏む必要があったけれど今回のはバッチ処理なしでいけるはず、多分。
WindowsXPのCS3では大丈夫だった。

どういったモノ?

パターンに画像を、ファイル名で登録するだけ。
大量に登録したい時に威力を発揮するはず。

例えばこうゆう.patではないパターン画像を超簡単に一気に登録できる。
patterns: set no.7 by ~77words on deviantART

使い方

[ファイル] – [スクリプト] – [参照] から下からダウンロードしたjsxを選択する。
(xpの場合) C:\Program Files\Adobe\Adobe Photoshop CS3\プリセット\スクリプト の中に.jsxを入れておけば[ファイル] – [スクリプト] から使用できる。

ExtendScript Toolkitからも使える。

ダウンロード

続きを読む

ステージ枠と中央にガイドを引く.jsx

[js]var posArr=[0,50,100];//位置%
var dirArr=["Vrtc","Hrzn"];//向き

function guideWrap(direction,position){
var id1 = charIDToTypeID( "Mk " );
var desc1 = new ActionDescriptor();
var id2 = charIDToTypeID( "Nw " );
var desc2 = new ActionDescriptor();
var id3 = charIDToTypeID( "Pstn" );
var id4 = charIDToTypeID( "#Prc" );
desc2.putUnitDouble( id3, id4, position );
var id5 = charIDToTypeID( "Ornt" );
var id6 = charIDToTypeID( "Ornt" );
var id7 = charIDToTypeID( direction );
desc2.putEnumerated( id5, id6, id7 );
var id8 = charIDToTypeID( "Gd " );
desc1.putObject( id2, id8, desc2 );
executeAction(id1,desc1,DialogModes.NO);
}

for(var i=0;i<posArr.length;i++){
for(var j=0;j<dirArr.length;j++){
guideWrap(dirArr[j],posArr[i]);
}
}
[/js]
[追記 / 20100501] for文の中身を変更した。

カンバス枠にガイドを引く.jsxを使ったところ

使い方イメージ

上のソースを[適当な名前].jsxで保存。
program files以下のphotoshopフォルダにある\プリセット\スクリプト ( C:\Program Files\Adobe\Adobe Photoshop CS3\プリセット\スクリプト ) にぶち込むと[ファイル] – [スクリプト]から選べるようになるので便利。

[ファイル] – [スクリプト] – [参照(B)…]から[適当な名前].jsxを選んで使える。

ステージ枠にだけガイドを引くには

上の.jsxのままだとカンバスの中央にもガイドが引かれて邪魔かもしれない、真ん中のは必要ないよって場合は1行目の50を削除する。

  • ここを  var posArr=[0,50,100];
  • こうする var posArr=[0,100];

結構作ってる人がいる。

うちが作ってみた理由もこれと全く同じでした。
外枠にガイドを引くスクリプト | Dearps ~Adobe Photoshopに関するTipsや便利な裏技を紹介するサイトです~

カンバスのサイズに合わせたシェイプを描きたい場合等フォトショップはピクセルにスナップしてくれないので外枠にガイドをひく必要があります。

高機能、他のjsxもすばらしい。
Add Guides EX(1.0.0) – Adobe Photoshop

ダイアログボックスからガイドの位置・幅・間隔・数等を指定することによって、自動的に位置を計算してガイドを作成します。

さくさくと引ける。
flabaka – 複数のガイドを一度に引けちゃうJSX

x=50,x=100,x=150,x=200の計4本ガイドを引きたい場合、50,100,150,200と入力し、OKボタンを押します。

Fireworksのテクスチャー画像等をPhotoshopのパターンに一括登録したい。

[追記 / 20100523]
バッチ処理を使わないように改造したのを公開した。
大量のテクスチャー画像を、超簡単にパターン登録する.jsx ( バッチ処理不使用

photoshopで使っているパターン(テクスチャー)は、使いたい時に使いたい物を自作して即登録しているので今まで気にもしませんでしたが、
例えばCOLOURlovers :: パターンFtg – Fireworks texture galleryのような素敵サイトから感謝の念をこめてダウンロードしたpng形式のテクスチャー画像を「これちょっとphotoshopでも使いたいのぅ」なんて思ったら
1ファイル1ファイルphotoshopで開いて[編集] – [パターンを定義]しなきゃ駄目なんですね。
プリセットマネージャーへドラッグアンドドロップすれば登録できるんだと思ってた。

1個2個ならいいけど300回繰り返すとなるとなると半端なく面倒臭い。
面倒臭いとモチベーションダウンに繋がるしで良くない。
ほいではどうしたら面倒臭くなくなるか?を考えるわけです。醍醐味です。

続きを読む

.jsx(アクションより融通が利くであろうスクリプト)作成メモ / Photoshop CS3

まず何をどうするのか?それすらわからない。

ガイドに目を通す。
Program Files\Adobe\Adobe Photoshop CS3\以下あたりにあるフォルダ

  • スクリプティングガイド\Photoshop CS3 Scripting Guide-J.pdf / 日本語
  • スクリプティングガイド\Photoshop CS3 JavaScript Ref.pdf / 英語

肝心な方が英語><

Fireworksの「手順をコマンドとして保存」のような機能を追加。

win
スクリプティングガイド\ユーティリティ\ScriptListener.8li
プラグイン\自動処理に複製

mac(cs5.1の場合) / 追記
アプリケーション内の
Scripting/Utilities/ScriptingListener.plugin
Plug-ins/Automateにコピー

デスクトップにScriptingListenerJS.logが作成される。。

[追記 / 20100428]
ほっといたら.logファイルの容量がすごいことになってた。
定期的に削除するか、.logが必要無いときはScriptListener.8liを削除したほうがいいかも。

ScriptingListenerJS.logのプロパティ

保存場所

プリセット\スクリプト内に置けば[ファイル] – [スクリプト]に表示される(と思う)

参考にさせていただきました。

そらかぜ工場 Photoshop Scripting 覚書き

Adobe Photoshop CS3自動化作戦

スクリプト内に日本語を含む場合にはUTF-8 (Unicode)の文字コード (できればBOM (Byte Order Mark)付き)にする必要があります。