Welcome to Print Wizard!
This file is here to help you get started with the 'live' or the demo version
of PrintWiz. The only difference is that the demo version will tag each
printed page with a line indicating it is printed with an unregistered
version.
***************************************************************************
FILES INCLUDED
In addition to this file (readme.txt), you should have:
* the printwiz program (printwiz.exe)
* the callable module (pwdll.dll)
* the MapiSend program (mapisend.exe)
* the Print Wizard LPD program (pwlpd.exe)
* the "What's New" text file (whatsnew.txt)
* the main documentation file (printwiz.doc)
* documentation of MapiSend (mapisend.doc)
* documentation of PWLPD (pwlpd.doc)
* Notes on faxing with WinFax Pro (winfaxpw.doc)
* two support files for filePro (printwiz.prt and printwzc.prt)
and several sample files which you can have PrintWiz print.
The file PRINTWIZ.DOC explains Print Wizard's design goals, its HTML-like
coding scheme, and how to use the various programs.
***************************************************************************
THE PROGRAM
The printwiz.exe file contains a 32-bit Windows program. It will run on
Windows 95, 98, ME, Windows NT, and Windows 2000.
The program is a 'console' application, which means it has no operator
interface. In most operation it is invisible. Its behavior is governed by
command line parameters.
***************************************************************************
INSTALLATION
The only installation necessary is to put the executable components somewhere
in your PATH.
***************************************************************************
USING PRINT WIZARD WITH FILEPRO
Print Wizard now includes two printer definition files for use with filePro
(a database system). They are:
PRINTWIZ.PRT For use with monochrome printers
PRINTWZC.PRT For use with color printers
Both are designed to be printcode-for-printcode compatible with PRT files
commonly used in filePro to support HP Laserjet and DeskJet printers, as
developed by Jim Asman. That is, if you have a filePro program or report
output designed to include printcodes from Asman's PRT files, you should be
able to substitute the above PRT files. The print data then generated will
contain Print Wizard Markup Language (PWML) tags. When that print data is sent
through Print Wizard, the printed output should be highly compatible.
In addition, printcodes are provided to allow:
* Printing barcodes
* Printing bitmap pictures
* Printing the Euro character
* Printing form overlays
To install:
* Place the PRT files in the same directory as your other printer drivers
for filePro.
* Configure filePro to use the one of the PRINTWIZ printer drivers,
and to print to a particular disk file.
* If your filePro supports the PFPOSTPRINT environment variable, do
SET PFPOSTPRINT=c:\somedir\printwzd
Otherwise, set up Print Wizard in despooler mode as documented.
Notes on usage:
* Code 3 will initialize the PW in general, but will not select a font.
This will leave PW configured to its default font, normally Courier New.
This is a good choice, because it is scalable in both directions.
* If your printout is not scaling fonts correctly, check in its control
panel setting for how it handles fonts. Generally you DON'T want to allow
font substitution, and you may need to experiment with how the driver
downloads TrueType fonts.
* If you explicitly request a font, such as LinePrinter, and the printer
does not have it (as indicated by its driver), PW will fall back to using
Courier New.
* PW uses internal bitmaps to create all linedraw characters.
* If you feed PW a file containing escape sequences, such as from a
different PRT, PW will see the escape codes and automatically revert to
printing directly to the Windows spooler.
* Windows drivers generally don't handle the printer's resident Courier
font very well. It is better to stick to Courier New. This may require
adjustment of your program, or your PRT file.
* Try running with the PRINT DEBUG feature. In PRINTWIZ.EXE, use a command
line parameter "/vDEBUG".
* Try out BARCODES. Use code 73 to initialize barcode parameters. Change
this printcode as necessary, to set a different style of barcode,
different height, etc. Then to print a barcode, use code 74, followed by
text to barcode, followed by code 75.
* Try white-on-black, code 77.
* Try printing pictures. Use code 68 to initialize (adjust as necessary).
Then use code 75, followed by base file name, followed by code 76. For
instance, as code 68 is configured, if you do code 75, then "wally "
then code 76, you'll get a picture found in "wally.gif", in the same
directory as the file being printed. You can adjust code 68 to indicate
your pictures are in a particular directory, by adding the HREF parameter.
* To do form overlays, either bitmap or PCL, you'll need to create or change
an initialization printcode, to include the OVERLAY parameter.
***************************************************************************
USING PRINT WIZARD WITH ACUCOBOL
The DLL form of Print Wizard can be used with a Windows-based Acucobol program,
to achieve auto-fit as well as fancy printing. The sample file TEST-PW.CBL
demonstrates how to do this.
Notes:
* The PWDLL.DLL must be in the same directory as the compiled cobol object
(test-pw.acu, for instance).
* The runtime configuration file must contain the line
DLL-CONVENTION 1
***************************************************************************
CHANGE HISTORY
Changes in 1.2
* Barcode
* Allow tags to stretch past one line
* Bitmaps: how to make sizing device-independent? (based on IMG_DPI)
* Allow setting manual paper size, especially length for dot matrix
printers (PAGESIZE X= Y= ). Setting only one of them assumes
X = 8.5 inches, Y=11 inches.
* ALIGN options for IMG
* HSPACE option added for IMG
* All unit assumptions based on DPI or IMG_DPI
* Handling of DPI (Dots per inch):
* Assume DPI = IMG_DPI = 120
* If we get PAGESIZE, take my assumtions (DPI=720, IMG_DPI=300)
* Allow DOTSPERINCH in PAGESIZE, BODY
* Allow IMGDOTSPERINCH in PAGESIZE, BODY
* Added BASE HREF
* Measuring line width now accounts for tags, ampersand characters,
extra CRs at end
* Margins now figured BEFORE calculating optimal character width
* Numerous bugs fixed
* RIGHTMARGIN, BOTTOMMARGIN
* We don't open a page until necessary for text. CRs, LFs after
last FF get ignored
* Bug fixed: if font width was specified (explicitly or via PrintWiz),
font generated could be too tall, resulting in lost line
* For unpaginated text, will attempt 66 LPP before 6 LPI
* RIGHTMARGIN, BOTTOMMARGIN
* 66 LPP
Changes in 1.2a:
* Fixed bug in color of rectangle (HR)
* HR outline sometimes lost right edge.
* HR now centers between margins
Changes in 1.2b:
* Deal better with an ampersand that does NOT represent a special character.
* Allow ampersand special-character entities to be terminated by
space as well as semicolon.
* Make program more robust in handling erroneous HTML.
* In PrintWiz program, allow '/i' parameter, indicating file is ISO.
Changes in 1.3:
* PrintWiz bug fixed: bitmap WIDTH, HEIGHT were using units of DPI;
now using IMG-DPI.
* PrintWiz bitmap sizing: if only one of height, width specified,
scale the other proportionally
* If file contains escape codes, go to "raw" printing.
Changes in 2.0:
* When logging the print jobs, if device is "captured" (such as LPT2:),
show where it's mapped to.
* For raw printing, change method of determining file name to write to,
to work on NT also.
* Allow character entities to contain decimal or hex representations:
Dxxx (decimal)
Hxxx (hex)
* Allow encoding of Unicode characters as above.
* Numeric parameters can be in quotes, such as
* Allow following to have relative sizes (such as 'size = -2'), percentage,
units (pointsize = 12pt), and fractional values:
font pointsize
* Break line before ampersand entities if necessary.
* Process
(Break)
* Show options if /? or illegal parameter
* Support GIF files
* WININET:
* Allow main file to be on the Internet
* Allow GIF image file to be on the Internet
* If BODY elements (text, bitmaps, barcodes, hr) found before raw text
don't print them.
* In wiz_analyze, keep track of where BODY starts
* Bug fixed in logfile handling
* When specifying printer (/p), can leave off "WINSPOOL,"
* Parameter /cnnn sets baud rate to 'nnn' if printing goes out 'raw'
* Improvements in raw print handling as in Anzio 12.
* Improved handling of logging, parameter errors.
* Make wildcarding work without specifying full path.
* Allow wildcarding when not doing keepalive.
* Allow input from stdin, indicated as file name "-"
* If bitmap image not found, print a box.
* Improvements in wrapping after image.
* Add OVERLAY option to PAGESIZE tag.
* Improve accuracy of fractional horizontal, vertical character spacing
* Also recognize - now doesn't lose following space
* Recognize € for Euro character
* Some adjustments in point size handling made for more accuracy
* Provide as a DLL (PWDLL.DLL)
Changes in version 2.0a:
* Bug fixed in GOTO in Y direction.
* Add superscript (, ) and subscript (, ). Vertical
shift is 3/8 of current ascent. Size changes to 3/4 of current size. Note
that this may affect horizontal spacing.
Changes in 2.0b:
* Better determination of which Unicode values are wide.
* In PrintWiz.EXE, added the following parameters:
* /vLEVEL=xxx (xxx is HIGH or LOW or RAW) turns off Print Wizard
features, and just outputs at the indicated method.
You may need to force certain jobs to print RAW,
for instance.
* /vTAGS=OFF Print Wizard will do auto-fit, but will ignore, and
therefore print, all tags.
* Can now enter size in units (pt, in, etc.) for FONT SIZE as well
as for FONT POINTSIZE.
Changes in 2.0c:
* Printwiz.exe: Bug fixed in handling findfirst.
Changes in 2.0d:
* Compatible with Delphi 5
* Fax option
* Bug fixed when buffer filled.
* New option: /r
Changes in 2.2a:
* When a horizontal rule (HR) is specified with relative positioning, it is
printed relative to the basepoint of the current text line.
* Bug fixed in handling PWML with no CRs or LFs.
Changes in 2.2b:
* In Print Wizard's PCL overlay handling:
* Filter out Printer Job Language (PJL).
* PCL file can be on FTP or HTTP server.
* Print Wizard can now specify Duplex, in the PAGESIZE tag: