クリップボードからコピーした画像を保存しようとしていますが、アルファ チャネルが失われています。
Image clipboardImage = Clipboard.GetImage();
string imagePath = Path.GetTempFileName();
clipboardImage.Save(imagePath);
PhotoShop または IE/Firefox/Chrome から 32 ビット イメージをコピーして上記のコードを実行すると、出力のアルファ チャネルが失われ、代わりに黒い背景に対して保存されます。
画像は PNG として保存され、アルファ チャネルを含めることができます。
他のアプリケーション (PhotoShop など) に貼り付けてもアルファ チャネルが保持されるため、正しいデータがクリップボードにあるように見えます。
誰かが私を不幸から救ってくれますか?
前もって感謝します!
アップデート:
// outputs FALSE
Debug.WriteLine(Image.IsAlphaPixelFormat(Clipboard.GetImage().PixelFormat));
上記は、アルファ データがクリップボードから取り出されるとすぐに失われることを示唆しています。おそらく、他の方法でクリップボードから取り出す必要がありますか?