FAQ TBarCode .NET
Как преобразовать изображение в Base64?
Как преобразовать изображение в Base64?
Это можно реализовать, создав массив байтов, а затем преобразовав его в кодировку Base64:
public Byte[] GenerateBarcodeStream2D(String data)
{
TECIT.TBarCode.Barcode barcode = new TECIT.TBarCode.Barcode();
barcode.BarcodeType = TECIT.TBarCode.BarcodeType.DataMatrix;
barcode.Data = data;
barcode.Dpi = 100;
Size optimalSize = barcode.CalculateOptimalBitmapSize(null, 2, 2);
barcode.BoundingRectangle = new Rectangle(0, 0, optimalSize.Width, optimalSize.Height);
using (System.IO.MemoryStream ms = new System.IO.MemoryStream())
{
Bitmap bitmap = barcode.DrawBitmap();
bitmap.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
/*
* // or save as 24 bit JPG
* ImageCodecInfo jpgCodec = ImageCodecInfo.GetImageEncoders().Where(codec => codec.FormatID.Equals(ImageFormat.Jpeg.Guid)).FirstOrDefault();
* System.Drawing.Imaging.EncoderParameters parameters = new System.Drawing.Imaging.EncoderParameters();
* parameters.Param[0] = new EncoderParameter (System.Drawing.Imaging.Encoder.ColorDepth, 24);
* bitmap.Save(ms, jpgCodec, parameters);
*/
ms.Position = 0;
return ms.ToArray();
}
}
После того как вы создали массив байтов, вы можете преобразовать его в Base64. Для встраивания изображения в html добавьте к изображению префикс с mime-типом:
Byte[] barcodeImageStream = GenerateBarcodeStream2D ("12345");
String myBase64Barcode = Convert.ToBase64String(barcodeImageStream);
String imgSrc = "data:image/png;base64, " + myBase64Barcode;