There are many so-called "GDI" printers, especially designed for Microsoft Windows. To save expenses for printer electronics the manufacturers move over all the rendering to the Windows driver running on the PC. The printer gets a simple bitmap of the page. It does not know anything about how text characters look like or how dithering or color adjustment works. Therefore these printers are also called "host-based" printers.
"GDI" means "Graphical Device Interface" and is a software API created by Microsoft through which applications communicate with the drivers of graphical output devices, as printers or graphics cards. "GDI" is not a hardware protocol, the hardware protocols of GDI printers can be completely different, even between models of the same manufacturer. For Windows users this is no problem, as every printer comes with a driver CD containing a driver exactly for the particular printer.
For users of operating systems not supported by the printer's manufacturer, as GNU/Linux, DOS, Mac OS X, ..., these printers are a big problem. The manufacturers usually keep the protocols as their trade secrets and so it is not easy to write drivers to use these printers under additional operating systems.
End of excerpt.