首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET Framework >

急pictureBox显示图片,保存到数据库,从数据库读取后再用pictureBox显示,图片质量上降

2012-08-09 
急!pictureBox显示图片,保存到数据库,从数据库读取后再用pictureBox显示,图片质量下降。1.把图片转成字节数

急!pictureBox显示图片,保存到数据库,从数据库读取后再用pictureBox显示,图片质量下降。
1.把图片转成字节数字存储到数据库。
MemoryStream ms = new MemoryStream();
  this.zp.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);
  Byte[] bytes = ms.ToArray();
  ms.Dispose();
  ms.Close();
  props.AddProperty("YYZ_ZP", bytes);
2.从数据库读取时,先读取字节数据,然后转成图片。
Byte[] zp = reader.GetBytes(6);
  MemoryStream ms = new MemoryStream(zp);
  try
  {
  zpjl.zp = Image.FromStream(ms);
  }
  catch (Exception exc)
  {
  MessageBox.Show("读取照片出错!" + exc.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
  ms.Dispose();
  ms.Close();
  reader.Close();
  return zpjlList;
  }
  ms.Dispose();
  ms.Close();
3.保存时图片大小会变小。
一个757KB的图片,转成字节数组保存后,再转成图片,大小为158KB。
4.图片格式为jpg。
5.第一个图片为原始图片。

6.第二个图片为保存到数据库,再生成的图片。


敬请高手指教!!!!!!

[解决办法]
System.Drawing.Imaging.ImageFormat.Gif
 this.zp.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);
这句话应该是失真了
改成Bmp或者Jpeg应该好些

热点排行