You are not logged in.
Pages: 1
I want to create a report which is a concatenation of other reports and get the footer page numbering as shown in the original concatenated report ('Page #/#'). It doesn't seem that easy to do. Would one way be to add two private TIntegerDynArray variables to TGDIPages which parallel fPages in size? A 'ResetPageCount' function could be added to manage these new variables and then when EndDoc is called they would be used to build the footer page number text.
Offline
What I'm aiming for is a PDF with a set of reports with their original page numbers. Would it be possible to use
property Pages: TGDIPageContentDynArray read fPages;
to copy between two TGDIPages which are created at the same time. One would make all the sub-reports and the other would copy these as they are made and create a combined report at the end?
Offline
Could TGDIPages.SetMetaFileForPage and getMetaFileForPage be given public scope. Then I can simply do something like:
for i := 0 to NumberOfReports do
//make report...
report.EndDoc;
for ii := 0 to report.PageCount -1 do begin
MergedReport.NewPage;
MergedReport.SetMetaFileForPage(MergedReport.PageCount-2, report.GetMetaFileForPage(ii));
end;
end;
It's not perfect because NewPage flushes the last page overwriting the content. As a workaround the Merged report has one more page than needed and gets the penultimate page written to.
Offline
OK, I'll try and do something along the lines of ExportPDFStream.
Offline
Thanks for the help. I've worked out how to do it
Offline
Pages: 1