TMWPrintObject Component
Version 3.0

Created by: Woody (James Woodard)
Email: woody.tmw@ih2000.net


Built in Delphi Version 2.0.
(So far, all reports have been that it works great in
 every other 32 bit version of Delphi up to 5, so I 
 get to keep using D2 for awhile and save my money :)

  This component was built to allow me to create complex
reports that most visual report writers don't give you.
There are times ....

  Aw, screw it. I decided it was time to zing up my Readme
file so I deleted the rest and filled in with this:


  Don't you just hate it when the people you work for keep
coming to you time and time again and changing the way they
want reports? Or adding new information? Not that you can't
make "your" code more generic to take these things into account.
But how many of your report writers are that flexible? If you're
like me, I prefer to "roll my own reports". That way I can control
the exact sequence of sorting, grouping, headers and footers for 
each and every page. There's nothing like stepping back from a 
good looking report and saying, "Damn, now THAT should be hanging
in museum somewhere!"

  OK, so it's not exactly THAT good, but, hey, had you going...
Actually, though, it is really cool. The best thing about it is
that you can use this component to print to ANY canvas, not just
a printer. Got an image on a form you want to draw to. Set the
TMWPrintObject's PrinterCanvas property to the image canvas and 
voila! Mix text and graphics together using either pixels or
inches, whichever you're more comfortable with. There are routines
to convert from pixels to inches and vice-versa.

  Wrap text in columns created on the image or printer canvas.
Yes, you can do this and more. Check out the demo program and
see a demonstration of animation using standard printing 
commands. This component makes things so easy to print, that I
have created several other programs, like a bitmap and icon 
printing program so I can print out pictures of my graphics to
look at when deciding the next icon for a program. (Email me
and request a copy if you want. No charge. It's free, too.)

  I got so bored with black and white that I put in all the
color commands, too such as setting font, pen and brush colors
and styles. If you have a color printer, it will print in color.
If you don't, the text will always print in black so as not to 
look faded but the graphics will print in shades of gray. 

  OK, back to the boring talk now...

  The three ingredients to this component are Printdrv.PAS,
PrintDr1.PAS and PrintDr2.PAS. The source(PAS,DFM) and compiled(DCU) 
versions of these files are supplied. Only the compiled (DCU) files 
and the form(DFM) files need to be used. The Printdrv.DCU file is 
the one that needs to be installed. Copy all three to your favorite 
component folder and then, well, you know what to do. I included the
bitmaps that I used for the page navigation buttons just in case.

  The help file contains information regarding the various properties,
events and methods used by the component. It is getting out of date
quickly but I have had an offer from a user of the component to create
one using HTML so I'll send it to anyone interested. Just deop me an 
if you like the component and would like the help file when ready.
Use Delphi's HelpInst program to merge the .kwf file into Delphi's 
.hdx file to give you context-sensitive help capability from the IDE.

  If there are problems or you have suggestions on how to improve it,
please let me know. I am not sure of it's capacity for storing pages,
so I don't know how large a report it can handle. You are mainly limited
by the amount of memory you have.

  This component is freeware. You may use it however you wish. Just don't 
come crying to me when they keep coming to you for more of these
outstanding reports!! The ONLY restriction is that you can not use this
component to build a report generator for commercial sale. That would
tend to compete with me and that just wouldn't be right for you to do.

NOTE: Be sure to read the Additions.txt file. It contains the update
information while in-between help file updates. There are a lot of
changes and I'm working on updating the help to include everything.
Bear with me, folks.

Woody
woody.tmw@ih2000.net
