Print multi pages on one sheet
Hi
Is there a way to arrange the number of pages to be printed on one sheet
of paper from code? Users can do this using the print dialog, going into
details and selecting pages per sheet from the printer drivers dedicated
properties form. But it is a tedious task when printing hundreds of
reports one after the other.
Best regards
Bora Aydemir
Delphi XE, Report Builder Ent 15.05
Is there a way to arrange the number of pages to be printed on one sheet
of paper from code? Users can do this using the print dialog, going into
details and selecting pages per sheet from the printer drivers dedicated
properties form. But it is a tedious task when printing hundreds of
reports one after the other.
Best regards
Bora Aydemir
Delphi XE, Report Builder Ent 15.05
This discussion has been closed.
Comments
ReportBuilder uses the Windows API to access the standard features of a
printer. It does not have access to special custom features included
with specific printers such as multiple pages per sheet. Below are a
few options you might explore to get the result you need.
1. The DeviceSettings object can be saved with each report if the
PrinterSetup.SaveDeviceSettings property is set to True. You could set
up a certain number of pages per sheet (essentially hard coded) then
save your report and this setting will then be loaded when the report is
loaded.
2. It is possible that your specific printer accepts escape commands
that allow a developer access to custom features such as this one. See
the TppPCL topic in the help as a starting point. Then take a look at
the ppPCL.pas file for all the built-in PCL commands available.
3. It may be possible to manipulate the DeviceSettings object in code
however custom features such as this one will need to be addressed using
your driver API documentation if it is available.
Nico Cizik
Digital Metaphors
http://www.digital-metaphors.com