LEADTOOLS OCR (Leadtools.Forms.Ocr assembly)

ExportPages(Int32,Int32) Method

Show in webframe
Example 







The zero-based index of the first page to export.
The zero-based index of the last page to export. A value of -1 means export up to and including the last page in the OCR document.
Export one or more pages at the specified index to a multi-page Leadtools.RasterImage object.
Syntax
RasterImage ExportPages( 
   int firstPageIndex,
   int lastPageIndex
)
'Declaration
 
Overloads Function ExportPages( _
   ByVal firstPageIndex As Integer, _
   ByVal lastPageIndex As Integer _
) As RasterImage
'Usage
 
Dim instance As IOcrPageCollection
Dim firstPageIndex As Integer
Dim lastPageIndex As Integer
Dim value As RasterImage
 
value = instance.ExportPages(firstPageIndex, lastPageIndex)
RasterImage ExportPages( 
   int firstPageIndex,
   int lastPageIndex
)
- (LTRasterImage*)exportPages:(int)firstPageIndex
                lastPageIndex:(int)lastPageIndex
                        error:(NSError**)outError;
            
public RasterImage exportPages(int firstPageIndex,
                               int lastPageIndex)
            
function Leadtools.Forms.Ocr.IOcrPageCollection.ExportPages(Int32,Int32)( 
   firstPageIndex ,
   lastPageIndex 
)
RasterImage^ ExportPages( 
   int firstPageIndex,
   int lastPageIndex
) 

Parameters

firstPageIndex
The zero-based index of the first page to export.
lastPageIndex
The zero-based index of the last page to export. A value of -1 means export up to and including the last page in the OCR document.

Return Value

A Leadtools.RasterImage object containing a copy of the image data of the specified page or pages.
Remarks

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

To export a single page to a Leadtools.RasterImage object, use ExportPage(int pageIndex).

A short-cut to export all the pages in the OCR document to a multi-page Leadtools.RasterImage object is ExportPages(1, -1).

Example
Copy Code  
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.Forms.Ocr
Imports Leadtools.Forms
Imports Leadtools.Forms.DocumentWriters
Imports Leadtools.WinForms
Imports Leadtools.ImageProcessing.Core
Imports Leadtools.Drawing

Public Sub ExportPagesToRasterImageExample()
   Dim imagesPath As String = LEAD_VARS.ImagesDir
   Dim tifFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "OcrMultiPage.tif")
   Dim codecs As New RasterCodecs()

   ' Create an instance of the engine
   Using ocrEngine As IOcrEngine = OcrEngineManager.CreateEngine(OcrEngineType.Advantage, False)
      ' 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, Nothing, Nothing, LEAD_VARS.OcrAdvantageRuntimeDir)

      ' Create an OCR document
      Using ocrDocument As IOcrDocument = ocrEngine.DocumentManager.CreateDocument()


         ' Loop through the images, add them to the document
         For i As Integer = 0 To 3
            Dim pageFileName As String = Path.Combine(imagesPath, String.Format("Ocr{0}.tif", i + 1))
            ocrDocument.Pages.AddPage(pageFileName, Nothing)
         Next

         Console.WriteLine("OCR document contains {0} pages", ocrDocument.Pages.Count)

         ' Export the pages from index 1 to 3 to a RasterImage object
         Dim image As RasterImage = ocrDocument.Pages.ExportPages(1, 3)

         Console.WriteLine("image contains {0} pages", image.PageCount)

         ' Save this image to multi-page TIF file
         codecs.Save(image, tifFileName, RasterImageFormat.Tif, 1, 1, -1, 1, CodecsSavePageMode.Overwrite)
      End Using

      ' Shutdown the engine
      ' Note: calling Dispose will also automatically shutdown the engine if it has been started
      ocrEngine.Shutdown()
   End Using

   codecs.Dispose()
