Synthesize Method of the FRPage Object
This method performs document synthesis for the individual page. This method may be useful when processing one-page documents with Batch Processor. In this case, you do not need to create FRDocument object for each page, but instead you can use synthesis and export methods of the FRPage object.
However, if you are working with a multi-page document, calling this method for each of the pages is not enough. You will have to perform document synthesis for the whole document at least once (using, e.g., the IFRDocument::Synthesize method). But if after the full document synthesis you need to make some changes to one page, you can then call Synthesize for that one page, saving time.
When you perform document synthesis for one page of a document using this method, all other pages of the document remain unchanged. This method call is similar to the IFRDocument::SynthesizePages method call with the index of the page as the first parameter.
See below for the list of the few cases when document synthesis may be omitted.
HRESULT Synthesize( ISynthesisParamsForDocument* SynthesisParamsForDocument );
void Synthesize( ISynthesisParamsForDocument SynthesisParamsForDocument );
Visual Basic .NET
Sub Synthesize([SynthesisParamsForDocument As ISynthesisParamsForDocument = Nothing])
- [in] The SynthesisParamsForDocument object that stores parameters of document synthesis. This parameter may be 0. In this case, the page is synthesized with default parameters, or, if a profile has been loaded, the parameters set by this profile are used.
If synthesis is interrupted by the user, this method will return E_ABORT. It also returns the standard return codes of ABBYY FineReader Engine functions.
- You may omit the stage of document synthesis in the following cases:
- If you are going to export recognized text to TXT format. When exporting to this format, synthesis information is not used.
- If you are going to export document to PDF ImageOnly format. The recognized text and layout information are not used in this mode.
In all other cases, document synthesis must be performed. Omitting document synthesis will cause errors.
- Methods having the word "Process" in their names (e.g., IFRDocument::Process) include the stage of document synthesis. Processing methods of the FRPage object do not include it, so after using them you must explicitly call some method which performs document synthesis.
- You may speed up the stage of document synthesis and decrease memory usage. If you set the ISynthesisParamsForPage::DetectFontFormattingAtPageLevel property to TRUE during page synthesis, you can then turn off the detection of font parameters and document structure during document synthesis (ISynthesisParamsForDocument::DetectFontFormatting and ISynthesisParamsForDocument::DetectDocumentStructure). Nevertheless, the quality may deteriorate.
- This method may report events to the listeners attached to the IConnectionPointContainer interface of the FRPage object.