(Sorry if this got double posted - it wasn't intentional)
We have an application that prints labels using Zebra ZT410 industrial thermal printers. In our application, we have two different layouts based on the current functions being performed by the user and the label output size. One layout prints to a 4X6 sized label and the other to a 1.5X4 sized label.
What we are trying to figure out is if there is a way to query the printer to determine which roll size of labels is currently in the printer (either the 4x6 or the 1.5x4) and NOT allow the user to print if they currently have the wrong size labels loaded in the printer for the type of job they are generating labels for.
What we find is that the users either forget to change the label stock to the correct size or more often, they are simply being lazy and leave the 1.5x4 labels in the printer even for the 4x6 jobs. The end result is that everything ends up printing from the 4x6 layout across multiple 1.5x4 labels but there are numerous blank labels wasted between the records. Essentially, when the 1.5x4 labels are loaded, the system prints 4 1.5x4 labels to get the total layout size of 4x6 and therefore there are 3 wasted labels each time. The inverse also holds true when they try to print the 1.5x4 layouts on the 4x6 stock... 3/4 of the 4x6 label is wasted between the records.
Since we don't have a way to easily police when they are being lazy (or when the wrong type is loaded), we'd like to be able to get the current paper size from the print driver and simply lock the print function from working if the wrong label size is currently in the printer for the job they are trying to print.
In short, we'd like to be able to query the print driver and only allow printing to the 4x6 labels when they are doing the 4x6 jobs and only allow printing to the 1.5x4 labels when they are printing the 1.5x4 jobs.
We'd like to be able to verify the current size loaded in the printer and force the user to use the correct layout and functions for that size. IE: If the printer has 4x6 labels loaded, they cannot even go to the layout or print functions unless they are correct ones for 4x6 output.
The motivation behind this is to prevent the huge amount of waste we are currently seeing esp. when the smaller 1.5x4 labels actually cost 4 times as much compared to printing on the correctly sized 4x6 labels. (Each 4x6 label is approximately 0.02 cents each and each 1.5x4 label is about 0.025 each and to output 4x6 of data requires 4 of the 1.5x4 labels instead of 1 single 4x6 label. In short, printing 1 4x6 worth of data on 1 4x6 label = 0.02 - printing 1 4x6 worth of data across multiple 1.5x4 labels = approximately 0.15+ cents (4 x 1.5 = 6 + the wasted labels).
Beyond just the label savings is the overall time savings of applying one 4x6 label to a package vs. multiple 1.5x4 labels as well as the sloppy appearance resulting from sticking numerous labels on the box.
There is also a time savings involved since it only takes a couple of seconds to apply a single 4x6 label vs. a couple of minutes to apply multiple 1.5x4 labels and get them semi-aligned.
I realize this sounds like a no-brainer for the users to simply use the correct layouts for the correct labels being used but they simply don't care because they aren't paying for the supplies themselves and taking longer to do the same amount of work = more $$ against an hourly rate vs. the efficiency of using the correct label sizes in the first place.
Anybody have any ideas about how to query the printer to verify which label sizes are loaded or other suggestions on how to resolve this?
We've considered taking the 1.5x4 labels completely away and forcing them to use 4x6 for everything but that comes with its' own set of issues and looks sloppy when they are doing jobs that only require a single 1.5x4 label.