I have a Foxpro accounting program that can print reports to laser printers just fine. But when trying to print shipping label to a thermal printer all I get is lines of numbers instead of barcode and address. What can be the problem?
Seems all to be correct, the output contains commands for the label printer to interpreter. Could be a stupid question: After adding LPT1 = RAW, did you actually print to the label printer? Mostly those are connected to a serial port, or a serial-to-USB(or network) device.
With the RAW option, vDos will pass your programs printer output as-is to the physical printer.
I suspect your program doesn't print to LPT1, so the RAW option isn't effective. Instead it would print to LPT2, COM1, whatever. Since nothing (no RAW) is defined for that DOS device, vDos will do some formatting (default margin settings) before the printer data is sent to the label printer.
I also guess you have a Windows driver installed for the label printer. Doesn't matter, but would explain the margin settings by vDos. Main issue would be RAW isn't defined for the correct lable printer DOS device.
Still, if you don't (or even do) print by Windows programs to that label printer, create Windows printers, Generic – Generic/Text Only. So you're sure Windows drivers don't mess up the RAW DOS output. Printing from workstations, use the Generic/Text only Windows printer driver, not some redirected LPTx.