Change paper and page settings with .NET APIs
The default paper settings for a report are specified in the .4rp file. Override the defaults in your report program with the .NET APIs.
Each report design document includes details about the page orientation, the page size of the report, and the report margins. These values are set when a report is first created, and can be altered by the report designer.
In the .NET report application, you can override these report page and paper settings, thanks to the order of precedence for paper settings:
Paper settings order of precedence
- In the report application using reporting APIs.
- In the report design document (.4rp).
- GRW default values.
Change the page height and width
FourRpLayouter
or PXMLLayouter
objects.PXMLConsumer layout = new PXMLLayouter(renderer);
// Set the page length (height) and width
layout.pageLength = "6inch";
layout.pageWidth = "8.5inch";
Change the report margins
FourRpLayouter
or PXMLLayouter
objects.
PXMLConsumer layout = new PXMLLayouter(renderer);
layout.topMargin = "15mm";
layout.bottomMargin = "5mm";
layout.leftMargin = "4mm";
layout.rightMargin = "4mm";
Set page orientation
The initial report size is set in the report design document (.4rp). In the report application, use the .NET APIs to change the orientation forFourRpLayouter
or
PXMLLayouter
objects. There is no method for changing the page
orientation; you change the height and width of the paper to create a portrait or
landscape orientation.In this example, assume the initial report is a standard A4
portrait report. To change it to an A4 landscape report, use the
pageLength()
and pageWidth()
methods.
PXMLConsumer layout = new PXMLLayouter(renderer);
// Change page orientation
layout.pageLength = "a4width"; // length is now width
layout.pageWidth = "a4length"; // width is now length
Changing page orientation from within the program works best when a report design is based on dynamic layouting.