Page 1 of 1
Printing multiple copies with collate
Posted: Mon Feb 06, 2006 10:58 pm
by TAG
I cannot get the printing of multiple copies with collation to work. The output does not collate. I get the multiple copies, but pages are together.
I am printing to a network printer, could that cause the problem?
I can fix with a loop in my code, I was just wondering if there is a problem printing to network printers.
Posted: Tue Feb 07, 2006 5:57 pm
by Sergey Tkachenko
Do you call Print (or PrintPages) method with the specified numbers of copies and collation flag?
A cycle in PrintPages handles collation:
Code: Select all
if Collate then
for copyno:= 1 to Copies do
for i := firstPgNo to lastPgNo do
begin
DrawPage(i, Printer.Canvas,False,False);
DoOnPrinting(i, rvpsProceeding);
if not ((i=lastPgNo) and (copyno=Copies)) then Printer.NewPage;
end
else
for i := firstPgNo to lastPgNo do
for copyno:= 1 to Copies do
begin
DrawPage(i, Printer.Canvas,False,False);
DoOnPrinting(i, rvpsProceeding);
if not ((i=lastPgNo) and (copyno=Copies)) then Printer.NewPage;
end;
If the printer supports collation ((pcCopies in Printer.Capabilities) and (pcCollation in Printer.Capabilities)), trichview sets:
Printer.Copies := Copies;
Copies=1;
i.e. allows printer to handle collation itself.
I do not know, may be this printer mistakenly reports that it supports collation, but really it does not?