Dim caption As String = "Example: GetWordBottom"
Dim gdpictureOCR As GdPictureOCR = New GdPictureOCR
Dim gdpicturePDF As GdPicturePDF = New GdPicturePDF
'Load the PDF document.
If gdpicturePDF.LoadFromFile("input.pdf", False) = GdPictureStatus.OK Then
'Select the first page.
gdpicturePDF.SelectPage(1)
'Render this page to a 200 DPI image.
Dim image As Integer = gdpicturePDF.RenderPageToGdPictureImage(200, True)
If gdpicturePDF.GetStat = GdPictureStatus.OK AndAlso
gdpictureOCR.SetImage(image) = GdPictureStatus.OK Then
'Setting up the image is mandatory.
'Set up the OCR parameters.
gdpictureOCR.ResourcesFolder = "C:\Path\To\GdPicture.NET 14\Redist\OCR"
gdpictureOCR.AddLanguage(OCRLanguage.English)
gdpictureOCR.OCRMode = OCRMode.FavorAccuracy
'Set up the OCR context and the character list.
gdpictureOCR.Context = OCRContext.OCRContextSingleLine
gdpictureOCR.CharacterSet = "0123456789"
'Set up the area to be processed by the OCR.
gdpictureOCR.SetROI(100, 100, 200, 50)
'Run the OCR process to recognize the phone number.
Dim resID As String = gdpictureOCR.RunOCR()
If gdpictureOCR.GetStat = GdPictureStatus.OK Then
Dim wordCount As Integer = gdpictureOCR.GetWordCount(resID)
If gdpictureOCR.GetStat = GdPictureStatus.OK Then
Dim left As Integer = gdpictureOCR.GetWordLeft(resID, 0)
Dim top As Integer = gdpictureOCR.GetWordTop(resID, 0)
If gdpicturePDF.DrawRectangle(left, top,
gdpictureOCR.GetWordRight(resID, wordCount - 1) - left,
gdpictureOCR.GetWordBottom(resID, wordCount - 1) - top,
False, True) = GdPictureStatus.OK Then
MessageBox.Show("The recognized phone number area has been successfully drawn.", caption)
End If
'Save the page with drawn recognized phone number to the New PDF document.
If gdpicturePDF.SaveToFile("output.pdf") = GdPictureStatus.OK Then
MessageBox.Show("Done!", caption)
Else
MessageBox.Show("The file can't be saved. Status: " + gdpicturePDF.GetStat().ToString(), caption)
End If
Else
MessageBox.Show("The GetWordCount() method has failed with the status: " + gdpictureOCR.GetStat().ToString(), caption)
End If
Else
MessageBox.Show("The error occurred when running the OCR. Status: " + gdpictureOCR.GetStat().ToString(), caption)
End If
'Release the image.
GdPictureDocumentUtilities.DisposeImage(image)
Else
MessageBox.Show("The error occurred when creating or setting up the image. Status: " + gdpicturePDF.GetStat().ToString() + "/" + gdpictureOCR.GetStat().ToString(), caption)
End If
'Close the document.
gdpicturePDF.CloseDocument()
Else
MessageBox.Show("The file can't be loaded. Status: " + gdpicturePDF.GetStat().ToString(), caption)
End If
'Release resources.
gdpictureOCR.ReleaseOCRResults()
gdpictureOCR.Dispose()
gdpicturePDF.Dispose()
string caption = "Example: GetWordBottom";
GdPictureOCR gdpictureOCR = new GdPictureOCR();
GdPicturePDF gdpicturePDF = new GdPicturePDF();
//Load the PDF document.
if (gdpicturePDF.LoadFromFile("input.pdf", false) == GdPictureStatus.OK)
{
//Select the first page.
gdpicturePDF.SelectPage(1);
//Render this page to a 200 DPI image.
int image = gdpicturePDF.RenderPageToGdPictureImage(200, true);
if ((gdpicturePDF.GetStat() == GdPictureStatus.OK) &&
(gdpictureOCR.SetImage(image) == GdPictureStatus.OK)) //Setting up the image is mandatory.
{
//Set up the OCR parameters.
gdpictureOCR.ResourcesFolder = "C:\\Path\\To\\GdPicture.NET 14\\Redist\\OCR";
gdpictureOCR.AddLanguage(OCRLanguage.English);
gdpictureOCR.OCRMode = OCRMode.FavorAccuracy;
//Set up the OCR context and the character list.
gdpictureOCR.Context = OCRContext.OCRContextSingleLine;
gdpictureOCR.CharacterSet = "0123456789";
//Set up the area to be processed by the OCR.
gdpictureOCR.SetROI(100, 100, 200, 50);
//Run the OCR process to recognize the phone number.
string resID = gdpictureOCR.RunOCR();
if (gdpictureOCR.GetStat() == GdPictureStatus.OK)
{
int wordCount = gdpictureOCR.GetWordCount(resID);
if (gdpictureOCR.GetStat() == GdPictureStatus.OK)
{
int left = gdpictureOCR.GetWordLeft(resID, 0);
int top = gdpictureOCR.GetWordTop(resID, 0);
if (gdpicturePDF.DrawRectangle(left, top,
gdpictureOCR.GetWordRight(resID, wordCount - 1) - left,
gdpictureOCR.GetWordBottom(resID, wordCount - 1) - top,
false, true) == GdPictureStatus.OK)
MessageBox.Show("The recognized phone number area has been successfully drawn.", caption);
//Save the page with drawn recognized phone number to the new PDF document.
if (gdpicturePDF.SaveToFile("output.pdf") == GdPictureStatus.OK)
MessageBox.Show("Done!", caption);
else
MessageBox.Show("The file can't be saved. Status: " + gdpicturePDF.GetStat().ToString(), caption);
}
else
MessageBox.Show("The GetWordCount() method has failed with the status: " + gdpictureOCR.GetStat().ToString());
}
else
MessageBox.Show("The error occurred when running the OCR. Status: " + gdpictureOCR.GetStat().ToString(), caption);
//Release the image.
GdPictureDocumentUtilities.DisposeImage(image);
}
else
MessageBox.Show("The error occurred when creating or setting up the image. Status: " + gdpicturePDF.GetStat().ToString() + "/" + gdpictureOCR.GetStat().ToString(), caption);
//Close the document.
gdpicturePDF.CloseDocument();
}
else
MessageBox.Show("The file can't be loaded. Status: " + gdpicturePDF.GetStat().ToString(), caption);
//Release resources.
gdpictureOCR.ReleaseOCRResults();
gdpictureOCR.Dispose();
gdpicturePDF.Dispose();