L_OcrPage_SaveXml (original) (raw)

Summary

Converts the cumulated recognition result stored in this page to XML data and stores it in a disk file with XML options.

Syntax

#include "ltocr.h"

L_LTOCR_API L_INT EXT_FUNCTION L_OcrPage_SaveXml(page, fileName, pageNumber, xmlOptions, outputOptions)

Parameters

L_OcrPage page

Handle to the OCR page.

const L_TCHAR* fileName

The output file name to save the XML data to.

L_UINT pageNumber

1-based page number to use.

const L_OcrWriteXmlOptions* xmlOptions

Options to use when creating the XML data.

L_OcrXmlOutputOptions outputOptions

A combination of one or more OcrXmlOutputOptions enumeration members that specify the XML generation options.

Returns

Value Meaning
SUCCESS The function was successful.
< 1 An error occurred. Refer to Return Codes.

Comments

Converts the cumulated recognition result stored in this page to XML data and stores it in a disk file with XML options.

Required DLLs and Libraries

See Also

Functions

Topics

Example

L_INT L_OcrPage_SaveXmlExample() { BITMAPHANDLE bitmap = { 0 }; L_OcrEngine ocrEngine = NULL; L_OcrPage ocrPage = NULL; // Create an instance of the engine L_INT retCode = L_OcrEngineManager_CreateEngine(L_OcrEngineType_LEAD, &ocrEngine); if(retCode != SUCCESS) return retCode; // Start the engine using default parameters L_OcrEngine_Startup(ocrEngine, NULL, OCR_LEAD_RUNTIME_DIR); // Load an image to process L_LoadBitmap(MAKE_IMAGE_PATH(L_TEXT("Ocr1.tif")), &bitmap, sizeof(BITMAPHANDLE), 0, ORDER_RGB, NULL, NULL); // Add the image to an OCR page L_OcrPage_FromBitmap(ocrEngine, &ocrPage, &bitmap, L_OcrBitmapSharingMode_AutoFree, NULL, NULL); // Transfer ownership to the OCR page bitmap.Flags.Allocated = 0; // Recognize it L_OcrPage_Recognize(ocrPage, NULL, NULL); // Save the result XML to a disk file L_OcrWriteXmlOptions ocrWriteXmlOptions; ocrWriteXmlOptions.StructSize = sizeof(L_OcrWriteXmlOptions); ocrWriteXmlOptions.Encoding = L_OcrXmlEncoding_UTF8; ocrWriteXmlOptions.Formatted = true; wsprintf(ocrWriteXmlOptions.Indent, TEXT(" ")); retCode = L_OcrPage_SaveXml(ocrPage, MAKE_IMAGE_PATH(L_TEXT("Ocr1.xml")), 0, &ocrWriteXmlOptions, L_OcrXmlOutputOptions_CharacterAttributes); // Done with this, so we can dispose of it. L_OcrPage_Destroy(ocrPage); ocrPage = NULL; //CLEANUP if(ocrPage != NULL) L_OcrPage_Destroy(ocrPage); if(ocrEngine != NULL) L_OcrEngine_Destroy(ocrEngine); return SUCCESS; }