テキストプロパティ
テスト対象システム(SUT)で光学文字認識(OCR)を使用してテキストを検索したり読み取ったりするには、テキストプロパティリストを使用する必要があります。これらのプロパティリストには、作業中のテキストや検索の目的に応じて含めることができる多種多様なプロパティがあります。
詳細については、OCRの利用を参照して、最も一般的に使用されるテキストプロパティの使用方法を学んでください。
このページでは、SenseTalkスクリプティングと直接関連するOCRプロパティをカバーしています。Eggplant Functionalのいくつかの位置からOCRプロパティを調整することも可能です:
テキストプロパティリストとは何ですか?
テキストプロパティリストは、SUT上のテキストの説明です。すべてのテキストプロパティリストには、検索対象の実際のテキスト文字列を定義するText
プロパティと、以下で説明する追加のプロパティが含まれている必要があります。プロパティリストに含まれていないプロパティは、テキストプリファレンスの設定にデフォルト設定されます。
以下のテキストプロパティは、任意のテキストプロパティリストで使用できます:
- Text:
テキスト文字列
。 SUT上で見つけたいテキスト文字列。 (必須) - TextStyle:
テキストスタイル名
。 事前に定義されたテキストプロパティのグループ。 (詳細は、テキスト検索パネルを参照してください。)
OCRテキストプロパティ参照表
以下の表をOCRで作業する際の参照として使用してください。これは、OCRの使用に対応するすべてのサポートされているSenseTalkプロパティの完全なリストです。一部のプロパティは読み取りと検索の両方で利用できますが、一部は特定のものに特化しています。プロパティに渡される値のタイプも含まれています。プロパティの名前をクリックすると、その完全な説明が表示されます(完全な説明リストはこのページの表の下に含まれています)。最も一般的なOCRプロパティの使用方法について詳しく知るには、OCRの成功を参照してください。
boolean
値は、Yes/Noの値が許可されるトグルスイッチのようなものであり、On/Offも許可されます。
プロパティ | 検索 | 読取り | 値 |
---|---|---|---|
AggressiveTextExtraction | はい | はい | Boolean |
CaseSensitive | はい | いいえ | Boolean |
Contrast | はい | はい | Boolean |
ContrastColor | はい | はい | 色(SenseTalkでの色値参照) |
ContrastTolerance | はい | はい | 0-100 / デフォルト45 |
DPI | はい | はい | 整数 |
EnhanceLocalContrast | はい | はい | Boolean |
ExtraWords | はい | はい | 文字列または単語のリスト |
IgnoreNewLines | はい | いいえ | Boolean |
IgnoreSpaces | はい | いいえ | Boolean |
IgnoreUnderscores | はい | いいえ | Boolean |
InvertImage | はい | はい | Boolean |
Language | はい | はい | OCR言語サポートで指定されている言語名(大文字小文字を区別)。 |
LowResolutionMode | はい | はい | ブール値 |
Multiline | いいえ | はい | Boolean |
PreferDictionaryWords | はい | はい | Boolean |
PreferredPattern | はい | はい | 正規表現の文字列 (SenseTalkでパターンを使用するを参照) |
PreferredWords | はい | はい | 文字列または単語のリスト |
ProhibitedWords | はい | はい | 文字列または単語のリスト |
SearchRectangle | はい | いいえ* | 矩形を定義する座標のペアまたはキャプチャした画像 |
TextDifference | はい | いいえ | 整数 |
TextRotation | はい | はい | 事前に定義された4つの値のうちの1つ |
Trim | いいえ | はい | Boolean |
TrimBorder | いいえ | はい | 整数 |
TrimColor | いいえ | はい | 色 (SenseTalkでの色値を参照) |
TrimTolerance | いいえ | はい | 整数 |
TrimWhitespace | いいえ | はい | Boolean |
ValidCharacters | いいえ | はい | Boolean |
ValidPattern | はい | はい | 正規表現の文字列 (SenseTalkでパターンを使用するを参照) |
ValidWords | はい | はい | 文字列または単語のリスト |
* ReadText
にはデフォルトで矩形が含まれているため、SearchRectangle
プロパティを設定する必要はありません。このプロパティは、標準的な画像検索でも設定できます。詳しくは、画像参照をご覧ください。
OCRプロパティ定義
アグレッシブテキスト抽出
タイプ: Boolean
。OCR で画像からできるだけ多くのテキストを抽出する場合は、このプロパティを有効にします。
アグレッシブテキスト抽出 例
アグレッシブテキスト抽出 例
Log ReadText(("TLImage","BRImage"), AggressiveTextExtraction:on)
大文字と小文字の区別
タイプ: ブール値、デフォルト: オフ
。Eggplant Functionalがテキスト検索で大文字と小文字を考慮するかどうか。このプロパティを有効にすると、テキスト検索で大文字と小文字が区別され、テキスト文字列の大文字と小文字が正確に一致するテキストのみが検索されます。このプロパティは、テキストを読み取るためではなく、テキストを検索するためのものです。
CaseSensitive の例
-- caseSensitive example
Put "COUPON13995a" into Coupon
MoveTo (Text: Coupon, CaseSensitive:Yes)
コントラスト
Contrast: Boolean.
SUTの表示が、OCR分析に送信される前に高コントラストの2色画像に変換されるかどうか。contrast
がオンの場合、"コントラストカラー"と呼ばれる色(ContrastColor
プロパティを使用して設定できます)がSUTの表示の主要な色と見なされ、他のすべての色は二次色として扱われます。テキストはどちらの色でも見つけることができます。Contrast
プロパティは、テキストの検索(検出)と読み取りの両方で使用可能です。
コントラストの例
-- コントラストの例
log ReadText(contrast:on, contrastColor:"ffffff", validCharacters: "abcdABCD12345", searchRectangle:("TLImage","BRImage"))
Contrastがオンになっていても、ContrastColorが定義されていない場合、検索対象のエリアの左上のピクセルが対比色として扱われます。
コントラストカラー
カラー。デフォルト: [コントラスト] がオ ンで、他の色が定義されていない場合、検索四角形の左上隅がコントラスト カラーとして使用されます
。コントラストが
オンの場合、コントラストカラーはSUTディスプレイのプライマリカラーと見なされ、他のすべてのカラーはセカンダリカラーとして扱われます。背景色を見つける方法については、Determining the Background Color」を参照してください。SenseTalkは、いくつかのカラー値フォーマットを認識します。フォーマットの完全なリストについては、SenseTalkのColor値を参照してください。
ContrastColor の例
-- コントラストの例
log ReadText(contrast:on, contrastColor:"ffffff", validCharacters: "abcdABCD12345")
コントラストトレランス
ContrastTolerance:
整数。 デフォルト: 45。 Contrast
がオンの場合、contrastTolerance
は、ピクセルがコントラストカラーと見なされるための許容最大チャネルカラー差を設定します。
ContrastColor の例
-- コントラストの例
Click (Text:"Andrew Young", Contrast:On, ContrastTolerance: 65)
DPI
DPI:
整数。 デフォルト: 72。 DPI
プロパティは、SUTディスプレイのDPI(ドット/インチ)を参照します。 SUT上のテキストが見つからない問題がある場合は、SUTのDPI設定を確認し、DPI
プロパティをそれに応じて調整します。 典型的なDPI設定には、72、144、300、2540が含まれます。
DPIの例
DPIの例
Click (text: "Continue", DPI: 2540, Language: English)
エンハンスローカルコントラスト
タイプ: Boolean。デフォルト: オフ
。OCR エンジンに送信されるテキスト画像のローカルコントラストを OCR で自動的に増加させる場合は、このプロパティを有効にします。このプロパティは、読み取られるテキストの一部または全部のコントラストが比較的低い場合 (暗い背景に青いテキストなど) の認識に役立つ場合があります。Contrastがオンの場合、このプロパティは効果がないため、Contrast
がオフになっている場合にのみ役立ちます。
エンハンスローカルコントラスト
-- エンハンスローカルコントラスト
Log ReadText(("TLImage","BRImage"), enhanceLocalContrast: On)
エクストラワード
これらの単語は、他の辞書の単語と同じように優先されます。 ExtraWords
はPreferredWords、ValidPattern
、PreferredPattern
、およびValidWords
と相互排他的です。
ExtraWords の例
-- ExtraWordsの例
Log Readtext(("TLImage","BRImage"), Language: English, ExtraWords: "Elizabeth, Andrew, Steven, Katherine, Jacob, Brenda")
改行を無視
IgnoreNewlines:
ブーリアン。 有効にすると、ignoreNewlines
はOCRテキスト検索で改行を無視するため、検索は複数の行に分割された文字列と一致します。 このプロパティはテキスト検索のみで使用可能であり、ReadText
では使用できません。
IgnoreNewlines の例
-- IgnoreNewlines の例
-- このような長い名前の場合、テスト対象のアプリケーションのインターフェイスの 2 行目に折り返される可能性がありますが、OCR は IngoreNewlines を有効にしても読み取ることができます。
Click (Text:"Constantine Papadopoulos", IgnoreNewlines:On)
スペースを無視
IgnoreSpaces:
ブーリアン。 ignoreSpaces
プロパティは、OCRテキスト検索がテキスト文字列中のスペースを無視するようにします。 例えば、文字列"My Computer"は"MyComputer"や"M y C o m p u t e r"と一致します。 ignoreSpaces
プロパティはデフォルトでオンになっています。 これは、OCRが特に不連続な単語や文字間隔が不規則なテキストにある意図しないスペースを読み取ることがあるためです。
IgnoreSpaces の例
-- IgnoreSpaces の例
テスト対象のソフトウェアのUIの一部である"My Account"というタブがありますが、異なる状況やデバイスでアンダースコア("My_Account")があるかスペースがない("MyAccount")形式で表示されることがあります。
Click (Text:"My Account", ignoreSpaces:On, IgnoreUnderscores:On) -- アンダースコアがあるか、スペースがあるか、スペースがないかに関わらず、アカウントタブを見つけることができます。
アンダースコアを無視
ignoreUnderscores
プロパティにより、OCRテキスト検索はアンダースコアをスペースとして扱います。 たとえば、文字列"My_Computer"は"My_Computer"または"My Computer"と一致します。 OCRエンジンがアンダースコアを認識できないことがあるため、ignoreUnderscores
プロパティはデフォルトでオンになっています。
IgnoreUnderscores の例
-- IgnoreSpaces の例
Click (Text:"Account Overview", IgnoreUnderscores:On) -- OCRが下線付きのリンクをアンダースコアがあるテキスト("Account_Overview")と誤認識する場合に、"Account Overview"をクリックします。
画像を反転
InvertImage: ブーリアン型。デフォルト:オフ。
このプロパティを有効にすると、OCRはテキスト画像の色を反転(写真ネガティブのように)してから、OCRエンジンに送信して処理します。
言語
Language: 言語名(大文字と小文字を区別する)。
検索しているテキストの自然言語。(サポートされている言語のリストについては、OCR言語サポートを参照してください。)OCRはこれをガイドとして、使用している辞書に指定された単語を優先します。複数の言語を指定することもできます。Eggplant Functionalにはデフォルトで多数の言語が含まれており、追加の言語を購入することもできます。言語が指定されていない場合でも、OCRはテキストを読み取りますが、その結果を比較する辞書はありません。また、カスタムOCR辞書を作成することもできます。
言語名は、OCR辞書で定義されているように、大文字と小文字を区別します。
言語の例
-- Language example
-- ハンガリー語を使用するアプリケーションの "close" (「Bezárás」) ボタンをクリックします。
Click (Text:"Bezárás", Language:"Hungarian", SearchRectangle:("TLImage","BRImage"))
LowResolutionMode
タイプ: ブール値、デフォルト: オフ
。OCRエンジンがEggplant Functionalから受信した画像を低解像度として扱うために使用する処理モードです(画像は実際には低解像度に変換されません)。これにより、OCR が小さな文字を認識するのに役立つ場合があります。
Multiline
MultiLine:
ブーリアン型。デフォルト値:オフ。 このプロパティは、矩形内のテキストを読み取るのではなく、点近くのテキストを読み取る場合にのみ適用されます。MultiLine
がオンの場合、ReadText関数
は、指定した点に関連するテキスト行と、その点の上下のテキスト行を返します(それらが同じテキストブロックに属していると思われる場合)。MultiLineがオフの場合、<code>ReadText
関数は点に関連するテキスト行のみを返します。
複数行の例
-- Multiline example
Log ReadText("ShortTextBlockHeaderImage", MultiLine:On, Contrast:On, ContrastColor:BkgdColor)
PreferDictionaryWords
タイプ: Boolean
。OCR は、Language
プロパティによって提供される任意の辞書の単語を常に優先しますが、PreferDictionaryWords
はこれをさらに一歩進めて、可能であれば OCR が辞書の単語を返すように要求します。辞書に載っていない単語を、各文字の最適な 解釈を使用して返すのは、可能なバリアントが見つからない場合のみです。このプロパティは、OCR ディクショナリを変更します。詳細については、OCR ディクショナリのカスタマイズ」を参照してください。テキストの読み取りと検索の両方に使用できます。
PreferDictionaryWords の例
-- PreferDictionaryWords example
--"Cattywampus" またはその他のありそうもない単語は、指定された searchRectangle 内に表示されるテキストであり、PreferDictionaryWords は正しい単語を返すように強制します。
Log ReadText(("TLImage","BRImage"), Language:English, PreferDictionaryWords:On)
PreferredPattern
PreferredPattern: 正規表現文字列(OCRプロパティに使用するSenseTalkパターンとして定義)。
このプロパティが有効化され、正規表現文字列が与えられると、OCRは提供されたパターンに一致するテキストを優先します。SenseTalkで使用できる正規表現文字についての情報は、Using Patterns in SenseTalkを参照してください。OCRにパターンマッチを必要とさせたい場合は、ValidPatternを使用してください。PreferredPattern
はPreferredWords
、ValidPattern
、ValidWords
、およびExtraWords
と相互排他的です。
PreferredWords
PreferredWords:
単語または単語のリスト。 このプロパティを、現在の言語の組み込み辞書を補完する単語のリストに設定します。PreferredWords
はテキストの読み取りまたは検索のどちらにも使用できます。このプロパティはOCR辞書を変更します。詳細については、Customize the OCR Dictionary
を参照してください。PreferredWordsはValidWords
、ValidPattern
、PreferredPattern
、およびExtraWords
と相互排他的です。
PreferredWords の例
-- PreferredWords example
-- 顧客名の一覧が PreferredWords プロパティの値として渡され、それらすべての名前が OCR ディクショナリに追加されます。
Log ReadText(("TLImage","BRImage"), Language: PortugueseBrazilian, PreferredWords:CustomerNameList)
上記の例で、"PortugueseBrazilian"は引用符で囲まれていません。この未使用の変数はその名前に解決されるため、Language
プロパティに渡される値は"PortugueseBrazilian"、つまりこのテキストが引用符内にあった場合と同じです。
ProhibitedWords
単語または単語のリスト。
OCRが探しているものではないと認識できる単語を提供して、正しい方向に導くのに役立ちます。ProhibitedWords
は、テキストの読み取りと検索の両方に使用できます。このプロパティは、OCR ディクショナリを変更します。詳細については、OCR ディクショナリのカスタマイズ」を参照してください。