From 09ccc282a53321d4615f26cbac5a9d54bfb9c604 Mon Sep 17 00:00:00 2001 From: Milan Hanajik Date: Mon, 10 Feb 2020 15:38:05 +0100 Subject: [PATCH] Output.Printers.Label with water meter s/n printed as a QR code. --- .../Printers/Label/LabelPrintDocument.cs | 44 +- .../Output/Printers/Label/LabelPrinterCfg.cs | 10 +- Results/Results.csproj | 3 + .../Printers/Label/PrintLabelDocument.cs | 193 --- .../Output/Printers/Label/Printer.cs | 13 +- .../Output/Printers/Label/PrinterCfg.cs | 16 +- .../Printers/Label/PrinterCfgCtrl.Designer.cs | 705 ++++++----- .../Output/Printers/Label/PrinterCfgCtrl.cs | 72 +- TBF/TBF.csproj | 3 - .../net40/Gma.QrCodeNet.Encoding.XML | 1117 +++++++++++++++++ .../net40/Gma.QrCodeNet.Encoding.dll | Bin 0 -> 108032 bytes .../net40/Gma.QrCodeNet.Encoding.pdb | Bin 0 -> 413184 bytes 12 files changed, 1677 insertions(+), 499 deletions(-) delete mode 100644 TBF/BenchControl/Output/Printers/Label/PrintLabelDocument.cs create mode 100644 packages/QrCode.Net.0.4.0.0/net40/Gma.QrCodeNet.Encoding.XML create mode 100644 packages/QrCode.Net.0.4.0.0/net40/Gma.QrCodeNet.Encoding.dll create mode 100644 packages/QrCode.Net.0.4.0.0/net40/Gma.QrCodeNet.Encoding.pdb diff --git a/Results/Output/Printers/Label/LabelPrintDocument.cs b/Results/Output/Printers/Label/LabelPrintDocument.cs index e18355d19..6faeaeb16 100644 --- a/Results/Output/Printers/Label/LabelPrintDocument.cs +++ b/Results/Output/Printers/Label/LabelPrintDocument.cs @@ -4,8 +4,10 @@ using System; using System.Collections.Generic; using System.Drawing; +using System.Drawing.Drawing2D; using System.Drawing.Printing; using System.IO; +using Gma.QrCodeNet.Encoding; using Config.Entities; using Results.Resources; @@ -13,7 +15,9 @@ namespace Results.Output.Printers.Label { public class LabelPrintDocument : PrintersCommon { - /// Size of the printed area without margins, after taking into account 'pageOrientation' + static QrEncoder encoder = new QrEncoder(); + + /// Size of the printed area without margins, after taking into account 'pageOrientation' readonly int printHeight; readonly int printWidth; @@ -93,6 +97,44 @@ namespace Results.Output.Printers.Label e.Graphics.DrawString(item.Print(wm), this.font, Brushes.Black, printArea); } } + + if (cfg.DrawSNasBarcode) + { + if (cfg.IsQR) + { + QrCode qrCode = encoder.Encode(wm.SerialNr); + DrawQR(e.Graphics, qrCode, cfg.BarcodeLeft, cfg.BarcodeTop, cfg.BarcodeWidth, cfg.BarcodeHeight); + } + else + { + /// TODO + } + } } + + + public static void DrawQR(Graphics g, QrCode qrCode, float left, float top, float width, float height) + { + /// Assuming 100 dpi (printer) + g.SmoothingMode = SmoothingMode.AntiAlias; + g.InterpolationMode = InterpolationMode.HighQualityBicubic; + g.PixelOffsetMode = PixelOffsetMode.HighQuality; + + float qrPixWidth = width / qrCode.Matrix.Width; + float qrPixHeight = height / qrCode.Matrix.Height; + for (int i = 0; i < qrCode.Matrix.Height; i++) + { + for (int j = 0; j < qrCode.Matrix.Width; j++) + { + if (qrCode.Matrix[j, i]) + { + g.FillRectangle(Brushes.Black, new RectangleF(left + j * qrPixWidth, + top + i * qrPixHeight, + qrPixWidth, + qrPixHeight)); + } + } + } + } } } diff --git a/Results/Output/Printers/Label/LabelPrinterCfg.cs b/Results/Output/Printers/Label/LabelPrinterCfg.cs index 90490cd4b..46c12520d 100644 --- a/Results/Output/Printers/Label/LabelPrinterCfg.cs +++ b/Results/Output/Printers/Label/LabelPrinterCfg.cs @@ -1,5 +1,5 @@ /// -/// Copyright (c) 2018 Sensus Slovensko a.s. +/// Copyright (c) 2018-2020 Sensus Slovensko a.s. /// namespace Results.Output.Printers.Label @@ -17,5 +17,11 @@ namespace Results.Output.Printers.Label public System.Globalization.CultureInfo CultureInfo; public bool GoodOnly; public bool SupressPrinting; /// true = Bypass printing - } + public bool DrawSNasBarcode; + public bool IsQR; + public int BarcodeLeft; + public int BarcodeTop; + public int BarcodeWidth; + public int BarcodeHeight; + } } diff --git a/Results/Results.csproj b/Results/Results.csproj index c0ed96111..7cde6d471 100644 --- a/Results/Results.csproj +++ b/Results/Results.csproj @@ -38,6 +38,9 @@ ..\packages\FluentNHibernate.2.0.3.0\lib\net40\FluentNHibernate.dll + + ..\packages\QrCode.Net.0.4.0.0\net40\Gma.QrCodeNet.Encoding.dll + ..\packages\Iesi.Collections.4.0.0.4000\lib\net40\Iesi.Collections.dll diff --git a/TBF/BenchControl/Output/Printers/Label/PrintLabelDocument.cs b/TBF/BenchControl/Output/Printers/Label/PrintLabelDocument.cs deleted file mode 100644 index 94d064133..000000000 --- a/TBF/BenchControl/Output/Printers/Label/PrintLabelDocument.cs +++ /dev/null @@ -1,193 +0,0 @@ -/// -/// Copyright (c) 2015 Sensus Metering Systems -/// -using System; -using System.Collections.Generic; -using System.Drawing; -using System.Drawing.Printing; -using System.IO; -using Config.Entities; -using TBF.Resources; - -namespace TBF.BenchControl.Output.Printers.Label -{ - public class PrintLabelDocument : PrintDocument - { - const int FontSize = 9; - const string FontFamilyName = "Arial"; //"Times New Roman"; - - readonly int paperWidth; - readonly int paperHeight; - readonly string templateFile; - - /// Property variable for the Font the user wishes to use - Font font; - - /// - /// Data to print - /// - Results.Entities.Batch batch; - - /// - /// Layout and status - /// - int nextWMNr; /// nr. of watermeter to be printed as the first one on the next page - int nrPages; - - - /// - /// Constructor - /// - /// Text to be printed - public PrintLabelDocument(Results.Entities.Batch batch, - PageOrientation pageOrientation, - int paperWidth, - int paperHeight, - string templateFile) - { - this.batch = batch; - this.paperWidth = paperWidth; - this.paperHeight = paperHeight; - this.templateFile = templateFile; - - DefaultPageSettings.Landscape = (pageOrientation == PageOrientation.Landscape); - - /// Set print area size and margins (in dots using 80 dpi) - int printHeight = base.DefaultPageSettings.PaperSize.Height - base.DefaultPageSettings.Margins.Top - base.DefaultPageSettings.Margins.Bottom; - int printWidth = base.DefaultPageSettings.PaperSize.Width - base.DefaultPageSettings.Margins.Left - base.DefaultPageSettings.Margins.Right; - int leftMargin = base.DefaultPageSettings.Margins.Left; /// X - int topMargin = base.DefaultPageSettings.Margins.Top; /// Y - - /// Check if the user selected to print in Landscape mode - /// if they did then we need to swap height/width parameters - if (DefaultPageSettings.Landscape) - { - int tmp = printHeight; - printHeight = printWidth; - printWidth = tmp; - } - - /// One watermeter per label/page - nrPages = batch.WaterMeters.Count; - - nextWMNr = 0; - } - - - /// - /// Override the default onbeginPrint method of the PrintDocument Object - /// - /// - /// - protected override void OnBeginPrint(System.Drawing.Printing.PrintEventArgs e) - { - base.OnBeginPrint(e); - - if (font == null) { font = new Font(FontFamilyName, FontSize, FontStyle.Regular); } - } - - - /// - /// Override the default OnPrintPage method of the PrintDocument. - /// - /// - /// This provides the print logic for our document - protected override void OnPrintPage(System.Drawing.Printing.PrintPageEventArgs e) - { - /// Run base code - base.OnPrintPage(e); - - if (File.Exists(templateFile)) - { - Image img = Image.FromFile(templateFile); - e.Graphics.DrawImage(new Bitmap(img), new Rectangle(0, 0, paperWidth, paperHeight)); - } - - /// Set print area size and margins (in dots using 80 dpi) - int printHeight = base.DefaultPageSettings.PaperSize.Height - base.DefaultPageSettings.Margins.Top - base.DefaultPageSettings.Margins.Bottom; - int printWidth = base.DefaultPageSettings.PaperSize.Width - base.DefaultPageSettings.Margins.Left - base.DefaultPageSettings.Margins.Right; - int leftMargin = base.DefaultPageSettings.Margins.Left; /// X - int topMargin = base.DefaultPageSettings.Margins.Top; /// Y - - /// Check if the user selected to print in Landscape mode - /// if they did then we need to swap height/width parameters - if (base.DefaultPageSettings.Landscape) - { - int tmp = printHeight; - printHeight = printWidth; - printWidth = tmp; - } - - int x = leftMargin; - int y = topMargin; - - /// Use the StringFormat class for the text layout of our document - StringFormat format = new StringFormat(StringFormatFlags.LineLimit); - - - ///-------- - /// Body - ///-------- - - PrintWM(e, nextWMNr); - nextWMNr++; - e.HasMorePages = (nextWMNr < batch.WaterMeters.Count); - } - - - /// - /// Print one water meter results - /// - /// Water meter number (0-based) - void PrintWM(System.Drawing.Printing.PrintPageEventArgs e, int wmNr) - { - if (wmNr >= batch.WaterMeters.Count) return; - - Results.Entities.WaterMeter wm = batch.WaterMeters[wmNr]; - - if (wm == null) return; - - - /// Serial number - if (!string.IsNullOrEmpty(wm.SerialNr)) PrintAt(e, 20, 62, string.Format("S/N: {0}", wm.SerialNr)); - - /// Watermeter type - PrintAt(e, 20, 74, batch.ProtocolTitle); - - /// Date - PrintAt(e, 135, 74, string.Format("{0:dd/MM/yy", batch.EndTime)); - - Results.WMeterRsltItemSpec item1 = Results.WMeterRsltItemSpec.GetItem(Results.ItemID.Test_name); - - Results.WMeterRsltItemSpec item2 = Results.WMeterRsltItemSpec.GetItem(Results.ItemID.Error); - item2.Units = Config.Unit.Pct; - item2.Precision = "F2"; - item2.Format = "{0}%"; - - int printPosition = 1; - foreach (var mtr in wm.MeterTestRslts) - { - item1.TestID = mtr.Name(); - item2.TestID = mtr.Name(); - - PrintAt(e, 20, 6 + 14 * printPosition, item1.Print(wm)); - PrintAt(e, 78, 6 + 14 * printPosition, item2.Print(wm)); - - printPosition++; - } - } - - - void PrintAt(System.Drawing.Printing.PrintPageEventArgs e, Point p, string text) - { - PrintAt(e, p.X, p.Y, text); - } - - - void PrintAt(System.Drawing.Printing.PrintPageEventArgs e, int x, int y, string text) - { - RectangleF printArea = new RectangleF(x, y, 667, 18); - e.Graphics.DrawString(text, this.font, Brushes.Black, printArea); - } - } -} diff --git a/TBF/BenchControl/Output/Printers/Label/Printer.cs b/TBF/BenchControl/Output/Printers/Label/Printer.cs index b56fed008..6536b8390 100644 --- a/TBF/BenchControl/Output/Printers/Label/Printer.cs +++ b/TBF/BenchControl/Output/Printers/Label/Printer.cs @@ -76,6 +76,12 @@ namespace TBF.BenchControl.Output.Printers.Label printerCfg.NrOfCopies = newCfg.NrOfCopies; printerCfg.GoodOnly = newCfg.GoodOnly; printerCfg.SupressPrinting = newCfg.SupressPrinting; + printerCfg.DrawSNasBarcode = newCfg.DrawSNasBarcode; + printerCfg.IsQR = newCfg.IsQR; + printerCfg.BarcodeLeft = newCfg.BarcodeLeft; + printerCfg.BarcodeTop = newCfg.BarcodeTop; + printerCfg.BarcodeWidth = newCfg.BarcodeWidth; + printerCfg.BarcodeHeight = newCfg.BarcodeHeight; ApplyConfig(); } @@ -131,7 +137,6 @@ namespace TBF.BenchControl.Output.Printers.Label } - void PrintResults(Results.Entities.Batch batch, Results.Entities.WaterMeter wm, string documentName) { LabelPrinterCfg cfg = new LabelPrinterCfg @@ -147,6 +152,12 @@ namespace TBF.BenchControl.Output.Printers.Label CultureInfo = (printerCfg.Culture == Culture.system) ? Thread.CurrentThread.CurrentCulture : new CultureInfo(printerCfg.Culture.ToString()), GoodOnly = printerCfg.GoodOnly, SupressPrinting = printerCfg.SupressPrinting, + DrawSNasBarcode = printerCfg.DrawSNasBarcode, + IsQR = printerCfg.IsQR, + BarcodeLeft = printerCfg.BarcodeLeft, + BarcodeTop = printerCfg.BarcodeTop, + BarcodeWidth = printerCfg.BarcodeWidth, + BarcodeHeight = printerCfg.BarcodeHeight, }; for (int i = 1; i <= printerCfg.NrOfCopies; i++) diff --git a/TBF/BenchControl/Output/Printers/Label/PrinterCfg.cs b/TBF/BenchControl/Output/Printers/Label/PrinterCfg.cs index ec64399ad..0f91176b9 100644 --- a/TBF/BenchControl/Output/Printers/Label/PrinterCfg.cs +++ b/TBF/BenchControl/Output/Printers/Label/PrinterCfg.cs @@ -1,5 +1,5 @@ /// -/// Copyright (c) 2015-2018 Sensus Slovensko a.s. +/// Copyright (c) 2015-2020 Sensus Slovensko a.s. /// using System; using System.Collections.Generic; @@ -33,6 +33,14 @@ namespace TBF.BenchControl.Output.Printers.Label public bool GoodOnly; public bool SupressPrinting; /// true = Bypass printing + public bool DrawSNasBarcode; + public bool IsQR; + public int BarcodeLeft; + public int BarcodeTop; + public int BarcodeWidth; + public int BarcodeHeight; + + /// Private parameterless constructor invoked by all other (public) constructors PrinterCfg() { @@ -55,18 +63,20 @@ namespace TBF.BenchControl.Output.Printers.Label NrOfCopies = 1; GoodOnly = false; SupressPrinting = false; + DrawSNasBarcode = false; } public string ToString(int i) { - return string.Format("Name={0}, Orientation={1}, PaperWidth={2}, PaperHeight={3}, TemplateFile={4}, GoodOnly={5}, SupressPrinting={6}", + return string.Format("Name={0}, Orientation={1}, PaperWidth={2}, PaperHeight={3}, TemplateFile={4}, GoodOnly={5}, SupressPrinting={6}, Barcode={7}", Name, PageOrientation, PaperWidth, PaperHeight, Template, GoodOnly ? "yes" : "no", - SupressPrinting ? "yes" : "no" + SupressPrinting ? "yes" : "no", + DrawSNasBarcode ? "yes" : "no" ); } } diff --git a/TBF/BenchControl/Output/Printers/Label/PrinterCfgCtrl.Designer.cs b/TBF/BenchControl/Output/Printers/Label/PrinterCfgCtrl.Designer.cs index 0be840a9b..fd04c5c4f 100644 --- a/TBF/BenchControl/Output/Printers/Label/PrinterCfgCtrl.Designer.cs +++ b/TBF/BenchControl/Output/Printers/Label/PrinterCfgCtrl.Designer.cs @@ -31,296 +31,407 @@ namespace TBF.BenchControl.Output.Printers.Label /// private void InitializeComponent() { - this.nameTextBox = new System.Windows.Forms.TextBox(); - this.nameLabel = new System.Windows.Forms.Label(); - this.classNameLabel = new System.Windows.Forms.Label(); - this.supressPrintingCheckBox = new System.Windows.Forms.CheckBox(); - this.orientationLabel = new System.Windows.Forms.Label(); - this.orientationComboBox = new System.Windows.Forms.ComboBox(); - this.templateTextBox = new System.Windows.Forms.TextBox(); - this.templateLabel = new System.Windows.Forms.Label(); - this.paperWidthTextBox = new System.Windows.Forms.TextBox(); - this.paperWidthLabel = new System.Windows.Forms.Label(); - this.paperHeightTextBox = new System.Windows.Forms.TextBox(); - this.paperHeightLabel = new System.Windows.Forms.Label(); - this.italicCheckBox = new System.Windows.Forms.CheckBox(); - this.boldCheckBox = new System.Windows.Forms.CheckBox(); - this.fontSizeTextBox = new System.Windows.Forms.TextBox(); - this.fontFamilyComboBox = new System.Windows.Forms.ComboBox(); - this.bodyFontLabel = new System.Windows.Forms.Label(); - this.label2 = new System.Windows.Forms.Label(); - this.label1 = new System.Windows.Forms.Label(); - this.itemsToPrintButton = new System.Windows.Forms.Button(); - this.nrOfCopiesLabel = new System.Windows.Forms.Label(); - this.nrOfCopiesTextBox = new System.Windows.Forms.TextBox(); - this.cultureComboBox = new System.Windows.Forms.ComboBox(); - this.cultureLabel = new System.Windows.Forms.Label(); - this.goodOnlyCheckBox = new System.Windows.Forms.CheckBox(); - this.SuspendLayout(); - // - // nameTextBox - // - this.nameTextBox.Enabled = false; - this.nameTextBox.Location = new System.Drawing.Point(122, 35); - this.nameTextBox.Name = "nameTextBox"; - this.nameTextBox.Size = new System.Drawing.Size(130, 20); - this.nameTextBox.TabIndex = 2; - // - // nameLabel - // - this.nameLabel.AutoSize = true; - this.nameLabel.Location = new System.Drawing.Point(8, 38); - this.nameLabel.Name = "nameLabel"; - this.nameLabel.Size = new System.Drawing.Size(35, 13); - this.nameLabel.TabIndex = 1; - this.nameLabel.Text = "Name"; - // - // classNameLabel - // - this.classNameLabel.AutoSize = true; - this.classNameLabel.Location = new System.Drawing.Point(119, 11); - this.classNameLabel.Name = "classNameLabel"; - this.classNameLabel.Size = new System.Drawing.Size(61, 13); - this.classNameLabel.TabIndex = 0; - this.classNameLabel.Text = "Class name"; - // - // supressPrintingCheckBox - // - this.supressPrintingCheckBox.AutoSize = true; - this.supressPrintingCheckBox.Enabled = false; - this.supressPrintingCheckBox.Location = new System.Drawing.Point(122, 283); - this.supressPrintingCheckBox.Name = "supressPrintingCheckBox"; - this.supressPrintingCheckBox.Size = new System.Drawing.Size(101, 17); - this.supressPrintingCheckBox.TabIndex = 11; - this.supressPrintingCheckBox.Text = "Supress printing"; - this.supressPrintingCheckBox.UseVisualStyleBackColor = true; - // - // orientationLabel - // - this.orientationLabel.AutoSize = true; - this.orientationLabel.Location = new System.Drawing.Point(8, 84); - this.orientationLabel.Name = "orientationLabel"; - this.orientationLabel.Size = new System.Drawing.Size(84, 13); - this.orientationLabel.TabIndex = 3; - this.orientationLabel.Text = "Page orientation"; - // - // orientationComboBox - // - this.orientationComboBox.Enabled = false; - this.orientationComboBox.FormattingEnabled = true; - this.orientationComboBox.Location = new System.Drawing.Point(122, 81); - this.orientationComboBox.Name = "orientationComboBox"; - this.orientationComboBox.Size = new System.Drawing.Size(130, 21); - this.orientationComboBox.TabIndex = 4; - // - // templateTextBox - // - this.templateTextBox.Enabled = false; - this.templateTextBox.Location = new System.Drawing.Point(122, 58); - this.templateTextBox.Name = "templateTextBox"; - this.templateTextBox.Size = new System.Drawing.Size(228, 20); - this.templateTextBox.TabIndex = 10; - // - // templateLabel - // - this.templateLabel.AutoSize = true; - this.templateLabel.Location = new System.Drawing.Point(8, 61); - this.templateLabel.Name = "templateLabel"; - this.templateLabel.Size = new System.Drawing.Size(67, 13); - this.templateLabel.TabIndex = 9; - this.templateLabel.Text = "Template file"; - // - // paperWidthTextBox - // - this.paperWidthTextBox.Enabled = false; - this.paperWidthTextBox.Location = new System.Drawing.Point(122, 105); - this.paperWidthTextBox.Name = "paperWidthTextBox"; - this.paperWidthTextBox.Size = new System.Drawing.Size(51, 20); - this.paperWidthTextBox.TabIndex = 6; - // - // paperWidthLabel - // - this.paperWidthLabel.AutoSize = true; - this.paperWidthLabel.Location = new System.Drawing.Point(8, 108); - this.paperWidthLabel.Name = "paperWidthLabel"; - this.paperWidthLabel.Size = new System.Drawing.Size(63, 13); - this.paperWidthLabel.TabIndex = 5; - this.paperWidthLabel.Text = "Paper width"; - // - // paperHeightTextBox - // - this.paperHeightTextBox.Enabled = false; - this.paperHeightTextBox.Location = new System.Drawing.Point(122, 128); - this.paperHeightTextBox.Name = "paperHeightTextBox"; - this.paperHeightTextBox.Size = new System.Drawing.Size(51, 20); - this.paperHeightTextBox.TabIndex = 8; - // - // paperHeightLabel - // - this.paperHeightLabel.AutoSize = true; - this.paperHeightLabel.Location = new System.Drawing.Point(8, 131); - this.paperHeightLabel.Name = "paperHeightLabel"; - this.paperHeightLabel.Size = new System.Drawing.Size(67, 13); - this.paperHeightLabel.TabIndex = 7; - this.paperHeightLabel.Text = "Paper height"; - // - // bodyItalicCheckBox - // - this.italicCheckBox.AutoSize = true; - this.italicCheckBox.Enabled = false; - this.italicCheckBox.Location = new System.Drawing.Point(335, 190); - this.italicCheckBox.Name = "bodyItalicCheckBox"; - this.italicCheckBox.Size = new System.Drawing.Size(15, 14); - this.italicCheckBox.TabIndex = 47; - this.italicCheckBox.UseVisualStyleBackColor = true; - // - // bodyBoldCheckBox - // - this.boldCheckBox.AutoSize = true; - this.boldCheckBox.Enabled = false; - this.boldCheckBox.Location = new System.Drawing.Point(307, 190); - this.boldCheckBox.Name = "bodyBoldCheckBox"; - this.boldCheckBox.Size = new System.Drawing.Size(15, 14); - this.boldCheckBox.TabIndex = 46; - this.boldCheckBox.UseVisualStyleBackColor = true; - // - // bodyFontSizeTextBox - // - this.fontSizeTextBox.Enabled = false; - this.fontSizeTextBox.Location = new System.Drawing.Point(259, 184); - this.fontSizeTextBox.Name = "bodyFontSizeTextBox"; - this.fontSizeTextBox.Size = new System.Drawing.Size(29, 20); - this.fontSizeTextBox.TabIndex = 45; - // - // bodyFontFamilyComboBox - // - this.fontFamilyComboBox.Enabled = false; - this.fontFamilyComboBox.FormattingEnabled = true; - this.fontFamilyComboBox.Location = new System.Drawing.Point(122, 184); - this.fontFamilyComboBox.Name = "bodyFontFamilyComboBox"; - this.fontFamilyComboBox.Size = new System.Drawing.Size(130, 21); - this.fontFamilyComboBox.TabIndex = 44; - // - // bodyFontLabel - // - this.bodyFontLabel.AutoSize = true; - this.bodyFontLabel.Location = new System.Drawing.Point(8, 187); - this.bodyFontLabel.Name = "bodyFontLabel"; - this.bodyFontLabel.Size = new System.Drawing.Size(106, 13); - this.bodyFontLabel.TabIndex = 43; - this.bodyFontLabel.Text = "Font family/size/style"; - // - // label2 - // - this.label2.AutoSize = true; - this.label2.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(238))); - this.label2.Location = new System.Drawing.Point(331, 175); - this.label2.Name = "label2"; - this.label2.Size = new System.Drawing.Size(24, 13); - this.label2.TabIndex = 49; - this.label2.Text = "Ital."; - // - // label1 - // - this.label1.AutoSize = true; - this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238))); - this.label1.Location = new System.Drawing.Point(297, 175); - this.label1.Name = "label1"; - this.label1.Size = new System.Drawing.Size(32, 13); - this.label1.TabIndex = 48; - this.label1.Text = "Bold"; - // - // itemsToPrintButton - // - this.itemsToPrintButton.Enabled = false; - this.itemsToPrintButton.Location = new System.Drawing.Point(121, 154); - this.itemsToPrintButton.Name = "itemsToPrintButton"; - this.itemsToPrintButton.Size = new System.Drawing.Size(132, 23); - this.itemsToPrintButton.TabIndex = 50; - this.itemsToPrintButton.Text = "Items to print"; - this.itemsToPrintButton.UseVisualStyleBackColor = true; - this.itemsToPrintButton.Click += new System.EventHandler(this.itemsToPrintButton_Click); - // - // nrOfCopiesLabel - // - this.nrOfCopiesLabel.AutoSize = true; - this.nrOfCopiesLabel.Location = new System.Drawing.Point(8, 235); - this.nrOfCopiesLabel.Name = "nrOfCopiesLabel"; - this.nrOfCopiesLabel.Size = new System.Drawing.Size(90, 13); - this.nrOfCopiesLabel.TabIndex = 52; - this.nrOfCopiesLabel.Text = "Number of copies"; - // - // nrOfCopiesTextBox - // - this.nrOfCopiesTextBox.Enabled = false; - this.nrOfCopiesTextBox.Location = new System.Drawing.Point(122, 232); - this.nrOfCopiesTextBox.Name = "nrOfCopiesTextBox"; - this.nrOfCopiesTextBox.Size = new System.Drawing.Size(51, 20); - this.nrOfCopiesTextBox.TabIndex = 51; - // - // cultureComboBox - // - this.cultureComboBox.Enabled = false; - this.cultureComboBox.FormattingEnabled = true; - this.cultureComboBox.Location = new System.Drawing.Point(122, 208); - this.cultureComboBox.Name = "cultureComboBox"; - this.cultureComboBox.Size = new System.Drawing.Size(218, 21); - this.cultureComboBox.TabIndex = 54; - // - // cultureLabel - // - this.cultureLabel.AutoSize = true; - this.cultureLabel.Location = new System.Drawing.Point(8, 211); - this.cultureLabel.Name = "cultureLabel"; - this.cultureLabel.Size = new System.Drawing.Size(42, 13); - this.cultureLabel.TabIndex = 53; - this.cultureLabel.Text = "Cullture"; - // - // goodOnlyCheckBox - // - this.goodOnlyCheckBox.AutoSize = true; - this.goodOnlyCheckBox.Enabled = false; - this.goodOnlyCheckBox.Location = new System.Drawing.Point(122, 262); - this.goodOnlyCheckBox.Name = "goodOnlyCheckBox"; - this.goodOnlyCheckBox.Size = new System.Drawing.Size(74, 17); - this.goodOnlyCheckBox.TabIndex = 55; - this.goodOnlyCheckBox.Text = "Good only"; - this.goodOnlyCheckBox.UseVisualStyleBackColor = true; - // - // PrinterCfgCtrl - // - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.Controls.Add(this.goodOnlyCheckBox); - this.Controls.Add(this.cultureComboBox); - this.Controls.Add(this.cultureLabel); - this.Controls.Add(this.nrOfCopiesLabel); - this.Controls.Add(this.nrOfCopiesTextBox); - this.Controls.Add(this.itemsToPrintButton); - this.Controls.Add(this.italicCheckBox); - this.Controls.Add(this.boldCheckBox); - this.Controls.Add(this.fontSizeTextBox); - this.Controls.Add(this.fontFamilyComboBox); - this.Controls.Add(this.bodyFontLabel); - this.Controls.Add(this.label2); - this.Controls.Add(this.label1); - this.Controls.Add(this.paperHeightTextBox); - this.Controls.Add(this.paperHeightLabel); - this.Controls.Add(this.paperWidthTextBox); - this.Controls.Add(this.paperWidthLabel); - this.Controls.Add(this.templateTextBox); - this.Controls.Add(this.templateLabel); - this.Controls.Add(this.orientationComboBox); - this.Controls.Add(this.orientationLabel); - this.Controls.Add(this.supressPrintingCheckBox); - this.Controls.Add(this.nameTextBox); - this.Controls.Add(this.nameLabel); - this.Controls.Add(this.classNameLabel); - this.Name = "PrinterCfgCtrl"; - this.Size = new System.Drawing.Size(372, 327); - this.Load += new System.EventHandler(this.PrinterCfgCtrl_Load); - this.ResumeLayout(false); - this.PerformLayout(); + this.nameTextBox = new System.Windows.Forms.TextBox(); + this.nameLabel = new System.Windows.Forms.Label(); + this.classNameLabel = new System.Windows.Forms.Label(); + this.supressPrintingCheckBox = new System.Windows.Forms.CheckBox(); + this.orientationLabel = new System.Windows.Forms.Label(); + this.orientationComboBox = new System.Windows.Forms.ComboBox(); + this.templateTextBox = new System.Windows.Forms.TextBox(); + this.templateLabel = new System.Windows.Forms.Label(); + this.paperWidthTextBox = new System.Windows.Forms.TextBox(); + this.paperWidthLabel = new System.Windows.Forms.Label(); + this.paperHeightTextBox = new System.Windows.Forms.TextBox(); + this.italicCheckBox = new System.Windows.Forms.CheckBox(); + this.boldCheckBox = new System.Windows.Forms.CheckBox(); + this.fontSizeTextBox = new System.Windows.Forms.TextBox(); + this.fontFamilyComboBox = new System.Windows.Forms.ComboBox(); + this.bodyFontLabel = new System.Windows.Forms.Label(); + this.label2 = new System.Windows.Forms.Label(); + this.label1 = new System.Windows.Forms.Label(); + this.itemsToPrintButton = new System.Windows.Forms.Button(); + this.nrOfCopiesLabel = new System.Windows.Forms.Label(); + this.nrOfCopiesTextBox = new System.Windows.Forms.TextBox(); + this.cultureComboBox = new System.Windows.Forms.ComboBox(); + this.cultureLabel = new System.Windows.Forms.Label(); + this.goodOnlyCheckBox = new System.Windows.Forms.CheckBox(); + this.snBarcodeGroupBox = new System.Windows.Forms.GroupBox(); + this.barcodeHeightLabel = new System.Windows.Forms.Label(); + this.barcodeHeightTextBox = new System.Windows.Forms.TextBox(); + this.isQrCheckBox = new System.Windows.Forms.CheckBox(); + this.barcodeWidthLabel = new System.Windows.Forms.Label(); + this.barcodeWidthTextBox = new System.Windows.Forms.TextBox(); + this.barcodeTopLabel = new System.Windows.Forms.Label(); + this.barcodeTopTextBox = new System.Windows.Forms.TextBox(); + this.barcodeLeftTextBox = new System.Windows.Forms.TextBox(); + this.barcodeLeftLabel = new System.Windows.Forms.Label(); + this.snBarcodeCheckBox = new System.Windows.Forms.CheckBox(); + this.snBarcodeGroupBox.SuspendLayout(); + this.SuspendLayout(); + // + // nameTextBox + // + this.nameTextBox.Enabled = false; + this.nameTextBox.Location = new System.Drawing.Point(122, 35); + this.nameTextBox.Name = "nameTextBox"; + this.nameTextBox.Size = new System.Drawing.Size(130, 20); + this.nameTextBox.TabIndex = 2; + // + // nameLabel + // + this.nameLabel.AutoSize = true; + this.nameLabel.Location = new System.Drawing.Point(8, 38); + this.nameLabel.Name = "nameLabel"; + this.nameLabel.Size = new System.Drawing.Size(35, 13); + this.nameLabel.TabIndex = 1; + this.nameLabel.Text = "Name"; + // + // classNameLabel + // + this.classNameLabel.AutoSize = true; + this.classNameLabel.Location = new System.Drawing.Point(119, 11); + this.classNameLabel.Name = "classNameLabel"; + this.classNameLabel.Size = new System.Drawing.Size(61, 13); + this.classNameLabel.TabIndex = 0; + this.classNameLabel.Text = "Class name"; + // + // supressPrintingCheckBox + // + this.supressPrintingCheckBox.AutoSize = true; + this.supressPrintingCheckBox.Enabled = false; + this.supressPrintingCheckBox.Location = new System.Drawing.Point(245, 200); + this.supressPrintingCheckBox.Name = "supressPrintingCheckBox"; + this.supressPrintingCheckBox.Size = new System.Drawing.Size(101, 17); + this.supressPrintingCheckBox.TabIndex = 11; + this.supressPrintingCheckBox.Text = "Supress printing"; + this.supressPrintingCheckBox.UseVisualStyleBackColor = true; + // + // orientationLabel + // + this.orientationLabel.AutoSize = true; + this.orientationLabel.Location = new System.Drawing.Point(8, 84); + this.orientationLabel.Name = "orientationLabel"; + this.orientationLabel.Size = new System.Drawing.Size(84, 13); + this.orientationLabel.TabIndex = 3; + this.orientationLabel.Text = "Page orientation"; + // + // orientationComboBox + // + this.orientationComboBox.Enabled = false; + this.orientationComboBox.FormattingEnabled = true; + this.orientationComboBox.Location = new System.Drawing.Point(122, 81); + this.orientationComboBox.Name = "orientationComboBox"; + this.orientationComboBox.Size = new System.Drawing.Size(130, 21); + this.orientationComboBox.TabIndex = 4; + // + // templateTextBox + // + this.templateTextBox.Enabled = false; + this.templateTextBox.Location = new System.Drawing.Point(122, 58); + this.templateTextBox.Name = "templateTextBox"; + this.templateTextBox.Size = new System.Drawing.Size(228, 20); + this.templateTextBox.TabIndex = 10; + // + // templateLabel + // + this.templateLabel.AutoSize = true; + this.templateLabel.Location = new System.Drawing.Point(8, 61); + this.templateLabel.Name = "templateLabel"; + this.templateLabel.Size = new System.Drawing.Size(67, 13); + this.templateLabel.TabIndex = 9; + this.templateLabel.Text = "Template file"; + // + // paperWidthTextBox + // + this.paperWidthTextBox.Enabled = false; + this.paperWidthTextBox.Location = new System.Drawing.Point(122, 105); + this.paperWidthTextBox.Name = "paperWidthTextBox"; + this.paperWidthTextBox.Size = new System.Drawing.Size(51, 20); + this.paperWidthTextBox.TabIndex = 6; + // + // paperWidthLabel + // + this.paperWidthLabel.AutoSize = true; + this.paperWidthLabel.Location = new System.Drawing.Point(8, 108); + this.paperWidthLabel.Name = "paperWidthLabel"; + this.paperWidthLabel.Size = new System.Drawing.Size(103, 13); + this.paperWidthLabel.TabIndex = 5; + this.paperWidthLabel.Text = "Paper width / height"; + // + // paperHeightTextBox + // + this.paperHeightTextBox.Enabled = false; + this.paperHeightTextBox.Location = new System.Drawing.Point(176, 105); + this.paperHeightTextBox.Name = "paperHeightTextBox"; + this.paperHeightTextBox.Size = new System.Drawing.Size(51, 20); + this.paperHeightTextBox.TabIndex = 8; + // + // italicCheckBox + // + this.italicCheckBox.AutoSize = true; + this.italicCheckBox.Enabled = false; + this.italicCheckBox.Location = new System.Drawing.Point(335, 134); + this.italicCheckBox.Name = "italicCheckBox"; + this.italicCheckBox.Size = new System.Drawing.Size(15, 14); + this.italicCheckBox.TabIndex = 47; + this.italicCheckBox.UseVisualStyleBackColor = true; + // + // boldCheckBox + // + this.boldCheckBox.AutoSize = true; + this.boldCheckBox.Enabled = false; + this.boldCheckBox.Location = new System.Drawing.Point(307, 134); + this.boldCheckBox.Name = "boldCheckBox"; + this.boldCheckBox.Size = new System.Drawing.Size(15, 14); + this.boldCheckBox.TabIndex = 46; + this.boldCheckBox.UseVisualStyleBackColor = true; + // + // fontSizeTextBox + // + this.fontSizeTextBox.Enabled = false; + this.fontSizeTextBox.Location = new System.Drawing.Point(259, 128); + this.fontSizeTextBox.Name = "fontSizeTextBox"; + this.fontSizeTextBox.Size = new System.Drawing.Size(29, 20); + this.fontSizeTextBox.TabIndex = 45; + // + // fontFamilyComboBox + // + this.fontFamilyComboBox.Enabled = false; + this.fontFamilyComboBox.FormattingEnabled = true; + this.fontFamilyComboBox.Location = new System.Drawing.Point(122, 128); + this.fontFamilyComboBox.Name = "fontFamilyComboBox"; + this.fontFamilyComboBox.Size = new System.Drawing.Size(130, 21); + this.fontFamilyComboBox.TabIndex = 44; + // + // bodyFontLabel + // + this.bodyFontLabel.AutoSize = true; + this.bodyFontLabel.Location = new System.Drawing.Point(8, 131); + this.bodyFontLabel.Name = "bodyFontLabel"; + this.bodyFontLabel.Size = new System.Drawing.Size(106, 13); + this.bodyFontLabel.TabIndex = 43; + this.bodyFontLabel.Text = "Font family/size/style"; + // + // label2 + // + this.label2.AutoSize = true; + this.label2.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.label2.Location = new System.Drawing.Point(331, 119); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(24, 13); + this.label2.TabIndex = 49; + this.label2.Text = "Ital."; + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.label1.Location = new System.Drawing.Point(297, 119); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(32, 13); + this.label1.TabIndex = 48; + this.label1.Text = "Bold"; + // + // itemsToPrintButton + // + this.itemsToPrintButton.Enabled = false; + this.itemsToPrintButton.Location = new System.Drawing.Point(259, 85); + this.itemsToPrintButton.Name = "itemsToPrintButton"; + this.itemsToPrintButton.Size = new System.Drawing.Size(91, 30); + this.itemsToPrintButton.TabIndex = 50; + this.itemsToPrintButton.Text = "Items to print"; + this.itemsToPrintButton.UseVisualStyleBackColor = true; + this.itemsToPrintButton.Click += new System.EventHandler(this.itemsToPrintButton_Click); + // + // nrOfCopiesLabel + // + this.nrOfCopiesLabel.AutoSize = true; + this.nrOfCopiesLabel.Location = new System.Drawing.Point(8, 179); + this.nrOfCopiesLabel.Name = "nrOfCopiesLabel"; + this.nrOfCopiesLabel.Size = new System.Drawing.Size(90, 13); + this.nrOfCopiesLabel.TabIndex = 52; + this.nrOfCopiesLabel.Text = "Number of copies"; + // + // nrOfCopiesTextBox + // + this.nrOfCopiesTextBox.Enabled = false; + this.nrOfCopiesTextBox.Location = new System.Drawing.Point(122, 176); + this.nrOfCopiesTextBox.Name = "nrOfCopiesTextBox"; + this.nrOfCopiesTextBox.Size = new System.Drawing.Size(51, 20); + this.nrOfCopiesTextBox.TabIndex = 51; + // + // cultureComboBox + // + this.cultureComboBox.Enabled = false; + this.cultureComboBox.FormattingEnabled = true; + this.cultureComboBox.Location = new System.Drawing.Point(122, 152); + this.cultureComboBox.Name = "cultureComboBox"; + this.cultureComboBox.Size = new System.Drawing.Size(228, 21); + this.cultureComboBox.TabIndex = 54; + // + // cultureLabel + // + this.cultureLabel.AutoSize = true; + this.cultureLabel.Location = new System.Drawing.Point(8, 155); + this.cultureLabel.Name = "cultureLabel"; + this.cultureLabel.Size = new System.Drawing.Size(42, 13); + this.cultureLabel.TabIndex = 53; + this.cultureLabel.Text = "Cullture"; + // + // goodOnlyCheckBox + // + this.goodOnlyCheckBox.AutoSize = true; + this.goodOnlyCheckBox.Enabled = false; + this.goodOnlyCheckBox.Location = new System.Drawing.Point(245, 179); + this.goodOnlyCheckBox.Name = "goodOnlyCheckBox"; + this.goodOnlyCheckBox.Size = new System.Drawing.Size(74, 17); + this.goodOnlyCheckBox.TabIndex = 55; + this.goodOnlyCheckBox.Text = "Good only"; + this.goodOnlyCheckBox.UseVisualStyleBackColor = true; + // + // snBarcodeGroupBox + // + this.snBarcodeGroupBox.Controls.Add(this.barcodeHeightLabel); + this.snBarcodeGroupBox.Controls.Add(this.barcodeHeightTextBox); + this.snBarcodeGroupBox.Controls.Add(this.isQrCheckBox); + this.snBarcodeGroupBox.Controls.Add(this.barcodeWidthLabel); + this.snBarcodeGroupBox.Controls.Add(this.barcodeWidthTextBox); + this.snBarcodeGroupBox.Controls.Add(this.barcodeTopLabel); + this.snBarcodeGroupBox.Controls.Add(this.barcodeTopTextBox); + this.snBarcodeGroupBox.Controls.Add(this.barcodeLeftTextBox); + this.snBarcodeGroupBox.Controls.Add(this.barcodeLeftLabel); + this.snBarcodeGroupBox.Controls.Add(this.snBarcodeCheckBox); + this.snBarcodeGroupBox.Location = new System.Drawing.Point(11, 227); + this.snBarcodeGroupBox.Name = "snBarcodeGroupBox"; + this.snBarcodeGroupBox.Size = new System.Drawing.Size(339, 59); + this.snBarcodeGroupBox.TabIndex = 56; + this.snBarcodeGroupBox.TabStop = false; + // + // barcodeHeightLabel + // + this.barcodeHeightLabel.AutoSize = true; + this.barcodeHeightLabel.Location = new System.Drawing.Point(207, 29); + this.barcodeHeightLabel.Name = "barcodeHeightLabel"; + this.barcodeHeightLabel.Size = new System.Drawing.Size(38, 13); + this.barcodeHeightLabel.TabIndex = 18; + this.barcodeHeightLabel.Text = "Height"; + // + // barcodeHeightTextBox + // + this.barcodeHeightTextBox.Enabled = false; + this.barcodeHeightTextBox.Location = new System.Drawing.Point(247, 25); + this.barcodeHeightTextBox.Name = "barcodeHeightTextBox"; + this.barcodeHeightTextBox.Size = new System.Drawing.Size(32, 20); + this.barcodeHeightTextBox.TabIndex = 17; + // + // isQrCheckBox + // + this.isQrCheckBox.AutoSize = true; + this.isQrCheckBox.Location = new System.Drawing.Point(293, 27); + this.isQrCheckBox.Name = "isQrCheckBox"; + this.isQrCheckBox.Size = new System.Drawing.Size(42, 17); + this.isQrCheckBox.TabIndex = 16; + this.isQrCheckBox.Text = "QR"; + this.isQrCheckBox.UseVisualStyleBackColor = true; + // + // barcodeWidthLabel + // + this.barcodeWidthLabel.AutoSize = true; + this.barcodeWidthLabel.Location = new System.Drawing.Point(135, 29); + this.barcodeWidthLabel.Name = "barcodeWidthLabel"; + this.barcodeWidthLabel.Size = new System.Drawing.Size(35, 13); + this.barcodeWidthLabel.TabIndex = 15; + this.barcodeWidthLabel.Text = "Width"; + // + // barcodeWidthTextBox + // + this.barcodeWidthTextBox.Enabled = false; + this.barcodeWidthTextBox.Location = new System.Drawing.Point(171, 25); + this.barcodeWidthTextBox.Name = "barcodeWidthTextBox"; + this.barcodeWidthTextBox.Size = new System.Drawing.Size(32, 20); + this.barcodeWidthTextBox.TabIndex = 14; + // + // barcodeTopLabel + // + this.barcodeTopLabel.AutoSize = true; + this.barcodeTopLabel.Location = new System.Drawing.Point(71, 29); + this.barcodeTopLabel.Name = "barcodeTopLabel"; + this.barcodeTopLabel.Size = new System.Drawing.Size(26, 13); + this.barcodeTopLabel.TabIndex = 13; + this.barcodeTopLabel.Text = "Top"; + // + // barcodeTopTextBox + // + this.barcodeTopTextBox.Enabled = false; + this.barcodeTopTextBox.Location = new System.Drawing.Point(99, 25); + this.barcodeTopTextBox.Name = "barcodeTopTextBox"; + this.barcodeTopTextBox.Size = new System.Drawing.Size(32, 20); + this.barcodeTopTextBox.TabIndex = 11; + // + // barcodeLeftTextBox + // + this.barcodeLeftTextBox.Enabled = false; + this.barcodeLeftTextBox.Location = new System.Drawing.Point(35, 25); + this.barcodeLeftTextBox.Name = "barcodeLeftTextBox"; + this.barcodeLeftTextBox.Size = new System.Drawing.Size(32, 20); + this.barcodeLeftTextBox.TabIndex = 10; + // + // barcodeLeftLabel + // + this.barcodeLeftLabel.AutoSize = true; + this.barcodeLeftLabel.Location = new System.Drawing.Point(8, 29); + this.barcodeLeftLabel.Name = "barcodeLeftLabel"; + this.barcodeLeftLabel.Size = new System.Drawing.Size(25, 13); + this.barcodeLeftLabel.TabIndex = 9; + this.barcodeLeftLabel.Text = "Left"; + // + // snBarcodeCheckBox + // + this.snBarcodeCheckBox.AutoSize = true; + this.snBarcodeCheckBox.Location = new System.Drawing.Point(10, 0); + this.snBarcodeCheckBox.Name = "snBarcodeCheckBox"; + this.snBarcodeCheckBox.Size = new System.Drawing.Size(176, 17); + this.snBarcodeCheckBox.TabIndex = 0; + this.snBarcodeCheckBox.Text = "Print barcode with serial number"; + this.snBarcodeCheckBox.UseVisualStyleBackColor = true; + this.snBarcodeCheckBox.CheckedChanged += new System.EventHandler(this.snBarcodeCheckBox_CheckedChanged); + // + // PrinterCfgCtrl + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.snBarcodeGroupBox); + this.Controls.Add(this.goodOnlyCheckBox); + this.Controls.Add(this.cultureComboBox); + this.Controls.Add(this.cultureLabel); + this.Controls.Add(this.nrOfCopiesLabel); + this.Controls.Add(this.nrOfCopiesTextBox); + this.Controls.Add(this.itemsToPrintButton); + this.Controls.Add(this.italicCheckBox); + this.Controls.Add(this.boldCheckBox); + this.Controls.Add(this.fontSizeTextBox); + this.Controls.Add(this.fontFamilyComboBox); + this.Controls.Add(this.bodyFontLabel); + this.Controls.Add(this.label2); + this.Controls.Add(this.label1); + this.Controls.Add(this.paperHeightTextBox); + this.Controls.Add(this.paperWidthTextBox); + this.Controls.Add(this.paperWidthLabel); + this.Controls.Add(this.templateTextBox); + this.Controls.Add(this.templateLabel); + this.Controls.Add(this.orientationComboBox); + this.Controls.Add(this.orientationLabel); + this.Controls.Add(this.supressPrintingCheckBox); + this.Controls.Add(this.nameTextBox); + this.Controls.Add(this.nameLabel); + this.Controls.Add(this.classNameLabel); + this.Name = "PrinterCfgCtrl"; + this.Size = new System.Drawing.Size(372, 327); + this.Load += new System.EventHandler(this.PrinterCfgCtrl_Load); + this.snBarcodeGroupBox.ResumeLayout(false); + this.snBarcodeGroupBox.PerformLayout(); + this.ResumeLayout(false); + this.PerformLayout(); } @@ -336,8 +447,7 @@ namespace TBF.BenchControl.Output.Printers.Label private System.Windows.Forms.Label templateLabel; private System.Windows.Forms.TextBox paperWidthTextBox; private System.Windows.Forms.Label paperWidthLabel; - private System.Windows.Forms.TextBox paperHeightTextBox; - private System.Windows.Forms.Label paperHeightLabel; + private System.Windows.Forms.TextBox paperHeightTextBox; private System.Windows.Forms.CheckBox italicCheckBox; private System.Windows.Forms.CheckBox boldCheckBox; private System.Windows.Forms.TextBox fontSizeTextBox; @@ -351,5 +461,16 @@ namespace TBF.BenchControl.Output.Printers.Label private System.Windows.Forms.ComboBox cultureComboBox; private System.Windows.Forms.Label cultureLabel; private System.Windows.Forms.CheckBox goodOnlyCheckBox; + private System.Windows.Forms.GroupBox snBarcodeGroupBox; + private System.Windows.Forms.TextBox barcodeTopTextBox; + private System.Windows.Forms.TextBox barcodeLeftTextBox; + private System.Windows.Forms.Label barcodeLeftLabel; + private System.Windows.Forms.CheckBox snBarcodeCheckBox; + private System.Windows.Forms.Label barcodeWidthLabel; + private System.Windows.Forms.TextBox barcodeWidthTextBox; + private System.Windows.Forms.Label barcodeTopLabel; + private System.Windows.Forms.CheckBox isQrCheckBox; + private System.Windows.Forms.Label barcodeHeightLabel; + private System.Windows.Forms.TextBox barcodeHeightTextBox; } } diff --git a/TBF/BenchControl/Output/Printers/Label/PrinterCfgCtrl.cs b/TBF/BenchControl/Output/Printers/Label/PrinterCfgCtrl.cs index b1e9f5a5b..173ff909b 100644 --- a/TBF/BenchControl/Output/Printers/Label/PrinterCfgCtrl.cs +++ b/TBF/BenchControl/Output/Printers/Label/PrinterCfgCtrl.cs @@ -1,7 +1,8 @@ /// -/// Copyright (c) 2015-2018 Sensus Slovensko a.s. +/// Copyright (c) 2015-2020 Sensus Slovensko a.s. /// using System; +using System.Drawing; using System.IO; using System.Windows.Forms; using log4net; @@ -42,7 +43,9 @@ namespace TBF.BenchControl.Output.Printers.Label { fontFamilyComboBox.Items.Add(ff.Name); } - } + + ManageCheckGroupBox(snBarcodeCheckBox, snBarcodeGroupBox); + } private void PrinterCfgCtrl_Load(object sender, EventArgs e) { @@ -80,7 +83,14 @@ namespace TBF.BenchControl.Output.Printers.Label nrOfCopiesTextBox.Text = config.NrOfCopies.ToString(); goodOnlyCheckBox.Checked = config.GoodOnly; supressPrintingCheckBox.Checked = config.SupressPrinting; - } + + snBarcodeCheckBox.Checked = config.DrawSNasBarcode; + isQrCheckBox.Checked = config.IsQR; + barcodeLeftTextBox.Text = config.BarcodeLeft.ToString(); + barcodeTopTextBox.Text = config.BarcodeTop.ToString(); + barcodeWidthTextBox.Text = config.BarcodeWidth.ToString(); + barcodeHeightTextBox.Text = config.BarcodeHeight.ToString(); + } public void Unlock() { @@ -98,7 +108,20 @@ namespace TBF.BenchControl.Output.Printers.Label nrOfCopiesTextBox.Enabled = true; goodOnlyCheckBox.Enabled = true; supressPrintingCheckBox.Enabled = true; - } + + snBarcodeCheckBox.Enabled = true; + ManageCheckGroupBox(snBarcodeCheckBox, snBarcodeGroupBox); + isQrCheckBox.Enabled = true; + barcodeLeftTextBox.Enabled = true; + barcodeTopTextBox.Enabled = true; + barcodeWidthTextBox.Enabled = true; + barcodeHeightTextBox.Enabled = true; + } + + private void snBarcodeCheckBox_CheckedChanged(object sender, EventArgs e) + { + ManageCheckGroupBox(snBarcodeCheckBox, snBarcodeGroupBox); + } public CfgUpdateFlags VerifyCfg(ref string message) { @@ -142,6 +165,26 @@ namespace TBF.BenchControl.Output.Printers.Label message += Environment.NewLine + "'Number of copies' should be between 0 and 9"; flags |= CfgUpdateFlags.Error; } + if (!int.TryParse(barcodeLeftTextBox.Text, out dummy) || dummy < 0 || dummy > 2000) + { + message += Environment.NewLine + "Barcode 'Left' should be between 0 and 2000"; + flags |= CfgUpdateFlags.Error; + } + if (!int.TryParse(barcodeTopTextBox.Text, out dummy) || dummy < 0 || dummy > 2000) + { + message += Environment.NewLine + "Barcode 'Top' should be between 0 and 2000"; + flags |= CfgUpdateFlags.Error; + } + if (!int.TryParse(barcodeWidthTextBox.Text, out dummy) || dummy < 0 || dummy > 200) + { + message += Environment.NewLine + "Barcode 'Width' should be between 0 and 200"; + flags |= CfgUpdateFlags.Error; + } + if (!int.TryParse(barcodeHeightTextBox.Text, out dummy) || dummy < 0 || dummy > 200) + { + message += Environment.NewLine + "Barcode 'Height' should be between 0 and 200"; + flags |= CfgUpdateFlags.Error; + } return flags; } @@ -193,6 +236,13 @@ namespace TBF.BenchControl.Output.Printers.Label flags |= UpdateDifferent(ref config.GoodOnly, goodOnlyCheckBox.Checked, CfgUpdateFlags.InvokeCfgChange | CfgUpdateFlags.AnyChange); flags |= UpdateDifferent(ref config.SupressPrinting, supressPrintingCheckBox.Checked, CfgUpdateFlags.InvokeCfgChange | CfgUpdateFlags.AnyChange); + flags |= UpdateDifferent(ref config.DrawSNasBarcode, snBarcodeCheckBox.Checked, CfgUpdateFlags.InvokeCfgChange | CfgUpdateFlags.AnyChange); + flags |= UpdateDifferent(ref config.IsQR, isQrCheckBox.Checked, CfgUpdateFlags.InvokeCfgChange | CfgUpdateFlags.AnyChange); + flags |= UpdateDifferent(ref config.BarcodeLeft, barcodeLeftTextBox.Text, CfgUpdateFlags.InvokeCfgChange | CfgUpdateFlags.AnyChange); + flags |= UpdateDifferent(ref config.BarcodeTop, barcodeTopTextBox.Text, CfgUpdateFlags.InvokeCfgChange | CfgUpdateFlags.AnyChange); + flags |= UpdateDifferent(ref config.BarcodeWidth, barcodeWidthTextBox.Text, CfgUpdateFlags.InvokeCfgChange | CfgUpdateFlags.AnyChange); + flags |= UpdateDifferent(ref config.BarcodeHeight, barcodeHeightTextBox.Text, CfgUpdateFlags.InvokeCfgChange | CfgUpdateFlags.AnyChange); + if ((flags & CfgUpdateFlags.InvokeCfgChange) != 0) { Printer.OnCfgChange(this, new CfgChangeArgs(CfgChangeCmd.CfgChange, config)); @@ -214,6 +264,20 @@ namespace TBF.BenchControl.Output.Printers.Label } } + private void ManageCheckGroupBox(CheckBox chk, GroupBox grp) + { + /// Make sure the CheckBox isn't in the GroupBox. This will only happen the first time. + if (chk.Parent == grp) + { + grp.Parent.Controls.Add(chk); /// Reparent the CheckBox so it's not in the GroupBox. + chk.Location = new Point(chk.Left + grp.Left, chk.Top + grp.Top); /// Adjust the CheckBox's location. + chk.BringToFront(); /// Move the CheckBox to the top of the stacking order. + } + + /// Enable or disable the GroupBox. + grp.Enabled = chk.Checked; + } + #region Configuration Change Handling public static void OnCmdResponse(object sender, CmdResponseArgs args) diff --git a/TBF/TBF.csproj b/TBF/TBF.csproj index e199b4f0e..c60f61219 100644 --- a/TBF/TBF.csproj +++ b/TBF/TBF.csproj @@ -990,9 +990,6 @@ PrinterCfgCtrl.cs - - Component - diff --git a/packages/QrCode.Net.0.4.0.0/net40/Gma.QrCodeNet.Encoding.XML b/packages/QrCode.Net.0.4.0.0/net40/Gma.QrCodeNet.Encoding.XML new file mode 100644 index 000000000..7788ae4af --- /dev/null +++ b/packages/QrCode.Net.0.4.0.0/net40/Gma.QrCodeNet.Encoding.XML @@ -0,0 +1,1117 @@ + + + + Gma.QrCodeNet.Encoding + + + + + Table at chapter 8.4.3. P.21 + + + + + Convert char to int value + + Alpha Numeric Char + Table from chapter 8.4.3 P21 + + + ISO/IEC 18004:2000 Table 3 Page 18 + + + + Used to define length of the Character Count Indicator + + Returns the 0 based index of the row from Chapter 8.4 Data encodation, Table 3 — Number of bits in Character Count Indicator. + + + ISO/IEC 18004:2000 Chapter 8.1 Page 14 + DataEncode is combination of Data analysis and Data encodation step. + Which uses sub functions under several different namespaces + + + + ISO/IEC 18004:2006 Chapter 6.4.2 Mode indicator = 0111 Page 23 + + + + + Initialize ECI Set. + + AppendOption is enum under ECISet + Use NameToValue during Encode. ValueToName during Decode + + + ISO/IEC 18004:2006E ECI Designator Page 24 + Range: 0 ~ 999999 + Number of Codewords(Byte) for ECI Assignment Value + + + ISO/IEC 18004:2006E ECI Designator Page 24 + Range: 0 ~ 999999 + Number of bits for ECI Assignment Value + + + ISO/IEC 18004:2006E ECI Designator Page 24 + Range: 0 ~ 999999 + Number of bits for ECI Header + + + ECI table in Dictionary collection + + + ISO/IEC 18004:2006 Chapter 6.4.2 Page 24. + + + + Length indicator for number of ECI codewords + + ISO/IEC 18004:2006 Chapter 6.4.2 Page 24. + 1 codeword length = 0. Any additional codeword add 1 to front. Eg: 3 = 110 + Bits required for each one is: + one = 1, two = 2, three = 3 + + + + Use to recognise which mode and encoding name to use for input string. + + input string content + Output encoding name + Mode and Encoding name + + + + Encoding.GetEncoding.GetBytes will transform char to 0x3F if that char not belong to current encoding table. + 0x3F is '?' + + + + + Check char from startPos for string content. + + input string content + start check position + -2 Numeric encode, -1 AlphaNum encode, Index of failed check pos + + + + Use given encoding to check input string from starting position. If encoding table is suitable solution. + it will return -1. Else it will return failed encoding position. + + input string + encoding name. Check ECI table + starting position + -1 if from starting position to end encoding success. Else return fail position + + + + Check input string content. Whether it can apply Kanji encode or not. + + String input content + -1 if it can apply Kanji encode, -2 should use utf8 encode, 0 check for other encode. + + + + Calculate int length by search for Most significant bit + + Input Number + Most significant bit + + + + Search for right side bit of Most significant bit + + input number + lower boundary. At start should be 0 + higher boundary. At start should be 32 + Most significant bit - 1 + + + + With input number and polynomial number. Method will calculate BCH value and return + + input number + Polynomial number + BCH value + + + ISO/IEC 18004:2000 Chapter 8.7.3 Page 46 + + + + 6.9 Format information + The Format Information is a 15 bit sequence containing 5 data bits, with 10 error correction bits calculated using the (15, 5) BCH code. + + ISO/IEC 18004:2000 Chapter 8.9 Page 53 + + + + From Appendix C in JISX0510:2004 (p.65). + + + + + From Appendix C in JISX0510:2004 (p.65). + + + + + Embed format information to tristatematrix. + Process combination of create info bits, BCH error correction bits calculation, embed towards matrix. + + ISO/IEC 18004:2000 Chapter 8.9 Page 53 + + + + Embed version information for version larger or equal to 7. + + ISO/IEC 18004:2000 Chapter 8.10 Page 54 + + + + Embed version information to Matrix + Only for version greater or equal to 7 + + Matrix + version number + + + + Generate error correction blocks. Then out put with codewords BitList + ISO/IEC 18004/2006 P45, 46. Chapter 6.6 Constructing final message codewords sequence. + + Datacodewords from DataEncodation.DataEncode + Total number of bytes + Number of data bytes + Number of Error Correction blocks + codewords BitList contain datacodewords and ECCodewords + + + + ISO/IEC 18004:2000 Chapter 8.8.2 Page 52 + + + + + Calculate penalty value for first rule. + + + + + ISO/IEC 18004:2000 Chapter 8.8.2 Page 52 + + + + + ISO/IEC 18004:2000 Chapter 8.8.2 Page 52 + + + + + Calculate penalty value for Third rule. + + + + + ISO/IEC 18004:2000 Chapter 8.8.2 Page 52 + + + + + Calculate penalty value for Fourth rule. + Perform O(n) search for available x modules + + + + + Description of PenaltyFactory. + + + + + EightBitByte is a bit complicate compare to other encoding. + It can accept several different encoding table from global ECI table. + For different country, default encoding is different. JP use shift_jis, International spec use iso-8859-1 + China use ASCII which is first part of normal char table. Between 00 to 7E + Korean and Thai should have their own default encoding as well. But so far I can not find their specification freely online. + QrCode.Net will use international standard which is iso-8859-1 as default encoding. + And use UTF8 as suboption for any string that not belong to any char table or other encoder. + + ISO/IEC 18004:2000 Chapter 8.4.4 Page 22 + + + + Returns the bit representation of input data. + + + + + + + Returns bit representation of value. + + + See Chapter 8.4 Data encodation, Table 2 — Mode indicators + + + + + + + + + + + Defines the length of the Character Count Indicator, + which varies according to themode and the symbol version in use + + Number of bits in Character Count Indicator. + + See Chapter 8.4 Data encodation, Table 3 — Number of bits in Character Count Indicator. + + + + + Bitcount, Chapter 8.4.4, P.24 + + + + + EightBitByte encoder's encoding will change according to different region + + Default encoding is "iso-8859-1" + + + ISO/IEC 18004:2000 Chapter 8.4.5 Page 23 + + + + Bitcount according to ISO/IEC 18004:2000 Kanji mode Page 25 + + + + + Multiply value for Most significant byte. + Chapter 8.4.5 P.24 + + + + + See Chapter 8.4.5 P.24 Kanji Mode + + + + + Description of GaloisField256. + + + + + Powers of a in GF table. Where a = 2 + + + + + log ( power of a) in GF table. Where a = 2 + + + + + Product of two values. + In other words. a multiply b + + + + + Quotient of two values. + In other words. a devided b + + + + + Description of GeneratorPolynomial. + + + + + After create GeneratorPolynomial. Keep it as long as possible. + Unless QRCode encode is done or no more QRCode need to generate. + + + + + Get generator by degree. (Largest degree for that generator) + + Generator + + + + Build Generator if we can not find specific degree of generator from cache + + + + + coefficient position. where (coefficient)x^degree + + + + + Add another Polynomial to current one + + The polynomial need to add or subtract to current one + Result polynomial after add or subtract + + + + Multiply current Polynomial to anotherone. + + Result polynomial after multiply + + + + Multiplay scalar to current polynomial + + result of polynomial after multiply scalar + + + + divide current polynomial by "other" + + Result polynomial after divide + + + + Encode an array of data codeword with GaloisField 256. + + Array of data codewords for a single block. + Number of error correction codewords for data codewords + Cached or newly create GeneratorPolynomial + Return error correction codewords array + + + + Convert data codewords to int array. And add error correction space at end of that array + + data codewords array + data codewords length + Num of error correction bytes + Int array for data codewords array follow by error correction space + + + + Reassembly error correction codewords. As Polynomial class will eliminate zero monomial at front. + + Remainder byte array after divide. + Error correction codewords length + Error correction codewords + + + + Contain most of common constant variables. S + + + + + ISO/IEC 18004:2006(E) Page 45 Chapter Generating the error correction codewords + Primative Polynomial = Bin 100011101 = Dec 285 + + + + + 0xEC + + + + + 0x11 + + + + + URL:http://en.wikipedia.org/wiki/Byte-order_mark + + + + + Return value will be internal array itself. Not deep/shallow copy. + + + + + This method will create BitList that contain + terminator, padding and pad codewords for given datacodewords. + Use it to full fill the data codewords capacity. Thus avoid massive empty bits. + + ISO/IEC 18004:2006 P. 32 33. + Terminator / Bit stream to codeword conversion + Method will add terminator bits at end of baseList + Num of bits for datacodewords without terminator + Total number of datacodewords for specific version. + Receive it under Version/VersionTable + Bitlist that contain Terminator, padding and padcodewords + + + + Return value will be deep copy of array. + + + + + Width for current version + + + + + number of Error correction blocks for group 1 + + + + + Number of error correction blocks for group 2 + + + + + Number of data bytes per block for group 1 + + + + + Number of data bytes per block for group 2 + + + + + Number of error correction bytes per block + + + + + Get Error Correction Blocks + + + + + Initialize for NumBlocks and ErrorCorrectionCodewordsPerBlock + + + + + Use this exception for null or empty input string or when input string is too large. + + + + L + M + Q + H + + + + Get Error Correction Blocks by level + + + + + Determine which version to use + + Number of bits for encoded content + Encoding name for EightBitByte + VersionDetail and ECI + + + + Decide which version group it belong to + + number of bits for bitlist where it contain DataBits encode from input content and ECI header + Error correction level + Mode + Version group index for VERSION_GROUP + + + + Use number of data bits(header + eci header + data bits from EncoderBase) to search for proper version to use + between min and max boundary. + Boundary define by DynamicSearchIndicator method. + + + + + + + We only need totalCodeWords, dataCodewords and number of blocks. Other variable can be calculate through + equation by given that three variables. + This table try to use original table layout for easier error detection. + + ISO/IEC 18004/2006 Tabler 9 Page 38 + Only include non-micro QRCode + Sorted list + + + + ISO/IEC 18004:2000 Chapter 8.4.3 Alphanumeric Page 21 + + + + + Constant from Chapter 8.4.3 Alphanumeric Mode. P.21 + + + + + BitCount from chapter 8.4.3. P22 + + + + ISO/IEC 18004:2000 Chapter 8.4.2 Page 19 + + + + Default QrEncoder will set ErrorCorrectionLevel as M + + + + + QrEncoder with parameter ErrorCorrectionLevel. + + + + + + Encode string content to QrCode matrix + + + This exception for string content is null, empty or too large + + + + Try to encode content + + False if input content is empty, null or too large. + + + + Encode byte array content to QrCode matrix + + + This exception for string content is null, empty or too large + + + + Try to encode content + + False if input content is empty, null or too large. + + + + This class contain two variables. + BitMatrix for QrCode + isContainMatrix for indicate whether QrCode contains BitMatrix or not. + BitMatrix will equal to null if isContainMatrix is false. + + + + + Lock Class, that any change to Text or ErrorCorrectLevel won't cause it to update QrCode Matrix + + + + + Unlock Class, then update QrCodeMatrix and repaint + + + + + Freeze Class, Any value change to Brush, QuietZoneModule won't cause immediately repaint. + + It won't stop any repaint cause by other action. + + + + Unfreeze and repaint immediately. + + + + + Get Qr SquareBitMatrix as two dimentional bool array. + It will be deep copy of control's internal bitmatrix. + + null if matrix is null, else full matrix + + + + Return whether if class is freezed. + + + + + Return whether if class is locked + + + + + Lock Class, that any change to Text or ErrorCorrectLevel won't cause it to update QrCode Matrix + + + + + Unlock Class, then update QrCodeMatrix and redraw image + + + + + Freeze Class, Any value change to Brush, QuietZoneModule won't cause immediately redraw image. + + + + + Unfreeze and redraw immediately. + + + + + Get Qr SquareBitMatrix as two dimentional bool array. + It will be deep copy of control's internal bitmatrix. + + null if matrix is null, else full matrix + + + + Return whether if class is freezed. + + + + + Return whether if class is locked + + + + + + Calculate background and fronntcolor's contrast ratio. + To assist dark module and light module's choose. + Higher ratio means easier to decode by decoder. + Black and White will have highest ratio = 21. + + light module color + dark module color + Contrast object. + + + + Initialize renderer + + Size calculation strategy + + + + Initialize renderer + + Size calculation strategy + Color for dark module + Color for light module + + + + Draw QrCode at given writeable bitmap + + + + + Draw QrCode at given writeable bitmap at offset location + + + + + Draw quiet zone at offset x,y + + + + + Draw qrCode dark modules at given position. (It will also include quiet zone area. Set it to zero to exclude quiet zone) + + Bitmatrix, wBitmap should not equal to null + wBitmap's pixel width or height should not equal to zero + + + + Initialize Renderer. Default brushes will be black and white. + + + + + + Initialize Renderer. + + + + + Draw QrCode to DrawingBrush + + DrawingBrush, Stretch = uniform + LightBrush will not use by this method, DrawingBrush will only contain DarkBrush part. + Use LightBrush to fill background of main uielement for more flexible placement + + + + Construct QrCode geometry. It will only include geometry for Dark colour module + + QrCode dark colour module geometry. Size = QrMatrix width x width + + + + Construct DrawingBrush with input Drawing + + DrawingBrush where Stretch = uniform + + + + Write image file to stream + Default DPI will be 96, 96 + + + + + Write image file to stream + + DPI = DPI.X, DPI.Y(Dots per inch) + + + + Module pixel width + + + + + QrCode pixel width + + + + + Initializes a Encapsulated PostScript renderer. + + DarkColor used to draw Dark modules of the QrCode + LightColor used to draw Light modules and QuietZone of the QrCode. + Setting to a transparent color (A = 0) allows transparent light modules so the QR Code blends in the existing background. + In that case the existing background should remain light and rather uniform, and higher error correction levels are recommended. + + + + + Renders the matrix in an Encapsuled PostScript format. + + The matrix to be rendered + Size in points (1 inch contains 72 point in PostScript) of a module + Output stream that must be writable + + + + Outputs the EPS header with mandatory declarations, variable declarations and function definitions. + + The matrix to be rendered + Size in points (1 inch contains 72 point in PostScript) of a module + Output text stream + + + + Outputs the background unless it is defined as transparent. The background is used for light modules and quiet zone. + + The matrix to be rendered + Output text stream + + + + Draw a square for each dark module + + The matrix to be rendered + Output text stream + + + + Use the 'image' or 'colorimage' PostScript command to render modules + + The matrix to be rendered + Output text stream + + + + Outputs the mandatory EPS footer. + + Output text stream + + + + ISizeCalculation for the way to calculate QrCode's pixel size. + Ex for ISizeCalculation:FixedCodeSize, FixedModuleSize + + + + + DarkColor used to draw Dark modules of the QrCode + + + + + LightColor used to draw Light modules and QuietZone of the QrCode. + Setting to a transparent color (A = 0) allows transparent light modules so the QR Code blends in the existing background. + In that case the existing background should remain light and rather uniform, and higher error correction levels are recommended. + + + + + Selection of the technique used to draw the modules. 'Squares' draws vector squares one by one; 'Image' uses the 'image' or 'colorimage' PostScript command. + 'Squares' supports transparency of light modules and often has smaller file size for color QR Codes. + 'Image' might be faster to render on some devices as it is a single command. + + + + + FixedCodeSize is strategy for rendering QrCode at fixed Size. + + Fixed size for QrCode pixel width. + Pixel width have to be bigger than QrCode's matrix width(include quiet zone) + QrCode matrix width is between 25 ~ 182(version 1 ~ 40). + + + + Interface function that use by Rendering class. + + QrCode matrix width + Module pixel size and QrCode pixel width + + + + QrCodeWidth is pixel size of QrCode you would like to print out. + It have to be greater than QrCode's matrix width(include quiet zone). + QrCode matrix width is between 25 ~ 182(version 1 ~ 40). + + + + + Number of quietZone modules + + + + + FixedModuleSize is strategy for rendering QrCode with fixed module pixel size. + + Module pixel size + number of quiet zone modules + + + + Interface function that use by Rendering class. + + QrCode matrix width + Module pixel size and QrCode pixel width + + + + Module pixel size. Have to greater than zero + + + + + Number of quietZone modules + + + + + Initialize Renderer. Default brushes will be black and white. + + The way of calculate Size + + + + Initialize Renderer + + The way of calculate Size + + + + Drawing Bitmatrix to winform graphics. + Default position will be 0, 0 + + Draw background only for null matrix + DarkBrush or LightBrush is null + + + + Drawing Bitmatrix to winform graphics. + + Draw background only for null matrix + DarkBrush or LightBrush is null + + + + Saves QrCode Image to specified stream in the specified format + + Stream or Format is null + The image was saved with the wrong image format + You should avoid saving an image to the same stream that was used to construct. Doing so might damage the stream + If any additional data has been written to the stream before saving the image, the image data in the stream will be corrupted + + + + Using MetaFile Class to create metafile. + temp control create to use as object to get temp graphics for Hdc. + Drawing on the metaGraphics will record as vector metaFile. + + + + + DarkBrush for drawing Dark module of QrCode + + + + + + ISizeCalculation for the way to calculate QrCode's pixel size. + Ex for ISizeCalculation:FixedCodeSize, FixedModuleSize + + + + + Clear all pixel with given color. + + Must not be null, or pixel width, pixel height equal to zero + Exception should be expect with null writeablebitmap or pixel width, height equal to zero. + + + + Draw rectangle with given color. + + Must not be null, or pixel width, pixel height equal to zero + Exception should be expect with null writeablebitmap or pixel width, height equal to zero. + + + + Copies characters between buffers + + New buffer + Buffer to copy from + Number of character to copy + + + + + Occure when ErrorCorrectLevel or Text changed + + + + + QrCode matrix cache updated. + + + + + Update Geometry if is unlocked. + + + + + This method is use to update QuietZone after use method SetQuietZoneModule + + + + + If Class is locked, it won't update Geometry or quietzone. + + + + + Unlock class will cause class to update Geometry and quietZone. + + + + + Get Qr SquareBitMatrix as two dimentional bool array. + It will be deep copy of control's internal bitmatrix. + + null if matrix is null, else full matrix + + + + Return whether if class is locked + + + + + Encode and Update bitmap when ErrorCorrectlevel or Text changed. + + + + + If Class is locked, it won't update QrMatrix cache. + + + + + Unlock class will cause class to update QrMatrix Cache and redraw bitmap. + + + + + Freeze Class, Any value change to Brush, QuietZoneModule won't cause immediately redraw bitmap. + + + + + Unfreeze and redraw immediately. + + + + + QrCode matrix cache updated. + + + + + Get Qr SquareBitMatrix as two dimentional bool array. + It will be deep copy of control's internal bitmatrix. + + null if matrix is null, else full matrix + + + + Return whether if class is locked + + + + + Return whether if class is freezed. + + + + + GeneratedInternalTypeHelper + + + + + CreateInstance + + + + + GetPropertyValue + + + + + SetPropertyValue + + + + + CreateDelegate + + + + + AddEventHandler + + + + diff --git a/packages/QrCode.Net.0.4.0.0/net40/Gma.QrCodeNet.Encoding.dll b/packages/QrCode.Net.0.4.0.0/net40/Gma.QrCodeNet.Encoding.dll new file mode 100644 index 0000000000000000000000000000000000000000..db1b1a1046956e253e93151d2cc1f7b5f909e843 GIT binary patch literal 108032 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 Qn*(Qa;A{^3@8-aN03vUZ&;S4c literal 0 HcmV?d00001