码迷,mamicode.com
首页 > 其他好文 > 详细

DataFormats.Dib 保存为图片文件

时间:2017-12-19 01:31:01      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:需要   tao   clip   col   write   memory   boa   保存   是什么   

var data = System.Windows.Forms.Clipboard.GetDataObject();

using (var ms = data.GetData(System.Windows.Forms.DataFormats.Dib) as MemoryStream)
{
    byte[] buff = new byte[ms.Capacity];
    if (ms.CanRead)
    {
        ms.Read(buff, 0, ms.Capacity);
    }
    MemoryStream ms2 = new MemoryStream();
    //构造固定文件头 
    byte[] bmpHeader = new byte[]
    {0x42, 0x4D, 0x96, 0x86, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0x00, 0x00, 0x00};
    //将文件头和文件数据写入内存流 
    ms2.Write(bmpHeader, 0, bmpHeader.Length);
    ms2.Write(buff, 0, buff.Length);
    //2017年12月18日 09:54:44 
    //保存图片到临时显示目录
    string fileName = Guid.NewGuid().ToString("N") + ".png";
    File.WriteAllBytes(fileName, ms2.ToArray());
    ms2.Dispose();
}    

直接保存为图片是不成功的,需要插入一个文件头,具体是什么原因,目前没有深入研究,有知道的话告诉我下。

DataFormats.Dib 保存为图片文件

标签:需要   tao   clip   col   write   memory   boa   保存   是什么   

原文地址:http://www.cnblogs.com/sczmzx/p/8058860.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!