DataFormats.Dib 保存為圖片文件
阿新 • • 發佈:2017-12-19
formats head class win 什麽 一個 format 需要 插入
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 保存為圖片文件