public static void SaveBarcode(string item, string fileName, string location)
        {
            var datamatrixEncodingOptions = new DatamatrixEncodingOptions
            {
                Height      = 400,
                Width       = 400,
                PureBarcode = true,
                Margin      = 0,
                SymbolShape = SymbolShapeHint.FORCE_SQUARE
            };
            var barcodeWriter = new BarcodeWriter
            {
                Format  = BarcodeFormat.DATA_MATRIX,
                Options = datamatrixEncodingOptions
            };

            Bitmap   oldMap = barcodeWriter.Write(item);
            Bitmap   newMap = ResizeCanvas(oldMap, oldMap.Width, oldMap.Height + 30, 0, 0);
            Graphics gfx    = Graphics.FromImage(newMap);

            gfx.SmoothingMode = SmoothingMode.HighQuality;
            Font arialFont = new Font("Calibri Light", 10, FontStyle.Regular);

            gfx.DrawString(fileName, arialFont, Brushes.Black, new Point(0, oldMap.Height + 5));
            try
            {
                newMap.Save(location);
            }
            catch
            {
                // ignored
            }
        }
Esempio n. 2
0
        public static void Demonstration()
        {
            // 箱码信息的base64位字符串
            string base64Carton = string.Empty;

            //获取设定的二维码的尺寸信息(默认18)
            int QRCodeHeight = 70;
            int QRCodeWidth  = 70;

            // 1.设置二维码规格
            DatamatrixEncodingOptions encodeOption = new DatamatrixEncodingOptions
            {
                Height      = QRCodeHeight, // 必须指定高度、宽度
                Width       = QRCodeWidth,
                PureBarcode = true,
                Margin      = 1,
            };

            // 2.生成二维码图片并保存
            BarcodeWriter wr = new BarcodeWriter
            {
                Options = encodeOption,
                Format  = BarcodeFormat.QR_CODE //二维码类型
            };

            var content = "111111111-20C1601";

            using (Bitmap img = wr.Write(content))
            {
                img.Save($"{DateTime.Now.ToString("yyyyMMddHHmmss")}.png", ImageFormat.Png);
            }
        }
Esempio n. 3
0
        public void TestEncodeDecode(String data, SymbolShapeHint shape)
        {
            var writer  = new DataMatrixWriter();
            var options = new DatamatrixEncodingOptions {
                SymbolShape = shape
            };
            var matrix = writer.encode(data, BarcodeFormat.DATA_MATRIX, 0, 0, options.Hints);

            Assert.That(matrix, Is.Not.Null);

            var res = new Internal.Decoder().decode(matrix);

            Assert.That(res, Is.Not.Null);
            Assert.That(res.Text, Is.EqualTo(data));
        }