其他分享
首页 > 其他分享> > 关于图像转码不清晰问题

关于图像转码不清晰问题

作者:互联网

问题描述:

  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;
            }
        }

 

标签:arr,转码,bitmap,ImageFormat,ms,图像,Bitmap,清晰
来源: https://www.cnblogs.com/fairylyl/p/11198051.html