In this tutorial, you will configure a C# or VB.NET project for a console application and use ImageGear .NET OCR capabilities to load an image, OCR and export the data to the console.
The following tutorial refers specifically to 64-bit installations; for 32-bit installations:
- Your project should already be set to compile to target Debug and x86, and you should have the directory: $YOURLOCALPROJ\bin\x86\Debug\.
- Throughout these instructions, replace x64 with x86.
- The 32-bit ImageGear binaries are found in $INSTALLDIR\ImageGear .NET v24\Bin\
Using the desired version of Visual Studio (2010 or later):
- Create a new "Console Application" project, using C# or VB.NET, and name the project: my_first_OCR_project
- If you installed ImageGear .NET 64-bit, using the Configuration Manager, create a new project platform (if you don't have one already) for x64. Make sure your project is set to compile targeting Debug and x64. Confirm you now have $YOURLOCALPROJ\bin\x64\Debug\, and if it's not there, create it.
- Add references and required resources into your projects in one of the following ways:
- Copy all files (and folders) inside $INSTALLDIR\ImageGear .NET v24 64-bit\Bin\ to your local output bin directory in your project (i.e., $YOURLOCALPROJ\bin\x64\Debug\ ).
- Add the following references to your project from $YOURLOCALPROJ\bin\x64\Debug\:
- ImageGear24.Evaluation.dll
- ImageGear24.Formats.Common.dll
- ImageGear24.Formats.SimplifiedMetadata.dll
- ImageGear24.Recognition.dll
- ImageGear24.Recognition.Forms.dll
Your output target directory (output path) should be set to $YOURLOCALPROJ\bin\x64\Debug\
- At this point all necessary assembly references and resources have been added to the project. Make sure to replace C:\PATHTOIMAGE\ with your own image filename and path:
Add the following using statements to the top of the file.
C# |
Copy Code |
using System.IO;
using ImageGear.Core;
using ImageGear.Formats;
using ImageGear.Recognition;
using ImageGear.Evaluation; |
VB.NET |
Copy Code |
Imports ImageGear.Core
Imports ImageGear.Formats
Imports ImageGear.Recognition
Imports ImageGear.Evaluation
Imports System.IO |
- Add the following code to create a private method to OCR, and export the data to the console. This code sets up licensing, initializes the ImageGear Formats assembly and initializes the Recognition engine.
C# |
Copy Code |
namespace my_first_OCR_project
{
class Program
{
public void OCRFile(string fileToBeRecognizedPath)
{
// Initialize the license.
ImGearEvaluationManager.Initialize();
ImGearEvaluationManager.Mode = ImGearEvaluationMode.Watermark;
// Initialize the common formats.
ImGearCommonFormats.Initialize();
// Initialize the Recognition object.
ImGearRecognition igRecognition = new ImGearRecognition();
ImGearPage igPage; |
VB.NET |
Copy Code |
Module Module1
Public Sub OCRFile(fileToOCR As String)
' Initialize the license.
ImGearEvaluationManager.Initialize()
ImGearEvaluationManager.Mode = ImGearEvaluationMode.Watermark
' Initialize the common formats.
ImGearCommonFormats.Initialize()
' Initialize the Recognition object.
Dim igRecognition As New ImGearRecognition()
Dim igPage As ImGearPage |
- Add the following code to load the image, and set the ImGearRecPage.
C# |
Copy Code |
using (FileStream localFile = new FileStream(fileToBeRecognizedPath, FileMode.Open, FileAccess.Read))
igPage = ImGearFileFormats.LoadPage(localFile, 0);
ImGearRecPage igRecPage = igRecognition.ImportPage((ImGearRasterPage)igPage); |
VB.NET |
Copy Code |
Using localFile As New FileStream(fileToOCR, FileMode.Open, FileAccess.Read)
igPage = ImGearFileFormats.LoadPage(localFile, 0)
End Using
Dim igRecPage As ImGearRecPage = igRecognition.ImportPage(DirectCast(igPage, ImGearRasterPage)) |
- Add the following code to preprocess the image, and output the data to the console.
C# |
Copy Code |
igRecPage.Image.Preprocess();
igRecPage.Recognize();
Console.Write(igRecPage.Text); |
VB.NET |
Copy Code |
igRecPage.Image.Preprocess()
igRecPage.Recognize()
Console.Write(igRecPage.Text) |
- Add the following code to dispose the igRecognition and page object.
C# |
Copy Code |
// You must explicitly call the page/document dispose method before calling igRecognition.Dispose()
igRecPage.Dispose();
igRecognition.Dispose(); |
VB.NET |
Copy Code |
' You must explicitly call the page/document dispose method before calling igRecognition.Dispose()
igRecPage.Dispose()
igRecognition.Dispose() |
- Finally, add in the Main function, the OCRFile method passing in your image, and output to the console.
C# |
Copy Code |
static void Main(string[] args)
{
Program myProgram = new Program();
myProgram.OCRFile(@"C:\PATHTOOCR\FILENAME.tif");
} |
VB.NET |
Copy Code |
Sub Main()
OCRFile("C:\PATHTOOCR\FILENAME.tif")
End Sub
End Module |