Git Product home page Git Product logo

Comments (7)

SergeoLacruz avatar SergeoLacruz commented on August 10, 2024 1

I am sure that there is something outside there that does the job. But as I had no need for it I did not spend any time on this. In the production environment we use printers with ethernet.

from inventree-zebra-plugin.

SergeoLacruz avatar SergeoLacruz commented on August 10, 2024

We only use the css approach in Inventree. It gives good results when the scaling is properly set as described. We use the ZPL direct approach in other systems e.g. asset management. Creating label template is easier when you know ZPL and work with the Zebra label designer. Finally the quality is the same. I have two printers on Inventree. One is from 2014 and has printed a lot. the QR is sometimes bad but usually OK. the other one is the same model but newer. the prints are crisp and clear. So I had no need so far for the ZPL direct approach. Newer printers have 300 DPI which might work even better. Did not try this.

Smaller label are also available with just one column per reel. We use some with 25mm width. 13 is also available
https://www.labelident.com/polyester-etiketten-weiss-glaenzend-permanent-klebend-auf-25-4-mm-rollenkern.html?qwidth=2829
I never thought about multi column reels. I can imagine to set up the printer in a way that it only uses the first column. When the reel is over, rewind it and change the ZPL intro in a way that it uses the 2nd column.
I do not know if there is a way to print the first label, remove it and then rewind one step for the next one. I never thought about that. I should be possible as it is a common use case.
In case of any further questions please come back.
Michael

from inventree-zebra-plugin.

wolflu05 avatar wolflu05 commented on August 10, 2024

Thank you very much for your reply. Regarding the multi column labels rewinding the tape was one thing I also thought of. An other possible solution would be to buffer the labels until a user requested 4 and then print one row, and also add a button to ignore the not empty buffer and print them anyway.

I'll come back when I have decided to buy a zebra printer.
Wish you a good weekend.
Lukas

from inventree-zebra-plugin.

wolflu05 avatar wolflu05 commented on August 10, 2024

Hello Michael,

I have taken a deeper look into your plugin and found a server script. Does this work with a regular usb only zebra printer to print over the network? And can you tell how performant this is? How much time passes from pressing print, until the label is started to print/done?

Regarding the QR code quality, I analyzed how the Dymo label printer software (my current printer) handles QR codes and what output it produces to the printer and found out, that QR codes have some missing pixels like shown in the picture below. Do you know if that is something that the zebra software does too, and maybe would improve the quality?
image

I also found out that there are a lot of zebra printers, and also pretty expensive ones, but also cheap used ones. I would be interested in what particular model you have/would recommend that nicely works with this plugin? And do you tested, by any chance a thermo transfer printer? Maybe the ZT410? Really appreciate your help.

Best
Lukas

from inventree-zebra-plugin.

SergeoLacruz avatar SergeoLacruz commented on August 10, 2024

Hi,
I wrote this script to test the network function of the driver with a printer that has just USB. You can hook up a Raspberry to any USB only printer and turn it into a network printer. The printout delay might be a second or less. But the script is not for production use. No error handling at all. It writes directly to the device bypassing the printer queue.

The QR code in your example look like a gray color print. If you try to print 60% black the printer might start to dither. The Zebra tries it and is not successful :-) Be sure to print pure BW
I use the GK420t. This model is not available any longer. A representative from printID told that ZD421t is the nearest successor.
Be careful with used ones. The print head wears out and replacement usually makes no sense. We only use thermo transfer. all my tests have been done with that method.

Michael

from inventree-zebra-plugin.

wolflu05 avatar wolflu05 commented on August 10, 2024

Indeed, I checked it more carefully and the Dymo connect software somehow uses a dark grey, not sure why (there is no option to select the barcode color), thanks for pointing it out, never heard of dithering before:

image

And regarding the print server. Do you know any more reliable software for implementing a printer queue but still have the ability to use bidirectional ZPL commands to query for status? What I already found using cups in combination with xinetd, but that just works for printing jobs, not for request where the printer response matters (e.g. querying for status).

service jetdirect
{
        socket_type = stream
	type = UNLISTED
        protocol = tcp
	port = 9100
        wait = no
        user = root
        server = /bin/lp
        server_args = -d <cups-printer-name> -o raw
        groups = yes
        disable = no
}

I already asked the cups team, but they do not know anything unfortunately. Would be really cool to find a good solution here so a pi can be utilized.

I now got a zebra printer and will try printing rasterized images vs native text/barcodes in the next days/weeks and report back.

from inventree-zebra-plugin.

wolflu05 avatar wolflu05 commented on August 10, 2024

Hello, I have now tested this a bit further and also came to the conclusion myself that the printed png is as good as using ZPL; also if somebody else is interested in this question.

What I found out is, that we can even improve the quality by using pdftocairo (ref inventree/InvenTree#6488) to get square pixels instead if not always same size square pixels if only the threshold filtering is used.

And then it is important to have all css distances in the label to be specified in multiples of the dpi value, where the easiest is to just use the css unit in(inches) instead of mm. (And for the QR code size the easiest is to just use a value where $(23\cdot n)/\text{dpi}, n\in\mathbb{N}$ again in combination with in like described on your awesome README)

Thank you again for your awesome help, I'll close this now.

from inventree-zebra-plugin.

Related Issues (7)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.