コード例 #1
0
        public string EncodeToString(string message, Enums.Modulo modulo, Enums.MSIWeighting weightType)
        {
            Validate(message);
            string fullMessage = message;

            switch (modulo)
            {
            case Enums.Modulo.Modulo10:
                fullMessage = message + CalcParity10(message).ToString().Trim();
                break;

            case Enums.Modulo.Modulo11:
                fullMessage = message + CalcParity11(message, weightType).ToString().Trim();
                break;

            case Enums.Modulo.Modulo1011:
                fullMessage = message + CalcParity10(message).ToString().Trim();
                fullMessage = fullMessage + CalcParity11(fullMessage, weightType).ToString().Trim();
                break;

            case Enums.Modulo.Modulo1110:
                fullMessage = message + CalcParity11(message, weightType).ToString().Trim();
                fullMessage = fullMessage + CalcParity10(fullMessage).ToString().Trim();
                break;
            }
            return(Encode(fullMessage));
        }
コード例 #2
0
        public void ProcessRequest(HttpContext context)
        {
            Enums.Barcodes barcodeType = (Enums.Barcodes) int.Parse(context.Request.QueryString["barcodeType"]);
            string         message     = context.Request.QueryString["message"];
            IBarcode       barcoder    = BarcodeBuilder.CreateBarcode(barcodeType);

            Bitmap bitmap;

            if (barcodeType == Enums.Barcodes.MSI)
            {
                Enums.Modulo       modulo    = (Enums.Modulo) int.Parse(context.Request.QueryString["modulo"]);
                Enums.MSIWeighting weighting = (Enums.MSIWeighting) int.Parse(context.Request.QueryString["msiWeighting"]);
                bitmap = ((BarcodeMSI)barcoder).EncodeToBitmap(message, modulo, weighting);
            }
            else
            {
                bitmap = barcoder.EncodeToBitmap(message);
            }

            MemoryStream mem = new MemoryStream();

            bitmap.Save(mem, ImageFormat.Png);

            byte[] buffer = mem.ToArray();

            context.Response.ContentType = "image/png";
            context.Response.BinaryWrite(buffer);
            context.Response.Flush();
        }
コード例 #3
0
        public Bitmap EncodeToBitmap(string message, Enums.Modulo modulo, Enums.MSIWeighting weightType)
        {
            string encodedMessage;
            string fullMessage;

            Bitmap   barcodeImage = new Bitmap(250, 100);
            Graphics g            = Graphics.FromImage(barcodeImage);

            Validate(message);
            fullMessage = message;
            switch (modulo)
            {
            case Enums.Modulo.Modulo10:
                fullMessage = message + CalcParity10(message).ToString().Trim();
                break;

            case Enums.Modulo.Modulo11:
                fullMessage = message + CalcParity11(message, weightType).ToString().Trim();
                break;

            case Enums.Modulo.Modulo1011:
                fullMessage = message + CalcParity10(message).ToString().Trim();
                fullMessage = fullMessage + CalcParity11(fullMessage, weightType).ToString().Trim();
                break;

            case Enums.Modulo.Modulo1110:
                fullMessage = message + CalcParity11(message, weightType).ToString().Trim();
                fullMessage = fullMessage + CalcParity10(fullMessage).ToString().Trim();
                break;
            }
            encodedMessage = Encode(fullMessage);

            PrintBarcode(g, encodedMessage, fullMessage, 250, 100);

            return(barcodeImage);
        }