...
- the report is generate as XFF cursor
- savePicture method of the XFRX#DRAW class is called to generate the picture (Please see XFRX#DRAW class reference for details and a complete list of parameters)
...
Code Block | ||||
---|---|---|---|---|
| ||||
LOCAL m.loSession, m.lnRetVal m.loSession= xfrx("XFRX#INIT") * * nothing is sent as the file name, so only a memory cursor is created * m.lnRetVal =m.loSession.SetParams(,,,,,,"XFF") IF m.lnRetVal = 0 m.loSession.ProcessReport("invoices") local m.loXFF, m.lnI, m.lnJpegQuality * * the finalize method returns a XFRX#DRAW object reference, * which will be used to save the pictures * m.loXFF = loSession.finalize() m.lnJpegQuality = 80 * * loXFF.pagecount contains the number of pages of the * report that * was just generated * * we are now going to save all pages one by one as * separate jpeg pictures * FOR m.lnI = 1 TO m.loXFF.pagecount m.loXFF.savePicture("page"+ALLTRIM(STR(m.lnI))+".jpg", ; "jpg",m.lnI,m.lnI,24,m.lnJpegQuality) ENDFOR =MESSAGEBOX("Pictures saved.") ENDIF |
You can generate the following picture formats: TIFF (TIF), BMP, GIF, JPEG (JPG), PNG, EMF. The TIFF supports multiple pages so the whole report gets converted to a single file. For other output formats one file per page is created - the file name is taken from the tcFilename parameter with _%PAGENO%.
The following table shows the mapping between extended parameters and the parameters of the SavePicture() method.
SetOtherParams() | SavePicture() |
---|---|
FROM | tnFrom |
TO | tnTo |
BPP | tnBpp |
JPEGQUALITY | tnJPEGQuality |
THUMBNAILWIDTH | tnThumbnailWidth |
THUMBNAILHEIGHT | tnThumbnailHeight |
PAGESPERSHEET | tnPagesPerSheet |
ALLEVENODD | tnAllEvenOdd |
FINDSTRING | laFindString |
TRANSPARENT (boolean) | liBacgroundMode (number) |
...