Convert Base64 string to image and save it - c#
I want to save base64 image to a folder in application, but I have a problem in code. it gives an error as below,
Message = "Invalid length for a Base-64 char array or string."
In my code;
public static string UpdateUser(int refuser, string name, string surname,string base64)
{
string result = "FAILED";
var photo = "";
if (base64!=null && base64!="")
{
string mediaPath = Extend.GetXmlConfigParameter("media", "path")+"User\\";
string mediaName = Guid.NewGuid().ToString();
base64 = base64.Replace("data:image/png;base64,", "");
base64 = base64.Replace("data:image/jpg;base64,", "");
base64 = base64.Replace("data:image/gif;base64,", "");
base64 = base64.Replace("data:image/jpeg;base64,", "");
string filePath = mediaPath + mediaName + ".png";
try
{
byte[] bytes = Convert.FromBase64String(base64);
Image image;
using (MemoryStream ms = new MemoryStream(bytes))
{
image = Image.FromStream(ms);
}
image.Save(filePath, System.Drawing.Imaging.ImageFormat.Png);
//File.WriteAllBytes(filePath, Convert.FromBase64String(base64));
photo = mediaName + ".png";
}
catch(Exception ex)
{
Logger.LogError(ex.Message, ex.StackTrace);
return result;
}
}
try
{
DataSet ds = Database.GetDataSet(con, Database.CreateSpQuery("mobile_user_update ",
new List<object> {
refuser,
name,
surname,
photo
}));
if (!Database.IsDataSetValid(ds))
return null;
result = Database.GetString(ds.Tables[0].Rows[0]["Result"]);
}
catch (Exception ex)
{
Logger.LogError(ex.Message, ex.StackTrace);
}
return result;
}
when i try to convert to byte array with below step in code
byte[] bytes = Convert.FromBase64String(base64);
I take this error. my example base64 string is
data:image/png;base64,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
How can I solve this problem.
Thanks in advance.
It looks that you getting this base64 string through url. If so, you should encode it , before it send to the client.
HttpUtility.UrlEncode(base64string)
Related
Conversion problem from Image to base64 using C#
I am facing strange problem while converting Image to base64, some specific image which is on png format is not getting the base64 string when I copy paste those string on url so it is not displaying any image, but when I use Online Image to base64 website so it gave me true base64 string which is also open on browser. 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; } }
ASP.NET Web API C# Answer HttpRequest with Image via Json [duplicate]
How do you convert an image from a path on the user's computer to a base64 string in C#? For example, I have the path to the image (in the format C:/image/1.gif) and would like to have a data URI like data:image/gif;base64,/9j/4AAQSkZJRgABAgEAYABgAAD.. representing the 1.gif image returned.
Try this using (Image image = Image.FromFile(Path)) { 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; } }
Get the byte array (byte[]) representation of the image, then use Convert.ToBase64String(), st. like this: byte[] imageArray = System.IO.File.ReadAllBytes(#"image file path"); string base64ImageRepresentation = Convert.ToBase64String(imageArray); To convert a base64 image back to a System.Drawing.Image: var img = Image.FromStream(new MemoryStream(Convert.FromBase64String(base64String)));
Since most of us like oneliners: Convert.ToBase64String(File.ReadAllBytes(imageFilepath)); If you need it as Base64 byte array: Encoding.ASCII.GetBytes(Convert.ToBase64String(File.ReadAllBytes(imageFilepath)));
This is the class I wrote for this purpose: public class Base64Image { public static Base64Image Parse(string base64Content) { if (string.IsNullOrEmpty(base64Content)) { throw new ArgumentNullException(nameof(base64Content)); } int indexOfSemiColon = base64Content.IndexOf(";", StringComparison.OrdinalIgnoreCase); string dataLabel = base64Content.Substring(0, indexOfSemiColon); string contentType = dataLabel.Split(':').Last(); var startIndex = base64Content.IndexOf("base64,", StringComparison.OrdinalIgnoreCase) + 7; var fileContents = base64Content.Substring(startIndex); var bytes = Convert.FromBase64String(fileContents); return new Base64Image { ContentType = contentType, FileContents = bytes }; } public string ContentType { get; set; } public byte[] FileContents { get; set; } public override string ToString() { return $"data:{ContentType};base64,{Convert.ToBase64String(FileContents)}"; } } var base64Img = new Base64Image { FileContents = File.ReadAllBytes("Path to image"), ContentType="image/png" }; string base64EncodedImg = base64Img.ToString();
You can easily pass the path of the image to retrieve the base64 string public static string ImageToBase64(string _imagePath) { string _base64String = null; using (System.Drawing.Image _image = System.Drawing.Image.FromFile(_imagePath)) { using (MemoryStream _mStream = new MemoryStream()) { _image.Save(_mStream, _image.RawFormat); byte[] _imageBytes = _mStream.ToArray(); _base64String = Convert.ToBase64String(_imageBytes); return "data:image/jpg;base64," + _base64String; } } } Hope this will help.
You can use Server.Map path to give relative path and then you can either create image using base64 conversion or you can just add base64 string to image src. byte[] imageArray = System.IO.File.ReadAllBytes(Server.MapPath("~/Images/Upload_Image.png")); string base64ImageRepresentation = Convert.ToBase64String(imageArray);
This code works well with me on DotNet Core 6 using (Image image = Image.FromFile(path)) { using (MemoryStream m = new MemoryStream()) { image.Save(m, ImageFormat.Jpeg); byte[] imageBytes = m.ToArray(); // Convert byte[] to Base64 String string base64String = Convert.ToBase64String(imageBytes); // In my case I didn't find the part "data:image/png;base64,", so I added. return $"data:image/png;base64,{base64String}"; } }
That way it's simpler, where you pass the image and then pass the format. private static string ImageToBase64(Image image) { var imageStream = new MemoryStream(); try { image.Save(imageStream, System.Drawing.Imaging.ImageFormat.Bmp); imageStream.Position = 0; var imageBytes = imageStream.ToArray(); var ImageBase64 = Convert.ToBase64String(imageBytes); return ImageBase64; } catch (Exception ex) { return "Error converting image to base64!"; } finally { imageStream.Dispose; } }
Based on top voted answer, updated for C# 8. Following can be used out of the box. Added explicit System.Drawing before Image as one might be using that class from other namespace defaultly. public static string ImagePathToBase64(string path) { using System.Drawing.Image image = System.Drawing.Image.FromFile(path); using MemoryStream m = new MemoryStream(); image.Save(m, image.RawFormat); byte[] imageBytes = m.ToArray(); tring base64String = Convert.ToBase64String(imageBytes); return base64String; }
The following piece of code works for me: string image_path="physical path of your image"; byte[] byes_array = System.IO.File.ReadAllBytes(Server.MapPath(image_path)); string base64String = Convert.ToBase64String(byes_array);
The reverse of this for the googlers arriving here (there is no SO quesion/answer to that) public static byte[] BytesFromBase64ImageString(string imageData) { var trunc = imageData.Split(',')[1]; var padded = trunc.PadRight(trunc.Length + (4 - trunc.Length % 4) % 4, '='); return Convert.FromBase64String(padded); }
Something like that Function imgTo64(ByVal thePath As String) As String Dim img As System.Drawing.Image = System.Drawing.Image.FromFile(thePath) Dim m As IO.MemoryStream = New IO.MemoryStream() img.Save(m, img.RawFormat) Dim imageBytes As Byte() = m.ToArray img.Dispose() Dim str64 = Convert.ToBase64String(imageBytes) Return str64 End Function
Saving an image from bytes
I am trying to create an API which will save an image at a given location . Below is my Code for that Image image = Image.FromFile(#"C:\Users\abc\Desktop\img-logo.jpg"); byte[] bytes = (byte[])(new ImageConverter()).ConvertTo(image, typeof(byte[])); string str = Convert.ToBase64String(bytes); Save_Application_Image("12004", str); and the method in API public void Save_Application_Image(string staffCode , string bytearray) { try { byte[] bytes = Convert.FromBase64String(bytearray); file_path = "~/uploads/" + file_name; FileStream file = File.Create(HttpContext.Current.Server.MapPath(file_path)); file.Write(bytes, 0, bytes.Length); file.Close(); } catch(Exception ex) { logger.LogError(ex); } finally { } } This api has to be called from Android Application so I will receive two string parameter. It is saving the file perfectly but file is not readable. No preview for image file. What is the right approach for this ?
I'm unsure of how the ImageConverter works, but I've used this before to convert Images to byte[]: Image image = Image.FromFile(#"C:\Users\abc\Desktop\img-logo.jpg"); using (var stream = new MemoryStream()) { image.Save(stream); string savedImage = Convert.ToBase64String(stream.ToArray()); Save_Application_Image("12004", str); }
Xamarin forms signature pad Get image
Im using the following code to get the signature from the signature pad, But any value doesn't come. try { var signature = padView.GetImage (Acr.XamForms.SignaturePad.ImageFormatType.Png); using (BinaryReader br = new BinaryReader (signature)) { var result = br.ReadBytes ((int)signature.Length); } } catch (Exception ex) { // Helper_ErrorHandling.SendErrorToServer (ex); } Am I ding it wrong, Also how do i convert this to a base64 string ?
I'm not too familiar with the Xamarin Forms Signature Pad, but if you're looking for a way to convert a Stream to as base64 string, try this: [...] string base64String; using (var memoryStream = new MemoryStream()) { signature.CopyTo( memoryStream ); var byteArray = memoryStream.ToArray(); base64String = Convert.ToBase64String( byteArray ); } EDIT: you can most of the time skip the copy, if you check if signature is already a MemoryStream... [...] string base64String; var signatureMemoryStream = signature as MemoryStream; if (signatureMemoryStream == null) { signatureMemoryStream = new MemoryStream(); signature.CopyTo( signatureMemoryStream ); } var byteArray = signatureMemoryStream.ToArray(); base64String = Convert.ToBase64String( byteArray );
Using the most current PCL compliant Xamarin package : acr-xamarin-forms This method works like a charm! private string ConvertSignatureToBase64() { try { byte[] data; if(Device.OS == TargetPlatform.iOS) { var img = SignaturePad.GetImage(Acr.XamForms.SignaturePad.ImageFormatType.Jpg); var signatureMemoryStream = new MemoryStream(); img.CopyTo(signatureMemoryStream); data = signatureMemoryStream.ToArray(); } else { var img = SignaturePad.GetImage(Acr.XamForms.SignaturePad.ImageFormatType.Jpg); var signatureMemoryStream = (MemoryStream)img; data = signatureMemoryStream.ToArray(); } return Convert.ToBase64String(data); } catch(Exception ex) { return ex.ToString(); } }
Error in converting base64 string to image (description inside)
I've a task to convert a base64 string to image in asp.net c#, I'm using the following code, private static bool SaveImage(string path, string link, string name) { bool result = true; if (link.StartsWith("data:image/jpeg;base64,")) { try { string intImg = path + "/" + name + ".jpg"; System.Drawing.Image bmpFromString = Base64StringToBitmap(link.Replace("data:image/jpeg;base64,","")); bmpFromString.Save(intImg, ImageFormat.Jpeg); result = true; } catch (Exception) { result = false; } } return result; } public static System.Drawing.Image Base64StringToBitmap(string base64String) { System.Drawing.Image bmpReturn = null; //string converted = base64String.Replace('-', '+'); //converted = converted.Replace('_', '/'); byte[] byteBuffer = Convert.FromBase64String(base64String); using (MemoryStream memoryStream = new MemoryStream(byteBuffer)) { //finalImage = System.Drawing.Image.FromStream(ms); memoryStream.Position = 0; bmpReturn = System.Drawing.Image.FromStream(memoryStream); memoryStream.Close(); byteBuffer = null; } return bmpReturn; } this is the base64 string data:image/jpeg;base64,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 The error message is, Error Message The input is not a valid Base-64 string as it contains a non-base 64 character, more than two padding characters, or an illegal character among the padding characters. " I can't understand what is wrong with this method, would somebody correct me if i'm wrong.
The base64 string you have is not the correct length. Base64 strings should be in blocks of four characters, but you have 4657 characters, or 1164.25 blocks. Conclusion: You've mistakenly doubled the last 8 in your string. Removing this, you get an image of three people on a yellow background, with a small gray border on the bottom.
You can use: user.Image.Replace(#"data:image/jpeg;base64,", "");