C#WPF将具有透明性的PNG复制到剪贴板

时间:2018-07-09 13:38:43

标签: c# wpf

我有argb位图。我想复制到剪贴板。 为什么我的代码不起作用?

var enc = new PngBitmapEncoder();
using (var ms = new MemoryStream())
{
     enc.Frames.Add(BitmapFrame.Create((BitmapSource)Img.Source));
     enc.Save(ms);
     BitmapImage bi = new BitmapImage();
     bi.BeginInit();
     bi.StreamSource = ms;
     bi.EndInit();
     Clipboard.SetImage(bi);
}

1 个答案:

答案 0 :(得分:-1)

默认情况下,Windows剪贴板不支持透明,但是您可以将剪贴板上的内容以多种类型放在一起,以确保大多数应用程序在其中找到可以使用的某种类型。通常,如果除了正常的非透明剪贴板位图格式之外,还以PNG和DIB格式将图像放置在剪贴板上,则大多数应用程序将能够至少使用其中之一来获取其支持的格式的图像。透明。

已经有一个答案:Copying From and To Clipboard loses image transparency

相关问题