Photoshopのjavascript

2011/08/02

実はPhotoshopでJavaScriptが使えるのはご存じだろうか?

独自の関数がいっぱいだけど、文法は普通にJavascriptだ。

ファイル – スクリプト からjsファイルを指定できる。

回転とか

activeDocument.rotateCanvas(90);

こんなだし、横幅320ピクセルに縮小処理なら

//縮小処理
var idImgS = charIDToTypeID( “ImgS” );
var desc3 = new ActionDescriptor();
var idWdth = charIDToTypeID( “Wdth” );
var idPxl = charIDToTypeID( “#Pxl” );
desc3.putUnitDouble( idWdth, idPxl, 320.000000 );
var idscaleStyles = stringIDToTypeID( “scaleStyles” );
desc3.putBoolean( idscaleStyles, true );
var idCnsP = charIDToTypeID( “CnsP” );
desc3.putBoolean( idCnsP, true );
var idIntr = charIDToTypeID( “Intr” );
var idIntp = charIDToTypeID( “Intp” );
var idBcbc = charIDToTypeID( “Bcbc” );
desc3.putEnumerated( idIntr, idIntp, idBcbc );
executeAction( idImgS, desc3, DialogModes.NO );

のような感じだし、Web保存するなら

var doc = app.activeDocument;

dName = “C:\abc\def\tmp.jpg”;

//Web用に保存用の設定をする
var exp = new ExportOptionsSaveForWeb();

//画像の形式
//COMPUSERVEGIF, JPEG, PNG-8, PNG-24, BMP の指定が可能
exp.format = SaveDocumentType.JPEG;

//インターレースにするか(プログレッシブJPGにするか)
exp.interlaced = true;

//最適化するか
exp.optimized= true;

//画質(0~100 デフォルトは60 大きいほど高品質)
exp.quality = 70;

//エクスポート実行
var imgfile = new File(outPath + “/” + dName);
doc.exportDocument(imgfile, ExportType.SAVEFORWEB, exp);

な感じ