レイヤーごとにファイルに書き出すPhotoshopには標準でレイヤーごとにファイルに書き出す機能があります。CS4以降ではファイル>スクリプト>レイヤーをファイルへ書き出し..を選択することでレイヤーごと保存されます。書き出す際にはPNGやPSDなどのフォーマットも選択することができます。それなら、今回のスクリプトはいらないのでは?と思う人がいるかもしれません。ところが標準のレイヤーごとの書き出しはサブフォルダがあると、そのフォルダも書き出されてしまいます。単純にレイヤーだけを書き出したいのにサブフォルダなどよけいなものも書き出されてしまうと困ります。Web上にはレイヤーごとに書き出すスクリプトもありますが、フラットな場合のみの書き出しだったりするため、複雑なレイヤー/レイヤーセットで構成されている場合、期待する結果になりません。いうことで、レイヤーだけを書き出すスクリプトが以下になります。スクリプトは2段階の処理を行っています。いうのも、レイヤーをチェックして、そのレイヤーだけを書き出すとうまくいかないためです。仕方ないのでレイヤーをフラットな状態にした後で、順番に書き出すという手間のかかることをしています。PhotoshopもIllustratorのように他のドキュメントにレイヤーをコピーする機能があればよいのですが。レイヤーを先頭に移動させる。artLayerの数を調べる。背景の場合は移動できないのでエラーになる。レイヤーを先頭に移動させる。複製したドキュメントを保存せず閉じるactiveDocument.close(SaveOptions.DONOTSAVECHANGES);})();[サンプルをダウンロード]。