今回で最後になる予定です
⑩pngで出力
やりたいことは明快です。
「Save as…」で指定パスにpngで保存→ついでにpsdも保存。
activeDocument.layerSets.add();で追加したレイヤーグループを
for(i=0; i
app.activeDocument.layerSets[i];
}
とでもしてグループごとに(人ごとに)処理していきます
グループごとにpngに書き出したいので
一番下のグループから一つづつ表示して順次出力していきます。
for(i=0; i
for(j=0; j<layerSetArr.length; j++){
app.activeDocument.layerSets[j].visible = false;
}
app.activeDocument.layerSets[i].visible = true;
}
一旦全てのグループを非表示にしてからi番目のグループを表示します。
saveAs(saveIn[, options][, asCopy][, extensionType]) でセーブしていきます。
pngFilePath = new File(folderPath+"/"+app.activeDocument.layerSets[i].name+".png");
pngOpt = new PNGSaveOptions();
pngOpt.interlaced = false;
activeDocument.saveAs(pngFilePath, pngOpt, true, Extension.LOWERCASE);
パス”指定したフォルダ名/現在ドキュメント名/表示されているグループ名.png”、
インターレースなし、
コピー、
小文字(?)(他がUPPERCASEとNONEだったので…)
で保存。
あとはついでのpsd保存。
パス”指定したフォルダ名/現在ドキュメント名.psd”、
レイヤー残す、
コピーじゃない、
小文字(?)
で保存。
psdFilePath = new File(folderPath+".psd");
psdOpt = new PhotoshopSaveOptions();
psdOpt.layers = true;
activeDocument.saveAs(psdFilePath, psdOpt, false, Extension.LOWERCASE);
…できました
欲しかった全ての機能を実現できました(印刷以外は)
年賀状を送る時期を過ぎてから始めましたが、なんとか年内に完成しました。
とりあえず置いておきますが、JavaScript初めてなので色々許してください
おきまりの文句ですがこのファイルを使って生じたいかなる損失に対しても私は一切の責任を負いませんよ
とりあえず使い方を書かねば…
来年まで自分も覚えている自信がありません(^^;;