public byte[] GetBytes() { var builder = new PrintableBuilder(); builder .SetCenterJustification() .AddTextLine(CompanyName) .SetFontB() .AddTextLine($"Doc. {CompanyDocument}") .Feed() .Feed() .SetJustification(); foreach (var product in Products) { builder .SetFont() .AddTextLine($"{product.Quantity} x {product.Name}") .SetFontB() .AddTextLine($"${product.PricePerUnit.ToString(CultureInfo.InvariantCulture)} x " + $"{product.Quantity} = ${product.TotalAmount.ToString(CultureInfo.InvariantCulture)}") .Feed(); } builder .SetRightJustification() .SetDoubleFont() .AddTextLine($"Total: ${Products.Sum(e => e.TotalAmount).ToString(CultureInfo.InvariantCulture)}") .Reset() .Feed() .AddBarcode(CompanyName); return(builder.ToArray()); }
public static PrintableBuilder SetFont(this PrintableBuilder builder, FontMode fontMode = FontMode.FontA) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } return(builder.Add(new SetFont(fontMode))); }
public static PrintableBuilder Feed(this PrintableBuilder builder) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } return(builder.Add(new Feed())); }
public static PrintableBuilder SetCodePage(this PrintableBuilder builder, byte codePage) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } return(builder.Add(new SetCodePage(codePage))); }
public static PrintableBuilder Cut(this PrintableBuilder builder, CutType type = CutType.Partial) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } return(builder.Add(new Cut(type))); }
public static PrintableBuilder SetJustification(this PrintableBuilder builder, JustificationType justificationType = JustificationType.Left) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } return(builder.Add(new SetJustification(justificationType))); }
public static PrintableBuilder AddTextLine(this PrintableBuilder builder, string content = "", CodePage codePage = CodePage.Default, Encoding encoding = null, bool feed = true) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } return(builder.Add(new TextLine(content, codePage, encoding, feed))); }
public static PrintableBuilder AddBarcode(this PrintableBuilder builder, string content = "", int height = 32, BarcodeType barcodeType = BarcodeType.Code128) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } return(builder.Add(new Barcode(content, height, barcodeType))); }
public byte[] GetBytes() { var builder = new PrintableBuilder(); var contentBytes = _encoding.GetBytes(_content); builder .Add(new SetCodePage(_codePage)) .Add(contentBytes); if (_feed) { builder.Add(new Feed()); } builder.Add(new SetCodePage(CodePage.Default)); return(builder.ToArray()); }
public static PrintableBuilder SetDoubleFont(this PrintableBuilder builder) => builder.SetFont(FontMode.DoubleWidth | FontMode.DoubleHeight);
public static PrintableBuilder SetEmphasizedFont(this PrintableBuilder builder) => builder.SetFont(FontMode.Emphasized);
public static PrintableBuilder SetFontB(this PrintableBuilder builder) => builder.SetFont(FontMode.FontB);
public static PrintableBuilder SetFontA(this PrintableBuilder builder) => builder.SetFont();
public static PrintableBuilder SetRightJustification(this PrintableBuilder builder) => builder.SetJustification(JustificationType.Right);
public static PrintableBuilder SetCenterJustification(this PrintableBuilder builder) => builder.SetJustification(JustificationType.Center);
public static PrintableBuilder SetLeftJustification(this PrintableBuilder builder) => builder.SetJustification();