跳转到主要内容
下表所列函数只能在搜索条件部分使用。每个函数要么为搜索区域指定一个模糊 Rectangle,要么将 Rectangle 添加到排除矩形的数组中。
函数说明
Void LeftOf( XInterval x, Distance offset = 0 )将搜索区域限制为页矩形与位于点 x.End - offset 左侧的垂直半平面相交所得的矩形。
Void LeftOf( FuzzyRect fuzzyRect, Distance offset = 0 )将搜索区域限制为位于点 fuzzyRect.Left.End – offset 左侧的垂直半平面。
Void LeftOf( Hypothesis hyp, Distance offset = 0 )将搜索区域限制为页矩形与位于点 hyp.Left.End - offset 左侧的垂直半平面相交所得的矩形。
Void LeftOf( HypothesisInstances hyps, Distance offset = 0 )将搜索区域限制为位于点 hyp.Left.End – offset 左侧的垂直半平面。使用全局坐标。
Void RightOf( XInterval x, Distance offset = 0 )将搜索区域限制为页矩形与位于点 x.Start + offset 右侧的垂直半平面相交所得的矩形。
Void RightOf( FuzzyRect fuzzyRect, Distance offset = 0 )将搜索区域限制为位于点 hyp.Right.Start + offset 右侧的垂直半平面。示例: 在模糊矩形 Element1 和 Element2 的交集右侧查找元素。FuzzyRect intersection = Element1.FuzzyRect AND Element2.FuzzyRect; RightOf: intersection;
Void RightOf( Hypothesis hyp, Distance offset = 0 )将搜索区域限制为页矩形与位于点 hyp.Right.Start + offset 右侧的垂直半平面相交所得的矩形。示例: 在 ElementName 元素右边界的右侧查找元素,偏移量为 100 点。如果未找到该元素,则偏移量将应用于元素搜索区域的左边界。RightOf: ElementName.Right, 100dt;
Void RightOf( HypothesisInstances hyps, Distance offset = 0 )将搜索区域限制为位于点 hyp.Right.Start + offset 右侧的垂直半平面。使用全局坐标。
Void Above( YInterval y, Distance offset = 0 )将搜索区域限制为页矩形与位于点 y.End - offset 上方的水平半平面相交所得的矩形。
Void Above( FuzzyRect fuzzyRect, Distance offset = 0 )将搜索区域限制为位于点 hyp.Top.End – offset 上方的水平半平面。
Void Above( Hypothesis hyp, Distance offset = 0 )将搜索区域限制为页矩形与位于点 hyp.Top.End - offset 上方的水平半平面相交所得的矩形。
Void Above( HypothesisInstances hyps, Distance offset = 0 )将搜索区域限制为位于点 hyp.Top.End – offset 上方的水平半平面。使用全局坐标。
Void Below( YInterval y, Distance offset = 0 )将搜索区域限制为页矩形与位于点 y.Start + offset 下方的水平半平面相交所得的矩形。
Void Below( FuzzyRect fuzzyRect, Distance offset = 0 )将搜索区域限制为位于点 hyp.Bottom.Start + offset 下方的水平半平面。
Void Below( Hypothesis hyp, Distance offset = 0 )将搜索区域限制为页矩形与位于点 hyp.Bottom.Start + offset 下方的水平半平面相交所得的矩形。
Void Below( HypothesisInstances hyps, Distance offset = 0 )将搜索区域限制为位于点 hyp.Bottom.Start + offset 下方的水平半平面。使用全局坐标。
Void Exclude( Hypothesis hyp )从搜索区域中排除 hyp 假设的区域。如果未找到 hyp 假设,则排除 hyp 假设搜索区域的内部矩形。示例: 指示程序从搜索区域中排除 ElementName 元素。如果未找到 ElementName,调用此函数不会修改搜索区域。Exclude: ElementName;
Void Exclude( Rect rect )从搜索区域中排除 rect 矩形。示例: 指示程序排除 ElementName 元素的矩形。如果未找到 ElementName,调用此函数将从当前元素的搜索区域中排除 ElementName 的搜索区域。Exclude: ElementName.Rect;
Void Exclude( RectArray rectArray )从搜索区域中排除 rectArray 矩形数组。示例: 指示程序排除元素 ElementName1、ElementName2 和 ElementName3 的矩形。如果未检测到这些元素中的任何一个,调用此函数时,它们的搜索区域将从当前元素的搜索区域中排除。Exclude: RectArray(ElementName1.Rect or ElementName2.Rect or ElementName3.Rect);
Void ExcludeRect( XInterval left, YInterval top, XInterval right, YInterval bottom )从搜索区域中排除由范围 left、top、right 和 bottom 描述的模糊矩形。示例: 指示程序从搜索区域中排除绝对大小为 left = 10 dot、top= 200 dot、right=100 dot、bottom=400 dot 的矩形。ExcludeRect: 10dt, 200dt, 100dt, 400dt;
Void ExcludeSet( ImageObjectSet set )从搜索区域中排除 set 对象集的矩形数组。示例: 指示程序从当前元素的搜索区域中排除元素 ElementName 的对象数组。ExcludeSet: ElementName.Set;
Void Exclude( HypothesisInstances )从搜索区域中排除假设实例的区域。
Void RestrictSearchArea( FuzzyRect fuzzyRect )将搜索区域限制为模糊矩形 fuzzyRect。使用全局坐标。
Void RestrictSearchArea( FuzzyRect, IntArray pages )将搜索区域限制为模糊矩形 fuzzyRect。指定局部坐标和页范围 pages。
Void RestrictSearchArea( FuzzyRect, SearchAreaPageSetType )将搜索区域限制为模糊矩形 fuzzyRect。指定局部坐标和 SearchAreaPageSetType 类型的页范围。
Void RestrictSearchArea( RectArray rectArray )将搜索区域限制为矩形数组 rectArray。使用全局坐标。示例: 您可以指定当前元素的搜索区域边界由元素 ElementName1、ElementName2 和 ElementName3 的矩形边界定义。如果未检测到任何元素,访问此函数时,当前元素的搜索区域将由相应元素的搜索区域边界定义。RestrictSearchArea: RectArray(ElementName1.Rect or ElementName2.Rect or ElementName3.Rect);
Void RestrictSearchArea( RectArray, IntArray pages )将搜索区域限制为矩形数组 rectArray。指定局部坐标和页范围 pages。
Void RestrictSearchArea( RectArray, SearchAreaPageSetType )将搜索区域限制为矩形数组 rectArray。指定局部坐标和 SearchAreaPageSetType 类型的页范围。
Void RestrictSearchArea( Region region )将搜索区域限制为区域 region。使用全局坐标。示例: 您可以指定当前元素的搜索区域受元素 ElementName 的区域限制。RestrictSearchArea: ElementName.Region;
Void RestrictSearchArea( Region, IntArray pages )将搜索区域限制为区域。指定局部坐标和页范围 pages。
Void RestrictSearchArea( Region, SearchAreaPageSetType )按区域限制搜索范围。指定 SearchAreaPageSetType 类型的局部坐标和页面范围。**示例:**您可以指定必须在偶数页的搜索区域中搜索该元素。RestrictSearchArea: searchArea, EvenPages;
Void RestrictSearchArea( SearchAreaPageRestriction pageRestriction, IntArray pages )限制搜索的页面范围,但不限制页面本身的搜索区域。pageRestriction 参数仅接受一个值:WholePage。**示例:**您可以指定必须在第 2、4、7-9 页上搜索该元素。RestrictSearchArea: WholePage, 2 << 4 << 7 << 8 << 9;
Void RestrictSearchArea( SearchAreaPageRestriction pageRestriction, SearchAreaPageSetType )限制搜索的页面范围,但不限制页面本身的搜索区域。pageRestriction 参数仅接受一个值:WholePage。**示例:**您可以指定必须在最后一页上搜索该元素。RestrictSearchArea: WholePage, LastPage;
注意: 你可以使用 RSA 作为 RestrictSearchArea 的别名来替代其全名。
注意: 同一页面内的不同约束会联合生效,不同页面之间则各自独立生效。(搜索仅在至少指定了一个约束的页面上执行。)

定义搜索区域的辅助函数

FunctionDescription
Rect PageRect()当前页在全局坐标系中的矩形,用于指定依赖于页面的搜索区域。PageRect 只能用于指定搜索区域。示例: 要指定元素位于页面的下半部分(事先未知具体页码),可写:Below: PageRect.Top + PageRect.Height / 2; 其他情况下,请使用 Page( N ).Rect 获取第 N 页的矩形,或使用 DocumentRect 获取整个文档的矩形。你也可以使用 PageNumber 函数来指定依赖于页面的搜索区域。
Int PageNumber()当前页的页码。用于指定依赖于页面的搜索区域。示例: 假设你有一个重复元素 SearchElements.PageHeader。要在每一页中该元素各实例的下方进行搜索,写:Below: SearchElements.PageHeader.AllInstances.PageAreaGlobal( PageNumber ).FuzzyRect, 0 * dot;