←Select platform

ExportPage(int) Method

Summary
Export the page at the specified index to a RasterImage object.
Syntax
C#
Objective-C
C++/CLI
Java
Python
public RasterImage ExportPage( 
   int pageIndex 
) 
- (nullable LTRasterImage *)exportPageAtIndex:(NSUInteger)pageIndex 
                                        error:(NSError **)error 
public RasterImage exportPage(int pageIndex) 
 
 
 
public RasterImage exportPage(int pageIndex) 
RasterImage^ ExportPage(  
   int pageIndex 
)  
def ExportPage(self,pageIndex): 

Parameters

pageIndex
The zero-based index of the page to export.

Return Value

A RasterImage object containing a copy of the image data of the specified page.

Remarks

This method copies the image data to the created RasterImage object image. Therefore, after this method returns, there is no relationship between the returned value and the IOcrPage inside the OCR document. The returned RasterImage object will need to be disposed.

To export more than one page to a multipage RasterImage object, use ExportPages(int firstPageIndex, int lastPageIndex).

This method is identical to calling IOcrPage.GetRasterImage() on the page whose index is at  pageIndex.

This member only works with memory-based documents and will throw an exception otherwise. For more information, refer to IOcrDocumentManager.CreateDocument and Programming with the LEADTOOLS .NET OCR.

Example

This example will add a page to an OCR document before exporting it back and saving it to disk

C#
Java
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.Ocr; 
using Leadtools.Document.Writer; 
using Leadtools.Forms.Common; 
using Leadtools.ImageProcessing.Core; 
 
public void ExportPageToRasterImageExample() 
{ 
   string tifFileName = Path.Combine(LEAD_VARS.ImagesDir, "Ocr1.tif"); 
   string exportedFileName = Path.Combine(LEAD_VARS.ImagesDir, "OcrExported.jpg"); 
 
   RasterCodecs codecs = new RasterCodecs(); 
 
   // Create an instance of the engine 
   using (IOcrEngine ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.LEAD)) 
   { 
      // Since we have a RasterCodecs object, re-use it in the OCR engine. Although 
      // this demo will not use it, it is always a good practice 
      ocrEngine.Startup(codecs, null, null, LEAD_VARS.OcrLEADRuntimeDir); 
 
      // Create an OCR document 
      using (IOcrDocument ocrDocument = ocrEngine.DocumentManager.CreateDocument()) 
      { 
 
         // Add the image to the document 
         ocrDocument.Pages.AddPage(tifFileName, null); 
 
         // Export it back as a RasterImage 
         RasterImage image = ocrDocument.Pages.ExportPage(0); 
 
         // Save this image to disk 
         codecs.Save(image, exportedFileName, RasterImageFormat.Jpeg, 0); 
 
         // We need to dispose the image ourselves 
         image.Dispose(); 
      } 
 
      // Shutdown the engine 
      // Note: calling Dispose will also automatically shutdown the engine if it has been started 
      ocrEngine.Shutdown(); 
   } 
 
   codecs.Dispose(); 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images"; 
   public const string OcrLEADRuntimeDir = @"C:\LEADTOOLS23\Bin\Common\OcrLEADRuntime"; 
} 
 
import java.io.File; 
import java.io.IOException; 
import java.net.URI; 
import java.net.URISyntaxException; 
 
import org.junit.*; 
import org.junit.runner.JUnitCore; 
import org.junit.runner.Result; 
import org.junit.runner.notification.Failure; 
import static org.junit.Assert.*; 
 
import leadtools.*; 
import leadtools.codecs.*; 
import leadtools.document.writer.DocumentFormat; 
import leadtools.imageprocessing.core.DeskewCommand; 
import leadtools.imageprocessing.core.DeskewCommandFlags; 
import leadtools.ocr.OcrDocument; 
import leadtools.ocr.OcrEngine; 
import leadtools.ocr.OcrEngineManager; 
import leadtools.ocr.OcrEngineType; 
 
 
public void IOcrPageCollectionsExportPageToRasterImageExample() { 
   final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images"; 
   final String LEAD_VARS_OCR_LEAD_RUNTIME_DIR = "C:\\LEADTOOLS23\\Bin\\Common\\OcrLEADRuntime"; 
   String tifFileName = combine(LEAD_VARS_IMAGES_DIR, "Ocr1.tif"); 
   String exportedFileName = combine(LEAD_VARS_IMAGES_DIR, "OcrExported.jpg"); 
 
   RasterCodecs codecs = new RasterCodecs(); 
 
   // Create an instance of the engine 
   OcrEngine ocrEngine = OcrEngineManager.createEngine(OcrEngineType.LEAD); 
 
   // Since we have a RasterCodecs object, re-use it in the OCR engine. Although 
   // this demo will not use it, it is always a good practice 
   ocrEngine.startup(codecs, null, null, LEAD_VARS_OCR_LEAD_RUNTIME_DIR); 
   assertTrue("Engine unsuccessfully started", ocrEngine.isStarted()); 
 
   // Create an OCR document 
   OcrDocument ocrDocument = ocrEngine.getDocumentManager().createDocument(); 
 
   // Add the image to the document 
   RasterImage tifImage = codecs.load(tifFileName); 
   ocrDocument.getPages().addPage(tifImage, null); 
 
   // Export it back as a RasterImage 
   RasterImage image = ocrDocument.getPages().exportPage(0); 
 
   // Save this image to disk 
   codecs.save(image, exportedFileName, RasterImageFormat.JPEG, 0); 
   assertTrue("File unsuccessfully saved", (new File(tifFileName)).exists()); 
 
   // We need to dispose the image ourselves 
   image.dispose(); 
 
   // Shutdown the engine 
   // Note: calling Dispose will also automatically shutdown the engine if it has 
   // been started 
   ocrEngine.dispose(); 
   codecs.dispose(); 
} 
Requirements

Target Platforms

Help Version 23.0.2024.4.19
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Ocr Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.