(約 1,300文字の記事です。)
XnViewは無料の画像編集ソフト、ビューワーも兼ねる。これはキャンバスサイズの調整やキャンバスの背景(余白)塗りつぶしが便利。
今まではキャンバスの背景余白を白で塗りつぶしていたが、元が透明色を持つPNG画像の背景色を白以外のカラーに指定してみても反映されず真っ白。なぜ?
Ver.2.47での結果です。
更新履歴
2019/09/16 わかりにくい部分を加筆修正。最後におまけリンクも追加。
元画像がJpegなら問題ない
だが元画像が透明背景のPNGファイルだと、なぜか余白に指定したカラーが塗られずに透明のままキャンバスサイズだけがリサイズされる。要するにキャンバスサイズを拡大するように指定してその余白を埋める色を指定しても無視されて透明のまま。なぜ?
赤を指定しても透明色で塗られる……。
お手軽解決方法
Jpeg出力する(笑)これで万事解決。だが本質的ではない。
一時的な解決方法
これだ。解決方法はシンプル。
ツール>オプション
これにして画像を加工してPNG出力すると色が付く。
ただし、弊害として背景が透明PNGがXnView上では市松模様にならない。困る。なので出力後に元に戻す必要がある。面倒。
恒久的な解決方法
- 一時的な解決方法で「一括処理」のスクリプトに名前を付けて保存する。
- その後、再び元の設定に戻す
- スクリプトを呼び出して実行するとなぜかきちんと色つきPNGが出力される(追加した余白のみに色が付き、元々透明部分はそのまま透明)
一括処理のスクリプトの保存については、ブラウザ画面にてファイルを選択し、CTRL+Uを押すと出てくるウィンドウを観察して下さい。
この問題点は、スクリプトを呼び出した後に色を変更すると再びNG状態でPNGが出力されることだ。色を変えるならば最初の手順からやり直して別名でスクリプトを保存する必要がある。
一度、一時的な解決方法で色味を決定し、それが決まったらスクリプトを別名保存し、以後はそれを呼び出して使い回し、オプション設定そのものは元に戻す(透明を市松模様に表示させる)。これで快適。
スクリプトのファイル名とその当時のオプション設定がどこかに紐付いて保存されているらしい
スクリプトの中身にはオプション設定の保存がない。だがNGだったスクリプトファイルをリネームしてOKスクリプトファイルに変更して実行したらOKになった。どうやら本体側の現在のオプション設定とスクリプトファイル保存当時のオプション設定とは「個別に管理されている」らしい。そして保存当時の設定内容はスクリプトファイル名と紐付いているらしい。
ま、深く考えずに上記の恒久的な解決方法で回避すればいいと思う。スクリプトファイルの保存が肝ですね。
おまけ 透過PNGを拡縮してJpegにすると謎の枠線(筋)が付く場合の対処方法
今回の創作活動は約15分(累積 約684時間)
(154回目のブログ更新)
追記の創作活動は約30分(累積 約1015時間)
筆者はAmazonアソシエイト・プログラムに参加しています。(Amazon様の商品を宣伝することで紹介料をAmazon様から頂けるという大変ありがたい仕組みのこと。)
以下の商品名や画像アイコンをクリックしてからAmazon様で何かお買物をして頂ければそのご購入総額の1~2%が私に寄付されます。クリック後に別の商品のご購入でもOKです!誰が何を買ったかは私に通知されませんのでご安心下さい😊
また当サイトは楽天アフィリエイト、バリューコマース Yahoo!ショッピング アフィリエイト、および第三者配信の広告サービス(Googleアドセンス)を利用しています。