This unit implements the driver abstraction layer for the reporting engine, defines a interface to print reports and a streamable metafile structure to store, proces, draw, set of pages containing graphic and text elements, it also defines the Report Metafile file format.
| Name | Description |
| TRpOrientation |
Enumeration (rpOrientationDefault,rpOrientationPortrait,rpOrientationLandscape) Page orientation |
| TRpMetaObjectType |
Enumeration (rpMetaText,rpMetaDraw,rpMetaImage) Three graphic types rupported |
| TRpMetaSeparator |
Enumeration (rpFHeader,rpFPage,rpFObject) Separators for metafile file format |
| TRpMetaObject | Packet record, used to store in memory information about graphic objects, also to stream pages (array of TRpMetaObject), it's a variant record, can contain any type of meta object |
| TRpTextObject | Record used to pass text options to interface functions |
| TRpMetafileStreamProgres |
procedure (Sender:TRpMetafileReport; Position,Size:int64; page:integer) of object; Event for metafile streaming progress |
| Name | Base class | Description |
| ERpBadFileFormat | Exception | Exception with stream position information |
| TTotalPagesObject | TObject | Used to store total page variable print for the two pass report |
| IRpPrintDriver |
IUnknown |
Interface, defines the required functions to implement a Report Manager output driver |
| TRpMetafilePage | TObject | Defines a page object, each page has an array of TRpMetaObjects |
| TRpMetafileReport | TComponent | Report Metafile component, contains a collection of pages, the pages can be streamed, the TRpMetafileReport can be drawn to any IRpPrintDriver |