Very SLOW image printing
Hello,
We have a fax application that receives faxes and streams the image to a
BLOB field in a database. We are using RB to print the images using a
TppDBImage component.
We have reports from a few users that printing is very slow - 2 to 3 minutes
per page.
Here is the code frag where we create the RB form containing the ppReport
and do the printing...
procedure TFmSF2Main.PrintImageTable(Preview : boolean;ShowPrinterDialog :
boolean;const Printername : string);
var
lPrinter : TppPrinter;{3.2.1.4}
begin
FmRBPrintImages := TFmRbPrintImages.Create(nil);
lPrinter := TppPrinter.Create;
try
FmRBPrintImages.ppReport1.PrinterSetup.papername :=
lPrinter.PrinterSetup.papername;
if Preview then
FmRBPrintImages.ppReport1.DeviceType := 'Screen'
else
begin
if Printername <> '' then
FmRBPrintImages.ppReport1.PrinterSetup.PrinterName := PrinterName
else
FmRBPrintImages.ppReport1.PrinterSetup.PrinterName :=
dm.OptTableGENERAL_DEFAULTPRINTER.value;
FmRBPrintImages.ppReport1.DeviceType := 'Printer';
end;
FmRBPrintImages.ppReport1.ShowPrintDialog := ShowPrinterDialog;
FmRBPrintImages.ppReport1.Print;
finally
FmRBPrintImages.Free;
lPrinter.Free;
end;
end;
We have the CachedPages property setting of TppReport set to false.
Is there some way to speed things up ?
We have a fax application that receives faxes and streams the image to a
BLOB field in a database. We are using RB to print the images using a
TppDBImage component.
We have reports from a few users that printing is very slow - 2 to 3 minutes
per page.
Here is the code frag where we create the RB form containing the ppReport
and do the printing...
procedure TFmSF2Main.PrintImageTable(Preview : boolean;ShowPrinterDialog :
boolean;const Printername : string);
var
lPrinter : TppPrinter;{3.2.1.4}
begin
FmRBPrintImages := TFmRbPrintImages.Create(nil);
lPrinter := TppPrinter.Create;
try
FmRBPrintImages.ppReport1.PrinterSetup.papername :=
lPrinter.PrinterSetup.papername;
if Preview then
FmRBPrintImages.ppReport1.DeviceType := 'Screen'
else
begin
if Printername <> '' then
FmRBPrintImages.ppReport1.PrinterSetup.PrinterName := PrinterName
else
FmRBPrintImages.ppReport1.PrinterSetup.PrinterName :=
dm.OptTableGENERAL_DEFAULTPRINTER.value;
FmRBPrintImages.ppReport1.DeviceType := 'Printer';
end;
FmRBPrintImages.ppReport1.ShowPrintDialog := ShowPrinterDialog;
FmRBPrintImages.ppReport1.Print;
finally
FmRBPrintImages.Free;
lPrinter.Free;
end;
end;
We have the CachedPages property setting of TppReport set to false.
Is there some way to speed things up ?
This discussion has been closed.
Comments
I didn't look at your code, but could it be the printer driver? ie will the
same report print okay with one printer and not another?
Ed Dressel
Team DM
in the report except for the tppdbimage component. It prints fine it just
takes 2 - 3 minutes per page to print.
Is it only with certain drivers/printers, or is every printer slow?
Ed Dressel
Team DM
Paintshop...)? Is there a noticable difference in speed when printing to
these printers?
Try updating to the latest printer driver that you can.
Cheers,
Jim Bennett
Digital Metaphors
http://www.digital-metaphors.com
info@digital-metaphors.com
him what printer he is using, he hasn't replied yet. We have a lot of users
and I only occassionally have any complaint about this, so it very well
could be a driver issue, I'm not sure what to suggest to the user. The last
one I had to deal with swore he had the latest driver, I belive it was an HP
printer.
specifications.
Cheers,
Jim Bennett
Digital Metaphors
http://www.digital-metaphors.com
info@digital-metaphors.com
haven't heard back from him. I always hate recommending that because they
think it is a cop-out on my part :-(
We have always had a problem printing images from Delphi. From Delphi you
absolutely cannot print to some printers - most notably the Xerox XD
workcentre line of printers. The only way we ever had any success was to
use RB. It prints fine to these printers where QR and others fail to
produce any output at all. So what's the deal with TPrinter anyway ? Joe
Hecht says it is seriously flawed.