質問: Image.open("./test.psd") psd.show() ``` ### 画像 元画像 ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/eac87a3f98b461bb42011b88426187fe.png) アルファチャンネル無し ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/3e8b68230bf3a896cab9f6b25df65946.png) アルファチャンネル有り ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/65bfc4553ea46f7bb91d730c10f6de13.png) 追記 --- ご回答いただきありがとうございます。 元画像はPhotoshop上では背景は塗りつぶされており、チャンネルとしてRGBの他にアルファチャンネルを1つ持っている状態です。 回答で頂いたサンプルのpsdデータをこちらも落としてみましたが、それは背景が透明でした。 (元データpsd構造) ![![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/73b6ec3c1b08f9166c083f720a52ccc9.png)](714cc0093bcd5a3f7611d2a9185f8881.png) psd-toolsを使用すれば確かにチャンネルのずれは起こらないのですが 背景が透明ではない場合だとアルファチャンネルが無くなってしまいます。 背景色が透明であれば保存し直した時もアルファチャンネルを保持したままであることが判明しました。 (背景を黒で塗りつぶし、tgaに保存し直した画像) ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/490f38dcecc8d6c7a404dcbe19d481af.png) (背景を透明にし、tgaに保存し直した画像) ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/ec1c1c3626438a673682b8c25684e4fe.png) 扱っているデータは基本的に背景を透過させていないので なんとか背景色を塗りつぶしたまま、アルファチャンネルを保持して保存し直せないものでしょうか・・・
回答: PILやpsd-toolsで色々調べながら試してみましたがどうもうまくいかないので NVIDIA Texture Toolsにパスを渡し、変換することで解決できました。 チャンネルが無くなったりズレたりする事の解明にはいたらず、ややモヤっとしますが やりたいことは出来ているのでこの件はこれで終了します。 アドバイスいただき本当にありがとうございました!