Initial commit

Initial commit til Git.
V2 er deployed
This commit is contained in:
2026-06-13 17:31:50 +02:00
parent 9fcd2b145e
commit 41e23b6184
375 changed files with 15956 additions and 0 deletions

View File

@@ -0,0 +1,72 @@
namespace EpsonReceiptPrinter;
public static class ReceiptFormatter
{
public static byte[] Format(Receipt receipt, PrinterCodePage codePage = PrinterCodePage.PC865_Nordic)
{
ArgumentNullException.ThrowIfNull(receipt);
var width = receipt.PaperWidthCharacters <= 0 ? 42 : receipt.PaperWidthCharacters;
var builder = new EscPosBuilder(codePage)
.Initialize()
.AlignCenter();
if (!string.IsNullOrWhiteSpace(receipt.Header))
{
builder
.SetTextSize(TextSize.DoubleWidthAndHeight)
.BoldOn()
.WriteLine(receipt.Header)
.BoldOff()
.SetTextSize(TextSize.Normal);
}
if (!string.IsNullOrWhiteSpace(receipt.SubHeader))
{
builder.WriteLine(receipt.SubHeader);
}
builder
.Feed(1)
.AlignLeft()
.Separator(width);
foreach (var line in receipt.Lines)
{
builder.SetTextSize(line.TextSize);
if (line.Emphasize)
{
builder.BoldOn();
}
else
{
builder.BoldOff();
}
builder.WriteColumns(line.Left, line.Right, width);
builder.SetTextSize(TextSize.Normal);
builder.BoldOff();
}
builder
.Separator(width)
.Feed(1)
.AlignCenter();
if (!string.IsNullOrWhiteSpace(receipt.Footer))
{
builder.WriteLine(receipt.Footer);
}
builder.Feed(3);
if (receipt.CutPaper)
{
builder.Cut();
}
return builder.Build();
}
}