Description
The Block
property returns an OCRTextBlock
object that describes a block of recognized text, specified by its index among all recognized text blocks.
Declaration
OCRTextDocumentObj.Block(Index)
Read-Only Property |
An OCRTextBlock object
|
OCRTextDocumentObj | An expression, variable or parameter that specifies a reference to an OCRTextDocument object | |||
Index | [in] | Required | Integer |
Applies To
The property is applied to the following object:
Parameters
The property has the following parameter:
Index
Specifies the index of the text block you want to get. The index is zero-based, that is, the first item has index 0, the second—1, and so on. The index of the last block is BlockCount
– 1.
Property Value
An OCRTextBlock
object that describes a portion of recognized text.
Example
The following example shows how to use optical character recognition to recognize text in the About dialog of Windows Notepad and post the recognized text to the test log.
JavaScript, JScript
{
var p = Sys.WaitProcess("notepad", 3000);
if (p.Exists)
{
// Get the Notepad window
var wndNotepad = p.WaitWindow("Notepad", "*", 1, 3000);
if (wndNotepad.Exists)
{
wndNotepad.MainMenu.Click("Help|About Notepad");
// Get the About Notepad window
var wndAbout = p.WaitWindow("#32770", "About Notepad", 1, 3000);
if (wndAbout.Exists)
{
// Recognize the text that the About Notepad window contains
var recognizedText = OCR.Recognize(wndAbout);
// Post the recognized text to the test log
Log.Message("View all the recognized text in the Details panel", recognizedText.FullText);
// Post portions of the recognized text to the test log
if (recognizedText.BlockCount > 0)
{
Log.AppendFolder("Recognized text by blocks");
for (var i = 0; i < recognizedText.BlockCount; i++)
{
Log.Message(recognizedText.Block(i).Text);
}
Log.PopLogFolder();
}
}
}
}
else
{
Log.Warning("Notepad is not running.");
}
}
Python
def GetRecognizedText():
p = Sys.WaitProcess("notepad", 4000)
if p.Exists:
# Get the Notepad window
wndNotepad = p.WaitWindow("Notepad", "*", 1, 4000)
if wndNotepad.Exists:
wndNotepad.MainMenu.Click("Help|About Notepad")
# Get the About Notepad window
wndAbout = p.WaitWindow("#32770", "About Notepad", 1, 4000)
if wndAbout.Exists:
# Recognize the text that the About Notepad window contains
recognizedText = OCR.Recognize(wndAbout)
# Post the recognized text to the test log
Log.Message("View all the recognized text in the Details panel", recognizedText.FullText)
# Post portions of the recognized text to the test log
if recognizedText.BlockCount > 0:
Log.AppendFolder("Recognized text by blocks")
for i in range(0, recognizedText.BlockCount):
Log.Message(recognizedText.Block[i].Text)
Log.PopLogFolder()
else:
Log.Warning("Notepad is not running.")
VBScript
Set p = Sys.WaitProcess("notepad", 3000)
If p.Exists Then
' Get the Notepad window
Set wndNotepad = p.WaitWindow("Notepad", "*", 1, 3000)
If wndNotepad.Exists Then
wndNotepad.MainMenu.Click("Help|About Notepad")
' Get the About Notepad window
Set wndAbout = p.WaitWindow("#32770", "About Notepad", 1, 3000)
If wndAbout.Exists Then
' Recognize the text that the About Notepad window contains
Set recognizedText = OCR.Recognize(wndAbout)
' Post the recognized text to the test log
Call Log.Message("View all the recognized text in the Details panel", recognizedText.FullText)
' Post portions of the recognized text to the test log
If recognizedText.BlockCount > 0 Then
Log.AppendFolder("Recognized text by blocks")
For i = 0 To recognizedText.BlockCount - 1
Log.Message(recognizedText.Block(i).Text)
Next
Log.PopLogFolder
End If
End If
End If
Else
Log.Warning("Notepad is not running.")
End If
End Sub
DelphiScript
var p, wndNotepad, wndAbout, recognizedText, i;
begin
p := Sys.WaitProcess('notepad', 3000);
if p.Exists then
begin
// Get the Notepad window
wndNotepad := p.WaitWindow('Notepad', '*', 1, 3000);
if wndNotepad.Exists then
begin
wndNotepad.MainMenu.Click('Help|About Notepad');
// Get the About Notepad window
wndAbout := p.WaitWindow('#32770', 'About Notepad', 1, 3000);
if wndAbout.Exists then
begin
// Recognize the text that the About Notepad window contains
recognizedText := OCR.Recognize(wndAbout);
// Post the recognized text to the test log
Log.Message('View all the recognized text in the Details panel', recognizedText.FullText);
// Post portions of the recognized text to the test log
if recognizedText.BlockCount > 0 then
begin
Log.AppendFolder('Recognized text by blocks');
for i := 0 to recognizedText.BlockCount - 1 do
Log.Message(recognizedText.Block[i].Text);
Log.PopLogFolder;
end;
end;
end;
end else
Log.Warning('Notepad is not running.');
end;
C++Script, C#Script
{
var p = Sys["WaitProcess"]("notepad", 3000);
if (p["Exists"])
{
// Get the Notepad window
var wndNotepad = p["WaitWindow"]("Notepad", "*", 1, 3000);
if (wndNotepad["Exists"])
{
wndNotepad["MainMenu"]["Click"]("Help|About Notepad");
// Get the About Notepad window
var wndAbout = p["WaitWindow"]("#32770", "About Notepad", 1, 3000);
if (wndAbout["Exists"])
{
// Recognize the text that the About Notepad window contains
var recognizedText = OCR["Recognize"](wndAbout);
// Post the recognized text to the test log
Log["Message"]("View all the recognized text in the Details panel", recognizedText["FullText"]);
// Post portions of the recognized text to the test log
if (recognizedText["BlockCount"] > 0)
{
Log["AppendFolder"]("Recognized text by blocks");
for (var i = 0; i < recognizedText["BlockCount"]; i++)
{
Log["Message"](recognizedText["Block"](i)["Text"]);
}
Log["PopLogFolder"]();
}
}
}
}
else
{
Log["Warning"]("Notepad is not running.");
}
}
Note: | If you use Python or DelphiScript, you should enclose the parameter in square brackets. |