This function is provided when using Adelia Print Engine.
It is an extended version of VaToolBxAPETransformDoc. It performs the same processing plus an additional input-output parameter to retrieve information about the document produced.
NB: this function is the Adelia counterpart to the APE "transformxslfo" Web service.
Remember: The VaToolBx dll must already be loaded (LOAD_DLL instruction) when this function is called and must remain loaded when the VaToolBxAPEClearDataModel, VaToolBxAPEMergeDoc, VaToolBxAPEAddInDataModel or VaToolBxAPEMergeAndTransformDoc functions are called.
Application area
- Java client,
- Java server,
- Adelia Web client,
- Adelia Cloud client.
Parameters
IMAGE |
XslfoDoc |
Document au format XSL-FO. |
ALPHA(n) |
MimeType |
Result document output format. The string must be in the format defined by RFC 6838 (click here for more details ). |
ALPHA(n) or IMAGE |
Options |
Definition of options to apply during document processing. |
IMAGE |
TransformDoc |
Result document from executing the Apache FOP engine on the XslfoDoc document. |
ALPHA(n) or IMAGE | ExtraParams | Input-output parameter in JSON object format. Each attribute of this object must have a name among the following elements:
|
NUM_BIN_2 |
ReturnCode |
Operation return code: 0: Operation completed successfully. -1: The "Options" parameter must be ALPHA or IMAGE type. -2: Error during syntax analysis in JSON format of "Options" processing options. -3: Error during value analysis of "Options" processing options. -4: Input/output error during analysis of "Options" processing options. -5: Error when closing the TransformDoc result document. -6 : The type of the "ExtraParams" parameter must be ALPHA or IMAGE. -7 : Error analyzing JSON format syntax of the "ExtraParams" parameter -8 : Error analyzing values of "ExtraParams" parameter -9 : Input/output error analyzing "ExtraParams" parameter -10?: Error updating the "ExtraParams" parameter. The errors described below relate to the processing of the XslfoDoc document by the Apache FOP engine: 31: Apache FOP engine creation error. 32: Document transformer creation error. 33: Error when transforming the XslfoDoc document. 34: Input/output error when processing the result document. 35: Internal error when processing the XslfoDoc document produced by the engine. |
Apache FOP engine output formats
This engine supports several output formats.
XSL-FO document processing options
The "Options" parameter is used to define additional characteristics when producing the result document.
The format of options must be JSON: all the options are described in an object with each member describing an option, namely:
- docDescription: option to define metadata stored in the result document (JSON Object-type value).
This option can only be used with certain output formats which allow metadata storage.
The Apache FOP engine currently only implements metadata support for the "application/pdf" format. - pdfDocPolicy: option to define the document permissions policy in "application/pdf" format (JSON array of Object-type value). This groups the protection functions by password, print authorizations, etc.
- docDescription: option to define metadata stored in the result document (JSON Object-type value).
For example
ALPHA(20) | MimeType |
ALPHA(256) | Options |
IMAGE | XslfoDoc |
IMAGE | TransformDoc |
NUM_BIN_2 | returnCode |
ALPHA(256) | extraParams |
ALPHA(256) | xmlDoc |
xml_idf | idfXmlDoc |
NUM_BIN_2 | totalNbPages |
MimeType = 'application/pdf'
Options = '{"pdfDocPolicy": {"userPassword": "user"}}}'
* Preparation of the additional parameter requesting the total number of pages of the constructed document
extraParams = '{"Ape-Total-Number-Pages": null}'
CALL_DLL 'VaToolbx.dll' ' VaToolBxAPETransformDocEx' XslfoDoc MimeType Options TransformDoc extraParams returnCode
* Retrieve the total number of pages from the JSON extraParams parameter
conv_data extraParams 'JSON' xmlDoc 'XML'
xml_open idfXmlDoc *read *doc_var (xmlDoc)
xml_select idfXmlDoc //Ape-Total-Number-Pages
XML_GET_VAL idfXmlDoc totalNbPages
xml_close idfXmlDoc ↑ Top of page