关于图像转码不清晰问题
问题描述:
Bitmap转base64时,转换回来的图像模糊
图像类型:
波形图,线条为红色
问题发现:
用Bitmap类不管是存储到文件,还是存储为数据流来处理 image 对象时候,如果 加上ImageFormat.Jpeg 都会让图片变模糊。
问题解决:
图像通过数据流存储至mysql数据库blob字段中,用ImageFormat.Bmp存储然后保存,生成的图像较为清晰。
public static string BitmapToBase64String(Bitmap bitmap)
{
if(bitmap == null){
//bitmap not found!!
}
try
{
MemoryStream ms = new MemoryStream();
bitmap.Save(ms, System.Drawing.Imaging.ImageFormat.Bmp);
byte[] arr = new byte[ms.Length];
ms.Position = 0;
ms.Read(arr, 0, (int)ms.Length);
ms.Close();
String strbaser64 = Convert.ToBase64String(arr);
return strbaser64;
}
catch (Exception ex)
{
LogWriter("BitmapToBase64String 转换失败! Exception:" + ex.Message);
return null;
}
}
♦ §这个世界的温柔来自于自身的强大!§ ♦