Graphics on the ARM
Another RISCWorld exclusive serialisation.
Appendix 4 - Printing Graphics
Any comparison of the merits of various printer types will inevitably be to some extent subjective. 'Quality' is hard to define since what looks good to one observer looks poor to another. So only general guidelines can be given here.
Dot matrix printers
Impact dot matrix printers are primarily text printers. Most have graphics modes and so can be used to print graphics. The highest definition available on the Epson FX-80 and compatible 9-pin machines, for instance, is 240 x 216 dpi which requires three passes of the print head for each 1/9 inch of paper, making printing a slow process at the best of times. Some 27-pin dot matrix machines offer higher dot densities of up to 360 dpi.
Dot matrix machines are not recommended for graphics printing for two reasons. Firstly, their ribbons are subject to uneven wear. Consequently within one page and even within the same area of a page the paper is subjected to uneven inking and this looks untidy. Secondly, the mechanism for moving the print head is rarely accurate. Slight inaccuracies which may pass unnoticed on text printouts have a tendency to become glaringly obvious when they occur, for example, in fine vertical lines in graphics.
Ink-jet printers operate by squirting tiny blobs of ink at the paper. In general their printouts are superior to those of dot matrix printers since they offer more consistent inking and more accurate print head placement. Two popular machines are the Hewlett Packard DeskJet and the Canon BJ10EX. Offering 500 dpi and 360 dpi resolutions respectively, their printouts have been described as 'near laser quality',
There are four disadvantages to ink-jet printers. Firstly, some are expensive to operate, gobbling costly ink cartridges at an alarming rate if heavily used. Secondly, the ink takes appreciable time to dry, especially when applied in large solid areas as sometimes happens in printing graphics. Even if the paper dries without crinkling or smudging, an accident with a cup of coffee may wash all trace of text and graphics off the paper. Thirdly, the ink is fired through microscopic nozzles which sometimes become clogged. When a nozzle stops firing, fine uninked streaks appear throughout the printout and if one of these corresponds to a thin line, that line will of course not be printed. Fourthly, the paper quality is critical. Some paper absorbs the ink like blotting paper causing it to spread out in unsightly 'whiskers' that ruin graphics.
Despite these disadvantages, ink-jet printers offer an excellent compromise between cost and quality. An important advantage over dot matrix printers is their quiet operation.
Laser printers generally offer consistent blackness and highly accurate positioning of text and graphics. Until recently their only real disadvantage was their price, but this has fallen steadily, while specification ha-s generally improved. Most laser printers offer 300 dpi and some 600 dpi; some newer machines are offering 400, 800 and even 1200 dpi resolutions.
So far as ARM users are concerned, laser printers fall into three categories: PostScript printers which use the Adobe PostScript page description language, direct-drive laser printers and others such as the Hewlett Packard LaserJet and compatible machines. PostScript printers tend to be expensive, but RISC OS does provide an excellent PostScript printer driver. So far as the LaserJet and other machines are concerned, do ensure if you purchase one of these that it contains at least 1 Mbyte of on-board RAM. You will not be able to print a full A4 page of graphics on it if it contains less. And remember that even text which uses the Acorn outline font system is printed as graphics.
Direct-drive laser printing is a field in which the ARM machines are way ahead of some other computer types. The idea is a very simple one. You take a basic laser printer, disable most of its electronics and drive its mechanism (its 'engine') directly from the computer. In practice this means that a special board, a 'podule' or expansion card, must be installed in the computer. It also imposes another limitation on the computer: since the image that the printer puts on the paper must be built up in computer RAM rather than in the printer's RAM, the computer must have sufficient RAM for that massive image as well as applications. In practice this means at least 2 Mbytes of RAM are needed for 300 dpi printing or 4 Mbytes for 600 dpi (A4 paper size assumed). An interesting benefit of direct drive is that, because the ARM is a much faster processor than that normally fitted in laser printers, printing is far quicker than on conventional laser printers. It has been said that ARM3-driven direct-drive laser printers offer the fastest laser printing available anywhere.
The two best-known systems are Computer Concepts' Laser Direct which currently offers a 600 dpi option for less than £1000 and Calligraph's ArcLaser which now includes an A3 machine having 600 and 1200 dpi facilities.
The systems described above offer monochrome printing only. Colour printing is a little more problematical. Colour laser printers do exist but are very expensive and none is so far offered for the Acorn market. Colour dot matrix printers are comparatively cheap, but they suffer from the same disadvantages as monochrome machines and the colour produced is in general somewhat crude.
Which leaves colour ink-jet printers. For some years, the Integrex printer had the field to itself, but it uses special paper on a roll which is not always convenient. There are two alternatives, both of which use cut paper, although on both, special high-quality paper is recommended. Hewlett Packard's DeskJet C offers 300 dpi using cyan, magenta and yellow inks in one combined cartridge. This has the disadvantage that there is no true black; black areas are printed by overlaying all three process colours and the result is sometimes brownish and sometimes bluish. Computer Concepts is about to launch a Canon BJC800 bubblejet machine which uses separate cyan, magenta, yellow and key (black) cartridges together with a Turbo Driver that is optimised for speed. This machine has a resolution of 360 dpi and can handle A3 paper.
Structure of the printed image
There is a fundamental difference between the structure of the image which appears on the screen and that which any of the printers described above puts on paper. The smallest dot which appears on the screen, a pixel, may be any of the colours in the current palette. A printer, however, can only make marks which are the colour of its ink (or toner). In other words a monochrome printer has a two-colour palette and a colour printer has a four- or five- colour palette, the paper being the additional colour. Variations of colour or intensity therefore can only be provided by dithering.
Both dispersed and clustered dithers can be used, but because at high resolutions (over 300 dpi) even the tiniest inaccuracy can cause unsightly streaks in dispersed dithers, clustered dithers are preferred. When a colour image is printed using clustered dithers, the original is sampled at intervals and the colour at that point is used as the basis of the current cluster. For this reason if you attempt to print an image that already uses dithering, such as Floyd and Steinberg error diffusion, you are likely to obtain disappointing results. Some of the clusters will appear to be in entirely inappropriate colours. Also see chapter 10 on the scaling of sprites for printing.
Other printing systems
Video imagers are more commonly used in the PC world rather than the ARM world, although I have seen a Mitsubishi imager connected to an Archimedes. These units are connected to the computer's monitor socket; they print a copy of the monitor image on a roughly postcard-sized Polaroid photographic paper. Both the machine and the paper are expensive (over £1.00 per sheet) and you are, of course, restricted to what you can get on a screen. The prints are very attractive, however, the gloss finish of the paper giving them an expensive look. For some specialist purposes these may be worth considering.
If your graphics need to look even better that a laser printout, you can get a printing company to typeset them for you using professional equipment. This often has a resolution of 1200, 1800 or 2400 dpi. Expect to pay about £5.00 per side of A4.
Most of this equipment uses the PostScript page description language and reads MS DOS discs. So you will need to load the RISC OS PostScript printer driver and select its 'file' option. If you have RISC OS 3 or a utility such as PCDir you will be able to save the output direct to an MS DOS disc. Otherwise, save the output to an ADFS disc or RAMdisc and transfer it to a DOS disc later from the PC Emulator using the file exchange utilities provided.
Printing - The practicalities
Files in Acorn Draw or sprite format can be printed at any time by dragging them on to the printer driver icon, assuming of course that the printer is on line.
Most graphics software incorporates a print option. If your printer is on line and you have installed the appropriate printer driver, you can leave your printing to the software to handle. You may need to specify the orientation -vertical (portrait) or horizontal (landscape) of the paper. If your graphic is so large that it will not fit on one sheet, you may need to make special arrangements to print over several sheets that will be joined together later. Some application software (such as Vector) handles this automatically; over-size Draw files can be handled by Placard.
If you are using a 1-Mbyte machine you may find that printing is unacceptably slow and you may even get a message stating that there is insufficient memory available to print the document. This is because the printer driver needs memory in the computer to build up an image of the document at the graphics resolution used by the printer. You can release memory for the printer driver in the following ways:
- quit any unwanted applications
- change the screen mode to mode 0 (don't be deterred by the appearance of the screen, the printout quality will not be affected)
- having ensured that the printer driver is correctly set up, delete it from the icon bar. This may sound counterproductive, but it is only the front end that appears on the icon bar and this takes 64 Kbytes. Deleting it will release that precious 64 Kbytes while still leaving the module in memory that is needed for the printing process.