Barcodes
(01)09501101530003(17)261231.
- 1,372 Byte
- Ladestatus: Success
- 1 Seite(n)
Bildaufloesung, Farbraeume, Schrift-Einbettung, Druckbedingung und Anschnitt des noch zu erzeugenden Dokuments. Rein beobachtend — er aendert das PDF nie.
- Fehler FONT_NOT_EMBEDDED Helvetica
using Kuonen.PDFTools.Authoring;
using Kuonen.PDFTools.BarcodeRendering;
using Kuonen.PDFTools.Barcodes;
using Kuonen.PDFTools.Fonts;
using Kuonen.PDFTools.Pages;
// Die Barcode-Schicht KODIERT nur — gezeichnet wird ueber die normale Zeichen-API.
BarcodeSymbol symbol = BarcodeSource.Create(BarcodeSymbology.Code128, "KUONEN-PDFTOOLS").Encode(barHeightModules: 40, guardBars: true);
var render = new BarcodeRenderOptions
{
ModuleSize = 0.4, // Millimeter je Modul
IncludeQuietZone = true,
Foreground = BarcodeColor.Rgb(0, 0, 0),
Background = BarcodeColor.Rgb(1, 1, 1),
Caption = new BarcodeCaption("KUONEN-PDFTOOLS"),
};
var builder = new PdfDocumentBuilder { Title = "Barcode" };
PageCanvas page = builder.AddPage(PageSize.A4);
page.DrawText(
$"{symbol.Width} × {symbol.Height} Module", 57, 760, StandardFont.Helvetica, 10);
page.DrawBarcode(symbol, 57, 560, render);
byte[] pdf = builder.Build();
PreflightReport preflight = builder.Preflight(); // kennt Kontrast und Ruhezone
Der Swiss QR Code ist Teil des normierten Zahlteils der Schweizer QR-Rechnung und
wird dort im richtigen Rahmen gezeigt: QR-Rechnung. Der
reine Datensatz (Nutzdaten, feldweise validiert) liegt in
Kuonen.PDFTools.Barcodes.SwissQrCode.
Alle gängigen Symbologien sind gebaut und je byte-genau gegen zint (das unabhängige Orakel) belegt: die linearen Codes (Code 128/39/93/11/32, EAN/UPC mit Add-ons, ITF-Familie, Codabar, MSI, Pharmacode, ISBN, GS1-128, Telepen, Plessey, PZN, HIBC, VIN, die Standard-2-of-5-Familie, Deutsche-Post-Codes, EAN-14, NVE-18), die ganze GS1-DataBar-Familie, die Matrix-Codes (QR, Micro-QR, rMQR, DataMatrix, Aztec, PDF417) und die postalen Höhen-Codes (POSTNET, PLANET, RM4SCC, KIX). Gelesen wird all das ebenso — inkl. Fotos.
Bewusst als Grenze offen (jeweils ein eigener, großer Spezial-Codec, selten gebraucht — die Verifikationskosten übersteigen den Nutzen): große 2D-Codes (MaxiCode, DotCode, Han Xin, Grid Matrix, Code One), gestapelte 1D (Code 16K, Code 49, Codablock-F, MicroPDF417), Composite CC-A/B/C, sowie die regionalen 4-Zustand-Postcodes mit eigener RS-/CRC-Prüfung (USPS IMb, AusPost, JapanPost, Mailmark) und Channel Code. Keine leere Vorschau — eine ehrliche, benannte Grenze.