Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将.Gif图像从剪贴板放入PictureBox_C#_.net_Clipboard_Gif - Fatal编程技术网

C# 将.Gif图像从剪贴板放入PictureBox

C# 将.Gif图像从剪贴板放入PictureBox,c#,.net,clipboard,gif,C#,.net,Clipboard,Gif,我想从浏览器复制gif图像并粘贴到PictureBox Image cImage = Clipboard.GetImage(); pictureBox1.Image = (Image)cImage; 这会放置图像,但不会设置动画。剪贴板上的图像不是GIF,而是位图或DIB(或两者兼而有之)。如果您使用旧的XP剪贴板查看器(clipbrd.exe),或者在程序中枚举可用的剪贴板格式,您将看到这些格式。 请参见标准剪贴板格式列表: GIF不是其中之一。 此外,没有JPG或PNG。复制这些图像时

我想从浏览器复制gif图像并粘贴到PictureBox

 Image cImage = Clipboard.GetImage();
 pictureBox1.Image = (Image)cImage;

这会放置图像,但不会设置动画。

剪贴板上的图像不是GIF,而是位图或DIB(或两者兼而有之)。如果您使用旧的XP剪贴板查看器(clipbrd.exe),或者在程序中枚举可用的剪贴板格式,您将看到这些格式。
请参见标准剪贴板格式列表: GIF不是其中之一。 此外,没有JPG或PNG。复制这些图像时,它们将作为CF_位图和/或CF_DIB放置在剪贴板上。基本上,位图是一种通用的图像格式,任何东西都可以转换成位图


或者,您可以从剪贴板获取CF_HTML,找出图像的位置,然后从服务器(或者浏览器缓存)获取图像,保留原始GIF信息。

看看这个答案,它非常简洁。有些相关的说明:现在,多个程序使用“PNG”类型,以解决标准剪贴板图像格式中缺乏透明度支持的问题。它只是一个带有剪贴板类型标识符“png”的png文件字节流。