This document gives guidelines in diagnosing printing problems with both Anzio Lite and AnzioWin, versions 12.4 and higher.
In Anzio Lite and AnzioWin version 15 and higher, there is also a “Debug printing” check box on the Printer Setup dialog under the File menu that will give you extensive information on what went on while trying to print. Check this box, then do your passthrough print and you will see a pop-up dialog that includes all kinds of print information.
Anzio (referring to both Anzio Lite and AnzioWin) can address the printer in three ways, which we refer to as "Print Level". These are accessible in the File menu prior to version 15 of Anzio and in the Printer Setup for version 15 or later.
In High level, Anzio uses the Windows printer driver, and Anzio is responsible for all details of paper size, orientation, font selection, character size, line spacing, etc. In Raw level, Anzio and Windows are completely transparent; any printer control is the responsibility of the host program. Low level is in between, and is seldom used - we won't cover it here.
AnzioWin has an additional level, called Print Wizard, which is designed to make several decisions for you automatically.
Please follow the steps below in sequence. At the point that something DOESN'T work as it should, you will have an indication of where the problem is. If you can't resolve it then, please feel free to contact us.
1. Determine how the printer is connected
Your printer can be connected to your PC in a variety of ways. Find the one below that describes your setup:
(a) Printer is connected directly to a parallel port on your PC.
(b) Printer is connected directly to a serial port on your PC.
(c) Printer is connected to a different PC, using Windows networking.
(d) Printer is connected to a Novell server.
(e) Printer is connected directly to the network, using a Jet Direct or similar network interface.
2. Start with the basics
Of course we shouldn't have to mention these things, but experience indicates we do:
- Make sure there is power to the printer - are its lights on?
- Make sure the cable is connected tightly.
- If there is a switch box between the PC and the printer, remove it. That is, wire directly to the printer (in general we recommend against using switch boxes).
- If your setup is (c) or (d) above, make sure the PC to which the printer is directly printed can print to it.
- For setup (b) you will need to know the baud rate the printer is set for, and there may even be an issue of the correct cable - not all serial printer cables are alike. Check your printer manual.
- For setup (a), some printers are finicky about the type of parallel port (standard, bidirectional, ECP, EPP, etc.). This is generally configured at the BIOS level of the PC. Some also require specific cables.
- If the printer is a "system" printer, that is, it is attached directly to the host, then Anzio is not even involved in printing, so this document won't help.
3. Do you have the correct Windows printer driver?
Make sure you have the correct printer driver for your make and model of printer. In some cases this can be difficult. For instance, the OKI 320 comes in several "personalities", and the driver that works for one will not work for another.
Also, check the web sites of both Microsoft and the printer manufacturer for later releases of drivers.
4. Can you print a test page from Windows?
Go to Start:Settings:Printer, choose the correct printer, and bring up its properties. Find the "Test Print" button and click it. If you can't get a good test print, it makes no sense to proceed. Check items above, or get assistance.
5. Can Anzio do a print screen?
With Anzio running, do the following (all from the File menu):
- In Printer Setup, select the correct printer. If necessary, go into Properties and set orientation, paper size, etc.
- In Printer Font, select Courier New, normal, 12 point.
- If running AnzioWin, turn OFF Print Wizard.
- Set Print Level to High.
- Do Print Screen, then Eject. Whatever is showing on the screen should be printed.
6. Can Anzio do a print screen at spooler level?
Now set Print Level to Spooler, do Print Screen and then Eject. The screen should be printed out in the printer's default font, spacing, etc.
7. Test passthrough printing at high level
This assumes that your host system is configured to do "passthrough print" (also known as "transparent" or "aux" or "attached" print).
- Set Anzio's Print Level back to High (with Print Wizard OFF).
- In the View menu, make sure Show Status Line is checked.
Tell the host program to print something one to two pages long. When Anzio is receiving passthrough print data, you should see an indicator on the bottom status line, saying "Hit Alt-A to abort passthrough print". If you do NOT see that, it means the host did not send Anzio any passthrough print data. The problem is then at the host end, and there's nothing more we can do with Anzio.
You should get your data printed. If you get nothing after a few seconds, do File:Eject.
Mark this printout as "High".
8. Test passthrough printing at spooler level
Now set Print Level to Spooler. Repeat the test as above. You should again get your data printed. Mark this as "Spooler".
9. Is the layout right?
Examine the two reports. They are probably different in spacing or pagination. The key issue here is how much control the host program wants to exert on the printing, by including escape sequences in the data stream. If it does this (which implies that it knows or thinks it knows what kind of printer you have), your "High" printout will have some extra characters and/or boxes printed, probably at the beginning of the report. If you see this, then you will probably want to print (at least this report) with Anzio set for Raw; if the "Raw" printout was not right either, you have an issue with the host software.
Note that you MIGHT have an option in your host configuration to specify a "generic" or "plain text" printer. If so, try that option, with Anzio set to High.
When Anzio's print level is set to High, Anzio has control over the print layout. In the Printer Setup:Properties, you can control paper size, orientation, bin selection, etc. The Printer Font dialog lets you choose the font and size (and bold or normal). Note that the font size (in points) sets its height, which indirectly affects its width. If you need more characters per line, experiment with reducing the point size, or see Anzio's PRINTFONT command in the manual.
10. Is pagination correct?
Try printing something 5 to 10 pages long. Are you getting the correct number of lines on each page? Or do the page headers "creep" up or down the page?
When printing in High level, page breaks can occur in two ways. The first and best is when the data stream from the host contains formfeed characters (control-L, hex 0C, decimal 12). The other way is if we run out of room on the page for more lines. This will be affected by a) the printable size of the page, and b) the line spacing. In Anzio, the line spacing is determined by the point size of the font selected. Standard 6 lines-per-inch spacing is achieved when a point size of 12 is chosen (72 points per inch divided by 6 equals 12).
Sometimes print data coming from the host assumes 6 lines per inch and 66 lines per (11 inch) page, and it does not contain formfeeds. This is fine on dot matrix and other continuous feed printers. However, most laser printers and many inkjet printers are not able to print to the very top and bottom of the page. That is, they have a printable area less than 11 inches (for letter size). So it is not possible to get 66 lines at 6 lines per inch.
If that's the case, you could have a very difficult time making things work. You can experiment with different point sizes (which determine line spacing), but you still may not be able to make it work, because it would require a fractional point size. That is one indication that you may need to switch to Print Wizard, which is available only in AnzioWin.
11. Using Print Wizard (AnzioWin only)
Print Wizard (PW) attempts to handle several printing tasks automatically, by analyzing the print data and determining how it most likely ought to be printed. Full details of its operation are contained in a separate document, so we will here cover just a few basics.
First, Print Wizard determines whether your print data contains escape codes. Because the existence of these means that the host wants to control printing, PW switches automatically to Raw mode. As stated before, if the printout is wrong then, it's the host system's fault.
If there are NOT escape codes, PW counts up how many characters per line and lines per page there are. If there are no formfeeds, it assumes the intent is to fit 66 lines per page. Then PW checks with Windows to find the printable area of the page. Then it sets the character size, spacing, and margins in both the vertical and horizontal directions, so that the report comes out readable on the page.
All this is done with no operator intervention. If you switch from printing an 80-column report to a 132-column report, Print Wizard will adjust your character width and spacing automatically.
12. Anzio Lite and AnzioWin version 15
Anzio Lite version 15 or later includes the latest Printer Setup dialog and from here you can turn on and off the “Debug printing” switch. You will also notice that several other items are grayed out. These are available in AnzioWin, not Anzio Lite.
Within AnzioWin’s Printer Setup, like Anzio Lite, you can turn on or off the “Debug printing” switch to gain additional information on what actually happens during a passthrough print job.
Additionally, in AnzioWin you can turn on “Preview” which will give even more information on the process and actually allow you to change some margin and column settings on the fly (per print job).
Both of these will give extensive information about what Anzio attempts to do when receiving a print job from the host.
13. Other notes
- On dot matrix printers, you may be able to print faster, but with less flexibility, by using a printer-resident font (instead of a TrueType font).
- Starting in version 12.1f, Anzio has a "Print Debug" feature, in Edit:Advanced Options:General. Turning this on will give you feedback on print operations, especially when using Print Wizard. This option is found on the Printer Setup dialog in version 15 or later.
- Use of AnzioWin version 15 or later, with Preview turned on has many advantages in that you can adjust margins and other layout items per print job, including designating where to start printing labels at.
We have experience with a wide range of printing situations, and are adding to that experience daily. If you have questions, problems, or suggestions, please email us at email@example.com or telephone us (in the US) at 503-624-0360