C#下怎么从指针指向的byte数组转换成bitmap类型 建议两种方法你可以试一下,1、确定图像大小,setpixel逐点设置;2、lockbits,指针操作(http://blog.sina.com.cn/s/blog_4e3e2ce4010009on.html) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 // 指定宽和高int width = 500, height = 500;// 8bit索引方式位图,设置灰度调色板var fmt = PixelFormat.Format8bppIndexed;var bmp = new Bitmap(width, height, fmt);var palette = bmp.Palette;for (var i = 0; i < 256; i++) palette.Entries[i] = Color.FromArgb(i, i, i);bmp.Palette = palette;// 使用ptr指针指向的数据构造位图var d = bmp.LockBits(new Rectangle(0, 0, width, height), ImageLockMode.WriteOnly | ImageLockMode.UserInputBuffer, fmt, new BitmapData { PixelFormat = fmt, Height = height, Width = width, Stride = width, Scan0 = ptr });bmp.UnlockBits(d);// 保存bmp.Save("e:\\x.png"); C# Soket通信如何获取网页动态信息(如何执行Ajax) 能否通过name控制窗口 C# 调用 C++DLL问题 传入和输出结构体获得不了值 有详细说明 请赐教 关于委托的疑问 请问一下用listBox读取数据库里的数据怎么实现 关于贪吃蛇的改进 在线等待: 一张网卡绑定多个IP,如何用其中指定的一个IP发送请求? 在C#中,如何更新数据库的大对象(BLOB or CLOB)? 在.net中编译C++控制台程序的最简便方法是什么? 在层级列表中如何查找并删除指定对象 《C#入门经典5版》中的小BUG,求原因
// 指定宽和高
int width = 500, height = 500;// 8bit索引方式位图,设置灰度调色板
var fmt = PixelFormat.Format8bppIndexed;
var bmp = new Bitmap(width, height, fmt);
var palette = bmp.Palette;
for (var i = 0; i < 256; i++)
palette.Entries[i] = Color.FromArgb(i, i, i);
bmp.Palette = palette;// 使用ptr指针指向的数据构造位图
var d = bmp.LockBits(new Rectangle(0, 0, width, height), ImageLockMode.WriteOnly | ImageLockMode.UserInputBuffer, fmt,
new BitmapData { PixelFormat = fmt, Height = height, Width = width, Stride = width, Scan0 = ptr });
bmp.UnlockBits(d);// 保存
bmp.Save("e:\\x.png");