// the find
Dwarf1er/openlabel
OpenLabel is a C# library for ZPL label printing, scaling, and templating. Print ZPL over the network, scale for different DPIs, and customize labels with ease.
OpenLabel is a thin C# wrapper around ZPL (Zebra printer language) that handles three things: sending ZPL over a network socket, scaling ZPL coordinates between DPI values, and a basic placeholder/conditional templating system. It's for .NET developers who need to drive Zebra label printers from application code without going through proprietary Zebra SDKs.
The DPI scaling is the most genuinely useful piece — converting a 203dpi label to 300dpi is fiddly math that every Zebra shop eventually writes and this saves you that. The template system handles conditional blocks, not just string substitution, which covers most dynamic label use cases. It's on NuGet, has a CI publish pipeline, and the API surface is small enough to read in 10 minutes. MIT licensed with no Zebra SDK dependency.
The templating is regex/string-replace over raw ZPL strings — there is no AST, no type safety, and no validation that the output ZPL is syntactically correct; you will not know about a broken template until a printer rejects it. NetworkPrinter sends to a UNC path, which means it depends on Windows print spooler plumbing rather than talking directly over TCP/9100 the way Zebra printers actually expect in server contexts — this will surprise anyone running on Linux or in a container. 87 stars and 4 forks in what appears to be several years of existence suggests the community hasn't validated it at scale. The scaling code is credited to two community gists, not original work, and there are no tests visible in the repo tree.