Converting to monochrome bitmap for printer

Questions and postings pertaining to the usage of ImageMagick regardless of the interface. This includes the command-line utilities, as well as the C and C++ APIs. Usage questions are like "How do I use ImageMagick to create drop shadows?".
Post Reply
doombuggy
Posts: 2
Joined: 2019-04-16T19:22:04-07:00
Authentication code: 1152

Converting to monochrome bitmap for printer

Post by doombuggy »

I’m having some difficulty converting images to a monochrome bitmap to send to a thermal printer I’m using (Microflash 4te).

The programming manual reads as follows for the format (emphasis mine):
Prints the next (n1*256 + n2) dotlines as bit-mapped graphics. n1n2 form a 16-bit binary number set, the most significant byte first. Used to print user-generated bitmap graphics across the width of the printhead. After receipt of this command, the printer dumps the binary data directly to the printhead. As customary with bitmap data, a 1 bit indicates a dot is on, 0 bit indicates the dot is off. Graphics printed using this command must be the exact width of the head in bits. Bit 7 of the first byte of data received prints at the left-most dot on the head as you view the printhead with the paper feeding away from you. The printer remains in bit-mapped graphics mode until the total amount of bytes necessary to fill n1n2 lines of print are received by the printer.
I read up on using the MONO output, but I can’t seem to get it to print anything other than noise. This is what I’m trying (the width of the head is 832 bits across, BTW)

Code: Select all

convert 57155379_10157252806532146_3624336417909374976_n.jpg -resize 832x -monochrome MONO:image.mono
snibgo
Posts: 12159
Joined: 2010-01-23T23:01:33-07:00
Authentication code: 1151
Location: England, UK

Re: Converting to monochrome bitmap for printer

Post by snibgo »

A printer usually comes with a driver, software that reads an image file and formats it for the specific printer. It usually has options for paper size, darkness adjustment, etc.

So you shouldn't need to bother about the exact format the printer wants. But if there is no driver, and you need to send a file directly to the printer, you need to know the complete details of that file format.
snibgo's IM pages: im.snibgo.com
doombuggy
Posts: 2
Joined: 2019-04-16T19:22:04-07:00
Authentication code: 1152

Re: Converting to monochrome bitmap for printer

Post by doombuggy »

snibgo wrote: 2019-04-16T20:11:01-07:00 A printer usually comes with a driver, software that reads an image file and formats it for the specific printer. It usually has options for paper size, darkness adjustment, etc.

So you shouldn't need to bother about the exact format the printer wants. But if there is no driver, and you need to send a file directly to the printer, you need to know the complete details of that file format.
In this case, only a Windows driver is provided, and I’m using this on a Mac. I already looked things up at linuxprinting.org to see if there was a CUPS driver I could use, and there is none.

The section of the programming manual I quoted above dictates the graphics format required—raw monochrome bitmap, 832 bits across (4 * 203), starting with bit 7 of the first byte (assuming bits are numbered 0-7). The MONO format should be the one to use, but I can’t get it to work, even with setting -endian to MSB.
Post Reply