home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Crawly Crypt Collection 1
/
crawlyvol1.bin
/
graphics
/
printall
/
printall.doc
next >
Wrap
Text File
|
1992-10-08
|
15KB
|
260 lines
PrintAll
1. Introduction
The name may sound ambitious, but the author's intention is to support
most major graphics formats available to the Atari computer/HP printer
user.
Version 1.0, the first public release, recognizes, reads and prints
the following file extensions/formats in color or greyscale on the
HP 500C Color DeskJet printer, and in greyscale on the HP 500:
.GIF Compuserve's Graphics Interchange Format
.MTV The MTV raytracer raw output file format (24 bit)
.NEO Neochrome low- and medium-res images
.PC1 Degas Elite Compressed low-resolution format
.PC2 Degas Elite Compressed medium-resolution format
.PI1 Degas/Degas Elite low-resolution format
.PI2 Degas/Degas Elite medium-resolution format
.QRT The QRT raytracer raw output file format (24 bit)
.SPC Spectrum 512 compressed images
.SPU Spectrum 512 uncompressed images
Plans for future support include:
.IMG GEM bit image files
.PC3 Degas Elite Compressed high-resolution format
.PI3 Degas/Degas Elite high-resolution format
.PNT Prism Paint format
.TN? "Tiny" image format
.RAS Sun Microsystems "rasterfile" format
.JPG Joint Photographic Experts Group compressed images
...and more!
Each type of image file is converted into an internal 24-bit representation.
All subsequent processing, such as dithering, gamma correction and
quantization for printing, is done in this 24-bit space. This results in
the truest possible representation of the original image on the printer.
The price of this accuracy (there is always a price!) is memory usage.
Users with less than 4 megabytes of RAM will find themselves limited in
the maximum size of the images they can print.
2. Usage (The short form)
This program is extremely simple to use. Double-click on the file
"printall.prg". The resource file "printall.rsc" must either be in the
same directory as printall.prg, or in the Desktop's search path.
PrintAll will display its title box. Select the "OK" button or press
the return key to dismiss it. You will then be presented with a file
selector. Select the file you wish to print. A status bar will show
the progress of reading and converting the file.
Next, the Transmogrification (image processing) options dialog appears.
Set the options to your liking, then select "OK" to continue.
The Output options dialog appears next. These options control how and
where the image will print. When you have set the options to your
liking, select "OK" to continue. If you have selected the "File"
output destination, another file selector will appear. Enter the file
where you wish the printer commands to go.
At this point, another status bar will appear. The program will make
one pass through the data, performing all the selected Transmogrifications
and the quantization for output. When this pass completes, the status
bar will appear again for the final output pass. At this point, the
printer commands are generated and sent either to disk or to the printer.
When complete, the process begins again at the file selection phase.
Selecting "Cancel" in any dialog exits the program immediately.
3. Usage (The details)
The file you select to be printed must have an extension that matches one
of the supported types listed above. This is because the extension of the
file is used to determine its format. If the extension is not recognized,
an alert box will inform you of this. After dismissing the alert, you
will be presented with the file selector to make an alternate selection, or
select the "Cancel" button to quit the program.
If the file type is recognized, PrintAll opens the file and attempts to
verify that the file is what it claims to be. (This is not foolproof in
all cases.) If the verification succeeds, a status bar will appear and
will indicate the progress of the file conversion. Note that some file
types, such as GIFs which are heavily compressed, will take a significant
amount of time to read, decompress, and convert. The dimensions of the
image also have a direct relationship to the reading/conversion time.
After the file has been successfully read, the Transmogrifications dialog
appears. Currently there are three choices: Inversion, Dithering and
Gamma Correction.
Setting Inversion to "Yes" causes PrintAll to invert the color values of
the image. If printing in color, the image will resemble a color negative;
if printing in black, the image will be black-white reversed. The default
state of Inversion is "No", which will produce a "normal" image.
Setting Dithering to "Yes" causes PrintAll to use an error-distribution
algorithm when quantizing the 24-bit internal format down to the number
of shades available for printing. If dithering is enabled and a pixel
cannot be represented exactly on the printer, the magnitude and direction
of the error is distributed to the right, lower-right, and lower neighbor
pixels. This is results in a more accurate rendition of the color or grey
values in the image than does quantization alone. In particular, dithering
can significantly reduce or eliminate "false contouring", the appearance
of artificial lines at color value changes where no lines should appear.
There is, again, a price. In some images with very large areas of a
constant pixel value, the error distribution may cause diagonal lines to
appear in these areas. You will have to decide if the false contouring
is more acceptable than the dithering noise. The default setting for
Dithering is "Yes", because the process is effective far more often than
not.
Gamma Correction is used to compensate for the different intensity curves
of a CRT screen and the printer's inks. Higher gamma values (up to a
maximum of 9) lighten the image; lower values (down to a minimum of .1)
darken it. The extremes are arbitrary values and are not necessarily
useful values for any particular purpose.
A gamma value of 1.0 produces a direct mapping between a pixel's value in
memory and its value when quantized for printing. However, because of the
differences in the relative perceived intensity of a CRT compared to that
of the inks used in the printer, this setting will not necessarily result
in a printed image that matches the image seen on the CRT.
The default gamma value of 2.5 is appropriate for color printing on the
500C; gamma values smaller than this produce an image which tends to be
too dark. For black ink printing, the gamma value should be set around 1.
Of course you should experiment with different values with different
images, and for different effects. Different media will also affect the
appropriate gamma setting, as will the setting of the "Quality" option.
When you have selected the desired Transmogrification options, click on
the "OK" button to continue. The "Cancel" button quits the program.
3. Output Options
The output options determine how and where the image is printed. The first
choice is that of the color (CMY) or black ink cartridge. If you do not
have an HP 500C color printer, the only appropriate choice here is "Black".
I cannot vouch for what the result will be if the "Color" option is used
with a non-color printer. The program itself has no means of verifying
your printer type. Caveat user.
The Orientation option determines the direction in which the image will be
printed on the page. The "Portrait" orientation causes the image to be
printed in the same direction as you see it on the screen, whereas the
Landscape orientation causes the image to be rotated 90 degrees, so that
the horizontal axis of the screen maps to the longer axis of an 8.5 by 11
sheet of paper.
Vertical Justification selects where on the length of the page the image
will be placed, regardless of orientation. "Top" places the edge of the
image approximately one-half inch from the top edge of the page. "Center"
causes the image to be center-justified along the length of the page.
"Bottom" places the image so that its trailing edge is approximately one-
half inch from the bottom edge of the page.
Horizontal Justification is just like Vertical Justification, but for the
other axis of the paper (surprise!).
Power-user note: Careful choice of resolution, matrix, position and
orientation options combined with repeated loading of the same sheet of
paper can produce an interesting collage effect with smaller images.
Output Destination selects whether the printer commands go to the printer
port, as set up in the Control Panel dialog, or to a file. If you select
output to file, you may choose via a file selector where to put the result.
Output to file is somewhat faster than output to printer, and provides the
option of making additional copies of the image without going through all of
the processing steps again. However, depending on the size and complexity
of the image, the output can be quite large. Output direct to the printer
requires no additional disk storage.
Matrix selects the size of the halftoning matrix used to output each pixel.
The 3 by 3 matrix produces 10 greyscale values or 1,000 possible colors (10
intensities of cyan times 10 of magenta times 10 of yellow), per pixel.
The 4 by 4 matrix provides 17 greyscale values or 4,913 possible colors per
pixel (do the math yourself). When dithering is used, the effective output
is even higher, due to the pixel averaging that takes place in the eye.
Resolution selects the size of the output pixels. At 300 dots per inch
(dpi) resolution, one output pixel is one dot, times the matrix size. At
150 dpi, one output pixel is two dots wide and two dots high, times the
matrix size, and so on. Obviously, the higher the output resolution, the
better looking the image. However, with image formats like Degas low-
resolution, a 300 dpi image with a 3 by 3 matrix will only be about 3.2
inches wide! On the other hand, resolutions below 150 are not very
useful, in the author's opinion, except perhaps for special effects.
A side effect of changing the matrix size is that the output image size is
also changed. The Dimension display at the bottom of the dialog is
provided to help you select the appropriate combination of matrix and
resolution. Remember that the width of the output is restricted to a
maximum of 8 inches by the printer, and length is restricted to 10.5
inches. When Landscape orientation is chosen, the width of the image is
mapped to the length of the page, and vice versa.
4. General hints
This program uses tons of memory. It should be graceful about reporting
insufficient memory conditions, and allow you to continue without bombs.
However, the author uses it on a 4 megabyte machine and has never
encountered this condition, so be warned. Until such time as Atari comes
out with a virtual memory operating system, serious image processing will
require lots of RAM.
From the author's own experience, the HP JetSeries CutSheet Paper (HP
part number 51630Y) is highly recommended for color printing. This
specially-coated paper produces blacker blacks and brighter brights than
any other paper that was tried. If you've been less than impressed with
the quality of the color output and have not used the HP paper, give it
a try.
For printing with black ink, use a good-quality ink jet paper. I usually
use the printer's "Draft Quality" setting and a gamma of 1.0.
The most spectacular images I have printed have been 24-bit raytraces from
the DKB raytracer, in QRT format. If you have access to this software, I
highly recommend it.
The second most spectacular images I have printed have been 256-color GIFs
of size 640 by 480 or larger. But note: all GIFs are not created equal!
Since by definition the format requires a color look-up table, the software
which generates the look-up table from the original image is crucial. Many
GIF images end up using only a fraction of the total 256 colors available,
and the result is a less-than-perfect reproduction of the original image.
The GIF files that have the optimally-chosen set of 256 colors and that use
all of them are quite stunning.
Spectrum 512 images also look good if you do not enlarge them too much.
Try printing them two to a page (V-just "Top" for the first and V-just
"Bottom" for the second; remember to reload the page image-side down), at
150 dpi resolution with the 3 by 3 matrix (6.4 inches by 4.0 inches).
5. The legal department: No warranty
The author believes that this software will do a reasonable job of printing
the supported file formats on an HP DeskJet 500 or 500C printer. However:
This software is freeware. As such, it is provided on an as-is basis,
with absolutely no warantees, either express or implied, including, but not
limited to performance, usefulness, reliability, fitness for a particular
purpose or merchantability. The user assumes any and all risk involved in
the use of this software. In no event will the author be liable for
direct, indirect, incidental, or consequential damages resulting from the
use of, or inability to use, this software.
6. Support
I am on Compuserve, in the ATARIPRO and ATARIARTS forums, fairly regularly.
I would enjoy hearing favorable comments, and also welcome suggestions, bug
reports and entreaties for future format support. I won't promise any
particular action except to say that I am a user of this program as well
as its author. See you on-line.
Greg Wageman 74016,352