42Frequently asked questions
Short answers to the questions asked most often, each with a link to the chapter that has the details.
General
Which platforms and .NET versions are supported?
zplCore targets .NET 10 and runs on Windows, Linux and macOS, on x64 and ARM64, in containers (distroless images included) and as NativeAOT. The native libraries come with the NuGet packages. See Platforms and NativeAOT & containers.
Do I need a Zebra printer to render labels?
No. ZplRenderer behaves like a virtual printer – including printer memory, stored formats, fonts and status answers – and produces images and PDFs. For tests of print applications there is a virtual network printer on TCP 9100, also with simulated faults. See ZplRenderer, virtual printer and chaos printer.
Which ZPL commands are supported?
The searchable list is in ZPL commands; commands without effect on the image are accepted and reported through PrinterControl. Known deviations are listed in Limitations, the measured accuracy in Accuracy.
Does zplCore connect to the internet?
No. The licence key is checked offline against its signature; there is no phone-home and no telemetry, and zplCore works in isolated networks. See Licence key.
Output & printing
Which output formats are available?
PNG, JPEG, WebP, BMP, GIF, PDF, SVG, EPS, HTML, TIFF, PCX, GRF (^GFA), PCL, EPL, Fingerprint and ESC/POS, plus DPI conversion of ZPL. See Output formats and Export.
How do labels get to the printer?
Over TCP 9100, serial, USB or a device file, the Windows spooler, CUPS or any stream – all behind IPrinterConnection, with status queries where the transport allows them. See Printing.
My printer does not accept TrueType fonts – what now?
Print the text as a graphic: PrintAsGraphic = true per element or Label.FontAsGraphicThreshold for the label's fonts – pixel-identical, only the labels get larger. See Fonts and PrintAsGraphic.
How fast is it?
Generating ZPL from data reaches more than 200,000 shipping labels per second, rendering more than 1,000 PNG previews per second – with the measuring conditions in Performance.
Are the compliance and scan-proof results certifications?
No. They are pre-checks against public specifications and a digital grade modelled on ISO/IEC 15415/15416. They do not replace acceptance by a carrier, retailer or regulator, nor a barcode verifier on the printed label. See Compliance and Scan-proof.
Operation & licence
Can I process labels from untrusted sources?
Yes, inside a ZplLimits scope: hard limits for labels, dots, graphics, field data, printer storage and image files apply to every renderer in the scope. See Limits & thread safety.
Is the renderer thread-safe?
ZplRenderer holds printer state – use one renderer per thread. ZplResourceStore, FontManager, ZplCaches, PropertyPath and configured LabelBindings can be shared. See Defaults & threads.
What happens without a licence key, or when a subscription ends?
zplCore keeps running in evaluation mode and marks its outputs; it never stops your application. See evaluation mode and validity.
SDK or zplCore Server?
The SDK runs inside your .NET application. zplCore Server is a container that holds the templates and answers with labels over HTTP – for applications in other languages or for central label services. See zplCore Server and the server documentation.
Is the source code included?
No. Licensees receive no source code unless agreed separately, for example a source code escrow for Enterprise licences. See Tests and the licence terms.

