I'm experiencing a issue with a printed area size when I change from 203DPI tom 300DPI a Zebra ZT 230 printer. I used the embedded driver to install this printer over ethernet connection. My tag has 10X12 cm (Width x Height), and it has two barcodes, one Code 3 of 9 and other Code 128. When I'm using 203 DPI configured the barcode 3 of 9 was printed without resolution enough to be read using any data colector, so I changed the configuration to 300 DPI to fix that resolution issue, for my surprise when I made this change the tag was printed bigger then the paper, is almost 1/2 of my tag has fit into the media paper, as the following images show. Doesn't matter change the paper sizer, set any margins the result always is the same.
When Configured with 203 DPI with lack of resolution. When configured with 300DPI with any paper size defined
I hope if that you guys could tell what I have done wrong to have this result, because I've always used CUPS with lots of printers of Intermec(Honeywell) and Argox, both companies have delivered theirs own Linux Drivers, and for the first time I'm installing a Zebra printer on Linux, and the Zebra company has produced a tutorial, zebra official tutorial link, using cups telling that the embedded driver should be enough to print Zebra tags on Linux.
Label printers generally have a fixed DPI setting (i.e. it's hardware), so changing the DPI setting in your printing code will either have no effect, or will cause the coordinate system to be scaled, which would explain why you're seeing your output enlarged.
If you want 300dpi, you need to buy a 300dpi printer.
If you need to use the 200dpi printer you have, you need to think up an alternative solution, such as enlarging the size of the barcode, or using a different symbology that doesn't require as high a resolution.