Virtual-ZPL-Printer Daniel Porrey
winget install --id=Porrey.VirtualZPLPrinter -e Virtual-ZPL-Printer is an Ethernet-based virtual Zebra Label Printer designed to test applications that generate barcode labels. It leverages the Labelary service to convert ZPL (Zebra Programming Language) code into visual label representations, enabling developers and users to validate label designs without requiring physical hardware.
Key Features:
Audience & Benefit: Ideal for developers, testers, and users of barcode labeling applications who need to validate ZPL-based designs without physical printers. The tool allows for efficient testing, customization, and debugging of label outputs in a virtual environment, reducing reliance on hardware and streamlining the development process. It can be installed via winget for easy setup.
An Ethernet based virtual Zebra Label Printer that can be used to test applications that produce bar code labels. This application uses the Labelary service found at http://labelary.com.
Download the installer (v 3.5.1)
Requires .NET 10.0. Download Setup.exe and the MSI if you need to have the .NET 10.0 Framework installed automatically.
Hey there! If you find this project useful, consider supporting its development. Your contributions help keep this project alive, improve features, and ensure regular updates.
⭐ Star this repository – It helps others discover the project!
💵 Sponsor on GitHub Sponsors – Recurring support keeps the project sustainable.
☕ Buy Me a Coffee – One-time support via Buy Me a Coffee.
💳 PayPal Donations – Direct support via PayPal.
🏢 Business Support – If your company uses this project, consider a sponsorship.
Your support means a lot and helps me continue improving this project. Thank you! ❤️
To request anew language/region add an issue using the label Add Language. The language will be added using Google Translate.
Add a pull-request with the title "Added Language xx-YY" or "Added Language xx". Only the the XML string files should be included in the pull request. If any other files are modified, the pull request will not be accepted. You must ensure that all strings are included in each of the XML files. Ensure the file names are correct: or .
Issues posted to correct or change a specific word will not be accepted. If you come across a word that should be translated differently, perform a pull-request to change it.
Add a pull-request with the title "Updated Language xx-YY" or "Updated Language xx". Only the the XML string files should be included in the pull request. If any other files are modified, the pull request will not be accepted. Ensure the files are not renamed. If you are not the original creator of the language file, please seek a review from the original creator. If the original creator does not respond within one week, the pull-request can be accepted without their review.








"us-EN" culture with CultureInfo.InvariantCulture to ensure consistent decimal formatting in REST API calls (Issue #78).Filters column in PrinterConfiguration so existing databases upgrade correctly (Issue #72).^XZ marker is now reliably detected in large multi-chunk transmissions (Issue #82).SendTimeout property that caused it to read/write ReceiveTimeout instead (Issues #86 & #87).stream.DataAvailable.stream.ReadAsync() to use memory based overloads.appsettings.json file. Logging will be expanded in each new release.^FX ImageFileName: USPS-Shipping. The file numbering is still controlled by the application (as well as page numbering when a ZPL file contains more than one label).X-Total-Count HTTP header to determine the number of labels to create.