jpg imagen data convertir convert cadena b64 c# html

c# - imagen - image url to base64



cómo convertir Image to Data URI para Html con C#? (3)

¿No es una URL de datos simplemente codificada la base de la imagen 64?

Entonces esto debería hacerlo.

var bytes = File.ReadAllBytes("C://somepath//picture.png"); var b64String = Convert.ToBase64String(bytes); var dataUrl = "data:image/png;base64," + b64String;

Necesito convertir la imagen a URL de datos (imagen incrustada) en la aplicación Win para HTML y necesito URL de datos (imagen incrustada) en la imagen.


Si está utilizando ASP.NET MVC, un código poco revelado de la respuesta de Ankur podría ser más conveniente:

public static string DataUriContent(this UrlHelper url, string path) { var filePath = HttpContext.Current.Server.MapPath(path); var sb = new StringBuilder(); sb.Append("data:image/") .Append((Path.GetExtension(filePath) ?? "png").Replace(".", "")) .Append(";base64,") .Append(Convert.ToBase64String(File.ReadAllBytes(filePath))); return sb.ToString(); }

y el uso (simplemente reemplazando @Url.Content con @Url.DataUriContent ):

<img src="@Url.DataUriContent("~/Path/To/Image/yourImage.png")"/>


public static string GetDataURL(string imgFile) { return "<img src=/"data:image/" + Path.GetExtension(imgFile).Replace(".","") + ";base64," + Convert.ToBase64String(File.ReadAllBytes(imgFile)) + "/" />"; }