使用C#将图像从图像转换为base64的问题

时间:2018-10-09 16:48:28

标签: c# type-conversion

在将Image转换为base64时遇到一个奇怪的问题,当我复制将这些字符串粘贴到url上时,某些特定于png格式的图像无法获取base64字符串,因此它不显示任何图像,但是当我使用Online Image时到base64网站,因此它给了我真正的base64字符串,该字符串也在浏览器中打开。

 var imgSrc = String.Format("data:image/jpeg;base64,{0}", ProperteaseAPI.Helpers.Common.ImgToBase64(img.ItemFileName));

 html += "<img style ='width:50px; height: 50px; margin: 5px; src='" + imgSrc + "' />";'

public static string ImgToBase64(string path)
    {
        try
        {
        var context = System.Web.HttpContext.Current;
        string baseUrl = ConfigurationManager.AppSettings["BaseURL"];
        string PDF_Path = context.Server.MapPath("/");
        var FullPath = PDF_Path + path;
        using (Image image = Image.FromFile(FullPath))
        {
            using (MemoryStream m = new MemoryStream())
            {
                image.Save(m, image.RawFormat);
                byte[] imageBytes = m.ToArray();

                // Convert byte[] to Base64 String
                string base64String = Convert.ToBase64String(imageBytes);
                return base64String;
            }
        }
        }
        catch (Exception ex)
        {

            throw;
        }
    }

0 个答案:

没有答案