跳转到主要内容| Parameter | Description |
|---|
String Value() | 假设区域内图像上文本的值。 |
程序会考虑所有在水平方向与搜索区域相交的文本对象(在垂直方向上,对象必须完整地落入搜索区域)。随后,这些文本对象被分组成行。行从左到右构建。当空格长度超过最大空格长度属性中设置的上限时,程序停止构建该行。
在生成的各行中,程序会识别字符字符串,每个字符串仅包含来自某一用户定义字符集的字符。以类似方式,程序将各行划分为片段。
接下来,程序为每个片段提出一个假设。根据是否选中允许嵌入式假设,假设的生成遵循两种不同的原则。
假设程序在前一阶段检测到三个片段。如果选中允许嵌入式假设,则按以下方式生成假设:
hypothesis 1: fragment 1
hypothesis 2: fragment 1 + fragment 2
hypothesis 3: fragment 1 + fragment 2 + fragment 3
hypothesis 4: fragment 2
hypothesis 5: fragment 2 + fragment 3
hypothesis 6: fragment 3
对于每个假设,程序会检查各字符集中字符的占比是否不超过文本中的占比,%字段所设定的值。同样,程序会检查非字母字符的百分比是否不超过允许错误字段所设定的值。如果任一检查不通过,则不生成该假设。
如果未选中允许嵌入式假设,上述列表中的嵌入式假设将被丢弃。嵌入式假设是指被包含于上述列表中另一假设之内的那些。如果所有假设均通过检查,则仅保留以下假设:fragment 1 + fragment 2 + fragment 3。
因此,如果未选中允许嵌入式假设,程序将生成满足所有条件的最大长度假设。即使排除了嵌入式假设,假设之间仍可能相交。这可能是一个独立的字符或单词,或者是属于其他假设一部分的字符字符串,但未为其单独生成假设。例如,程序可能生成两个假设(即两个字符串)——一个以某个单词或短语结尾,另一个以该单词或短语开头。
例如:
hypothesis 1: fragment 1 + fragment 2
hypothesis 2: fragment 2 + fragment 3
在生成所有可能的假设后,程序会为每个假设计算搜索条件质量(这是对假设满足搜索条件中搜索约束程度的估计)。在此阶段,质量基于以下因素计算:假设的字符数是否落入字符数属性指定的模糊区间;行中的总空隙长度是否落入TotalGapLength指定的模糊区间;以及行中的单词数量是否落入单词数指定的模糊区间。
假设的总体质量通过将各项质量相乘来计算。