当前位置: 代码迷 >> C# >> C# 将32位BMP转入8位BMP
  详细解决方案

C# 将32位BMP转入8位BMP

热度:349   发布时间:2016-05-05 05:34:15.0
C# 将32位BMP转为8位BMP!
本帖最后由 dfyhfthjkj 于 2014-12-14 00:04:03 编辑
现在有一种方法,但是这种方法在win7上测试通过,但是在xp上就提示内存不足(在Clone方法提示OutOfMemoryException异常),图片宽度和高度参数都不会有问题的,应该不是我电脑的内存问题!这怎么解决。。。该换什么方式??
 
Bitmap bb=new Bitmap(Stream ms);
var b = bb.Clone(new System.Drawing.Rectangle(0, 0, bb.Width, bb.Height), PixelFormat.Format8bppIndexed);


我不想用那种转换为gif再转换为BMP的方法,感觉这种方法转换后的图片质量有点问题!


------解决思路----------------------
不行的话,就看看使用第三方类库
1bpp in C#
使用方法System.Drawing.Bitmap b = CopyToBpp(bb,8);
或者C# RGB to Palette Based 8-bit Greyscale Bitmap Class
  相关解决方案