Example #1
0
        internal async Task <T> GenerateBarCode128 <T>(BarCodeSettings barCodeSettings)
        {
            BarCodeInformation barCodeData = new BarCodeInformation();
            string             imagePath   = Lib.ImagesServerPath(barCodeSettings.ImageFormat);
            await Task.Run(() => {
                PointF oPoint           = new PointF(2f, 2f);
                ImageFormat imageFormat = barCodeSettings.ImageFormat;
                Bitmap oBitmap          = new Bitmap(barCodeSettings.Width, barCodeSettings.Height);
                oBitmap.SetResolution(90, 90);
                Graphics oGraphics     = Graphics.FromImage(oBitmap);
                SolidBrush oBrushWrite = new SolidBrush(barCodeSettings.ForeColor);
                Font oFont             = new Font("Libre Barcode 128 Text", barCodeSettings.FontSize);
                SolidBrush oBrush      = new SolidBrush(barCodeSettings.BackgroundColor);
                oGraphics.FillRectangle(oBrush, 0, 0, barCodeSettings.Width, barCodeSettings.Height);
                oGraphics.DrawString(barCodeSettings.BarCodeText, oFont, oBrushWrite, oPoint);
                oBitmap.Save(imagePath, imageFormat);
                Image image = Image.FromFile(imagePath);
                using (MemoryStream memoryStram = new MemoryStream())
                {
                    image.Save(memoryStram, imageFormat);
                    byte[] imageBytes        = memoryStram.ToArray();
                    barCodeData.Base64String = Convert.ToBase64String(imageBytes);
                }
                barCodeData.Data        = barCodeSettings.BarCodeText;
                barCodeData.ImageFormat = barCodeSettings.ImageFormat.ToString();
            });

            return((T)Convert.ChangeType(barCodeData, typeof(T)));
        }
        internal async Task <object> Generate2DBarCode <T>(BarCodeSettings barCodeSettings)
        {
            object barCodeData = null;

            switch (barCodeSettings.BarCodeType.BarCode2DType)
            {
            case BarCode2DType.AztecCode:
                break;

            case BarCode2DType.CrontoSign:
                break;

            case BarCode2DType.DataMatrix:
                break;

            case BarCode2DType.DotCode:
                break;

            case BarCode2DType.EZcode:
                break;

            case BarCode2DType.HighCapacityColorBarcode:
                break;

            case BarCode2DType.HanXinBarcode:
                break;

            case BarCode2DType.MaxiCode:
                break;

            case BarCode2DType.NexCode:
                break;

            case BarCode2DType.PDF417:
                break;

            case BarCode2DType.Qode:
                break;

            case BarCode2DType.QRCode:
                break;

            case BarCode2DType.ARCode:
                break;

            case BarCode2DType.ShotCode:
                break;

            case BarCode2DType.SPARQCode:
                break;

            default:
                break;
            }
            return((T)Convert.ChangeType(barCodeData, typeof(T)));
        }
Example #3
0
        public async Task <T> GetBarCode <T>(BarCodeSettings barCodeSettings)
        {
            Object barCodeData = null;
            GenerateBarCodeOnType generateBarCodeOnType = new GenerateBarCodeOnType();

            switch (barCodeSettings.BarCodeFormat)
            {
            case BarCodeFormat.OneDimensional:
                barCodeData = await generateBarCodeOnType.Generate1DBarCode <T>(barCodeSettings);

                break;

            case BarCodeFormat.TwoDimensional:
                barCodeData = await generateBarCodeOnType.Generate2DBarCode <T>(barCodeSettings);

                break;

            default:
                break;
            }
            return((T)Convert.ChangeType(barCodeData, typeof(T)));
        }
        internal async Task <T> Generate1DBarCode <T>(BarCodeSettings barCodeSettings)
        {
            Object barCodeData = null;
            GenerateBarCode1DFormat generateBarCode1DFormat = new GenerateBarCode1DFormat();

            switch (barCodeSettings.BarCodeType.BarCode1DType)
            {
            case BarCode1DType.AustraliaPost:
                break;

            case BarCode1DType.Codabar:
                break;

            case BarCode1DType.Code25:
                break;

            case BarCode1DType.Code11:
                break;

            case BarCode1DType.Code32:
                break;

            case BarCode1DType.Code39:
                barCodeData = await generateBarCode1DFormat.GenerateBarCode39 <T>(barCodeSettings);

                break;

            case BarCode1DType.Code49:
                break;

            case BarCode1DType.Code93:
                break;

            case BarCode1DType.Code128:
                barCodeData = await generateBarCode1DFormat.GenerateBarCode128 <T>(barCodeSettings);

                break;

            case BarCode1DType.DXFilmEdgeBarCode:
                break;

            case BarCode1DType.EAN2:
                break;

            case BarCode1DType.EAN5:
                break;

            case BarCode1DType.EAN8:
                break;

            case BarCode1DType.EAN813:
                break;

            case BarCode1DType.GS1128:
                break;

            case BarCode1DType.GS1DataBar:
                break;

            case BarCode1DType.IntelligentMailBarCode:
                break;

            case BarCode1DType.ITF14:
                break;

            case BarCode1DType.JAN:
                break;

            case BarCode1DType.JapanPost:
                break;

            case BarCode1DType.KarTrakACI:
                break;

            case BarCode1DType.MSI:
                break;

            case BarCode1DType.PharmaCode:
                break;

            case BarCode1DType.PLANET:
                break;

            case BarCode1DType.Plessey:
                break;

            case BarCode1DType.PostBar:
                break;

            case BarCode1DType.POSTNET:
                break;

            case BarCode1DType.RM4SCCKIX:
                break;

            case BarCode1DType.RMMailmarkC:
                break;

            case BarCode1DType.Telepen:
                break;

            case BarCode1DType.UPCA:
                break;

            case BarCode1DType.UPCE:
                break;

            default:
                break;
            }
            return((T)Convert.ChangeType(barCodeData, typeof(T)));
        }