レイヤー画像をファイルとして書き出す際、書き出し先のフォルダに同名のファイルが存在する場合があります。
そのファイルは以前同じようにして書き出されたファイルかもしれませんし、名前が同じだけでまったく別の用途のファイルかもしれません。ひょっとしたら上書きしてはいけないファイルなのかもしれません。
また、書き出し後、PSDドキュメントの内容を変更して再度の書き出しをしてはみたものの、あまり気に入らなかったので以前に書き出した画像を復帰させたいと思われる事もあるでしょう。
そこで本スクリプトでは書き出し時に同名ファイルが存在する場合、設定を反映した対応をして、大事なファイルを誤って消してしまわないようフォローします。
書き出し時に既に同名ファイルが存在する場合、確認ダイアログを表示してその都度判断を仰ぎます。
ファイルがPNGの場合は、画像のサンプルがダイアログ中に表示されます。
確認ダイアログ:
![]()
【すべて上書き】を選んだ場合、その後は一切確認処理を行わずに同名ファイルを強制的に上書きします。
【キャンセル】を選んだ場合、一連の書き出し処理そのものを中止します。
書き出し時に既に同名ファイルが存在する場合、特別な処理を行わずに、強制的に上書きします。
上記の確認ダイアログで【すべて上書き】を選んだときと同じ効果です。
書き出し時に同名の画像ファイルがある場合、「古いファイルを自動的にバックアップフォルダに移動する」の設定が有効になっていると、指定されたフォルダの中に自動的にバックアップフォルダが生成され、古い画像ファイルがそちらに退避されます。
バックアップフォルダは「Backup[*]」という名前になり、「*」部分には対応するPSDドキュメント名が入ります。※1
「サンプル.psd」のバックアップフォルダ
"C:¥Example¥Backup[サンプル]"
![]()
バックアップフォルダに移動されるのは、更新時に書き出されるものと同名のファイルのみです。毎回すべての(書き出し先フォルダ内)ファイルがバックアップされるわけではありません。
また、「バックアップフォルダの末尾に書き出しカウントを付ける」設定が有効になっている場合、上記のフォルダ名の最後に「#??」(「??」部分には現在の書き出し回数を表す数字が入ります)と付き、その都度新しいフォルダが作られます。
「サンプル.psd」のバックアップフォルダ
"C:¥Example¥Backup[サンプル]#01~#03"
![]()
書き出しカウントは「切り抜き形式>座標リスト」にも付記されていますので、こちらと併用されますと効果的な更新管理が実現するかと思われます。
書き出し処理を実行する度に、同じPSDドキュメントに対して何度書き出しが実行されたかという回数が、設定ファイルに保存されます。
「設定を保存する」が無効になっている場合、カウンタは作動しません。
書き出しカウントは、上記のバックアップフォルダ名や座標リスト内データに反映するためのもので、更新の世代を明確にするのが目的です。
「現在の書き出しカウント」には今回のカウントが表示されています。また、このエディットボックスに直接入力する事で、カウンタの値を変更する事もできます。
「最小桁数」の設定を行うと、書き出しカウントが表示される際の桁数をコントロールできます。数値がこの最小桁数以下の場合、足りない桁は「0」で埋められます。
書き出しカウントの上限は8桁です。それ以上はカウントが進みませんので、ご注意下さい。