AddPages(Stream,int,int,OcrProgressCallback) Method (original) (raw)
Summary
Adds one or more pages from a .NET stream containing a multipage image file.
Syntax
C#
Objective-C
C++/CLI
Java
Python
- (BOOL)addPagesWithStream:(LTLeadStream *)_stream_
inRange:(NSRange)range
error:(NSError **)error
Parameters
stream
The .NET stream containing the multipage image file.
imageFirstPageNumber
1-based index of the first page in stream to add.
imageLastPageNumber
1-based index of the last page in stream to add. A value of -1 means add up to and including the last page in stream.
callback
Optional callback to show operation progress.
Example
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Ocr;
using Leadtools.Document.Writer;
using Leadtools.Forms.Common;
using Leadtools.ImageProcessing.Core;
public void PageCollectionExamples()
{
// For this example, we need a multi-page TIF file.
// Create a muti-page TIF from Ocr1.tif, Ocr2.tif, Ocr3.tif and Ocr4.tif
string tifFileName = Path.Combine(LEAD_VARS.ImagesDir, "Ocr.tif");
if (File.Exists(tifFileName))
File.Delete(tifFileName);
using (RasterCodecs codecs = new RasterCodecs())
{
for (int i = 0; i < 4; i++)
{
string pageFileName = Path.Combine(LEAD_VARS.ImagesDir, string.Format("Ocr{0}.tif", i + 1));
using (RasterImage image = codecs.Load(pageFileName))
codecs.Save(image, tifFileName, RasterImageFormat.CcittGroup4, 1, 1, 1, -1, CodecsSavePageMode.Append);
}
}
string pdfFileName = Path.Combine(LEAD_VARS.ImagesDir, "Ocr.pdf");
// Create an instance of the engine
using (IOcrEngine ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.LEAD))
{
// Start the engine using default parameters
ocrEngine.Startup(null, null, null, LEAD_VARS.OcrLEADRuntimeDir);
// Create an OCR document
using (IOcrDocument ocrDocument = ocrEngine.DocumentManager.CreateDocument())
{
// Load all the pages of the multi-page tif file we created into the form
ocrDocument.Pages.AddPages(tifFileName, 1, -1, null);
Console.WriteLine("{0} pages added to the document", ocrDocument.Pages.Count);
// Auto-zone
ocrDocument.Pages.AutoZone(null);
// Recognize
ocrDocument.Pages.Recognize(null);
// Save
ocrDocument.Save(pdfFileName, DocumentFormat.Pdf, null);
}
// Shutdown the engine
// Note: calling Dispose will also automatically shutdown the engine if it has been started
ocrEngine.Shutdown();
}
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images";
public const string OcrLEADRuntimeDir = @"C:\LEADTOOLS22\Bin\Common\OcrLEADRuntime";
}