End Sub

Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
Public Const OcrAdvantageRuntimeDir As String = "C:\LEADTOOLS 18\Bin\Common\OcrAdvantageRuntime"
End Class
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Forms.Ocr;
using Leadtools.Forms.DocumentWriters;
using Leadtools.Forms;
using Leadtools.ImageProcessing.Core;

public void ExportPagesToRasterImageExample()
{
   string tifFileName = Path.Combine(LEAD_VARS.ImagesDir, "OcrMultiPage.tif");
   RasterCodecs codecs = new RasterCodecs();

   // Create an instance of the engine
   using (IOcrEngine ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.Advantage, false))
   {
      // 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.OcrAdvantageRuntimeDir);

      // Create an OCR document
      using (IOcrDocument ocrDocument = ocrEngine.DocumentManager.CreateDocument())
      {
         // Loop through the images, add them to the document
         for (int i = 0; i < 4; i++)
         {
            string pageFileName = Path.Combine(LEAD_VARS.ImagesDir, string.Format("Ocr{0}.tif", i + 1));
            ocrDocument.Pages.AddPage(pageFileName, null);
         }

         Console.WriteLine("OCR Document contains {0} pages", ocrDocument.Pages.Count);

         // Export the pages from index 1 to 3 to a RasterImage object
         RasterImage image = ocrDocument.Pages.ExportPages(1, 3);

         Console.WriteLine("Image contains {0} pages", image.PageCount);

         // Save this image to multi-page TIF file
         codecs.Save(image, tifFileName, RasterImageFormat.Tif, 1, 1, -1, 1, CodecsSavePageMode.Overwrite);
      }

      // 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:\Users\Public\Documents\LEADTOOLS Images";
public const string OcrAdvantageRuntimeDir = @"C:\LEADTOOLS 18\Bin\Common\OcrAdvantageRuntime";
}
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Forms.Ocr;
using Leadtools.Forms.DocumentWriters;
using Leadtools.Forms;
using Leadtools.ImageProcessing.Core;

[TestMethod]
public async Task ExportPagesToRasterImageExample()
{
   string tifFileName = "OcrMultiPage.tif";
   RasterCodecs codecs = new RasterCodecs();

   // Create an instance of the engine
   IOcrEngine ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.Advantage, false);

   // 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, String.Empty, Tools.OcrEnginePath);

   // Create an OCR document
   IOcrDocument ocrDocument = ocrEngine.DocumentManager.CreateDocument();

   // Loop through the images, add them to the document
   for(int i = 0; i < 4; i++)
   {
      string pageFileName = string.Format(@"Assets\Ocr{0}.tif", i + 1);
      StorageFile loadFile = await Tools.AppInstallFolder.GetFileAsync(pageFileName);
      using (RasterImage image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile)))
         ocrDocument.Pages.AddPage(image, null);
   }

   Debug.WriteLine("OCR Document contains {0} pages", ocrDocument.Pages.Count);

   // Export the pages from index 1 to 3 to a RasterImage object
   RasterImage exportedImage = ocrDocument.Pages.ExportPages(1, 3);

   Debug.WriteLine("Image contains {0} pages", exportedImage.PageCount);

   // Save this image to multi-page TIF file
   StorageFile saveFile = await Tools.AppLocalFolder.CreateFileAsync(tifFileName);
   await codecs.SaveAsync(exportedImage, LeadStreamFactory.Create(saveFile), RasterImageFormat.Tif, 1, 1, -1, 1, CodecsSavePageMode.Overwrite);

   // Shutdown the engine
   ocrEngine.Shutdown();

   codecs.Dispose();
}
Requirements

Target Platforms

See Also

Reference

IOcrPageCollection Interface
IOcrPageCollection Members
Overload List
OcrEngineManager Class
OcrEngineType Enumeration
IOcrPage Interface
Programming with the LEADTOOLS .NET OCR

 

 


Products | Support | Contact Us | Copyright Notices
© 2006-2014 All Rights Reserved. LEAD Technologies, Inc.

ExportPages(Int32,Int32) requires an OCR module license and unlock key. For more information, refer to: Imaging Pro/Document/Medical Features