?
Solved

Printer Canvas Preview?

Posted on 2002-07-24
1
Medium Priority
?
803 Views
Last Modified: 2010-04-04
Is there any possibility of previewing the printer canvas? It is annoying to print the whole canvas to the printer whenever you change something on it.

Tnx.
0
Comment
Question by:ssdjgru1
1 Comment
 
LVL 7

Accepted Solution

by:
Cynna earned 400 total points
ID: 7176002
I'm afraid not if you already have stuff on Printer.Canvas...
Printers Canvas is not the same as for example, Bitmaps Canvas - you could take it as a write-only canvas. So,
straightforward approach, ie. copy from printer to screen  won't work.
The way to resolve this could be to draw on bitmap first, and copy it to Printer.Canvas immediately before printing.
But this has some drawbacks, primarily because of low-quality scaling.
The best solution is drawing on metafile, and then copying it to printer.
This is explained in following article:

"Add Print Preview to your applications" : http://www.undu.com/Articles/000207f.html

As you can see, it's a bit of work...

Probably the best thing would be using some free component
for this. For example, http://www.radix.net/~bziegler/Delphi/pprev.zip

There is interesting approach using QRPrinter, and more info here:
http://www.efg2.com/Lab/Library/Delphi/Printing
(search for "Print Preview")
0

Featured Post

Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

The uses clause is one of those things that just tends to grow and grow. Most of the time this is in the main form, as it's from this form that all others are called. If you have a big application (including many forms), the uses clause in the in…
Introduction I have seen many questions in this Delphi topic area where queries in threads are needed or suggested. I know bumped into a similar need. This article will address some of the concepts when dealing with a multithreaded delphi database…
Look below the covers at a subform control , and the form that is inside it. Explore properties and see how easy it is to aggregate, get statistics, and synchronize results for your data. A Microsoft Access subform is used to show relevant calcul…
When cloud platforms entered the scene, users and companies jumped on board to take advantage of the many benefits, like the ability to work and connect with company information from various locations. What many didn't foresee was the increased risk…

571 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question