IFILTER_INIT 枚举 (filter.h)

[从 Windows XP 开始,索引服务不再受支持,并且从 Windows 8 开始不可用。 请改用 Windows 搜索 进行客户端搜索,使用 Microsoft Search Server Express 进行服务器端搜索。]

控制筛选过程的标志。

语法

typedef enum tagIFILTER_INIT {
  IFILTER_INIT_CANON_PARAGRAPHS = 1,
  IFILTER_INIT_HARD_LINE_BREAKS = 2,
  IFILTER_INIT_CANON_HYPHENS = 4,
  IFILTER_INIT_CANON_SPACES = 8,
  IFILTER_INIT_APPLY_INDEX_ATTRIBUTES = 16,
  IFILTER_INIT_APPLY_OTHER_ATTRIBUTES = 32,
  IFILTER_INIT_APPLY_CRAWL_ATTRIBUTES = 256,
  IFILTER_INIT_INDEXING_ONLY = 64,
  IFILTER_INIT_SEARCH_LINKS = 128,
  IFILTER_INIT_FILTER_OWNED_VALUE_OK = 512,
  IFILTER_INIT_FILTER_AGGRESSIVE_BREAK = 1024,
  IFILTER_INIT_DISABLE_EMBEDDED = 2048,
  IFILTER_INIT_EMIT_FORMATTING = 4096
} IFILTER_INIT;

常量

 
IFILTER_INIT_CANON_PARAGRAPHS
值:1
段落分隔符应使用 Unicode 段落分隔符 (0x2029) 进行标记。
IFILTER_INIT_HARD_LINE_BREAKS
值: 2
软返回(如Word中的换行符)是否应替换为硬返回?行分隔符 (0x2028) 。 现有的硬回报可以加倍。 回车 (0x000D) 、换行 (0x000A) 或回车和换行符的组合应被视为硬返回。 目的是启用与观察到的换行符匹配的模式表达式匹配项。
IFILTER_INIT_CANON_HYPHENS
值: 4
各种字处理程序具有未在主机字符集中表示的连字符形式,例如可选连字符 (仅在行的末尾显示) 和不间断连字符。 此标志指示可选连字符将转换为 null,非中断性连字符将转换为普通连字符 (0x2010) 或 HYPHEN-MINUSES (0x002D) 。
IFILTER_INIT_CANON_SPACES
值: 8
正如IFILTER_INIT_CANON_HYPHENS标志标准化连字符一样,此标志标准化空格。 所有特殊空格字符(如非中断空格)将转换为标准空格字符 (0x0020) 。
IFILTER_INIT_APPLY_INDEX_ATTRIBUTES
值: 16
指示客户端希望将文本拆分为表示内部值类型属性的区块。
IFILTER_INIT_APPLY_OTHER_ATTRIBUTES
值: 32
应发出IFILTER_INIT_APPLY_INDEX_ATTRIBUTES和IFILTER_INIT_APPLY_CRAWL_ATTRIBUTES标志未涵盖的任何属性。
IFILTER_INIT_APPLY_CRAWL_ATTRIBUTES
值: 256
指示客户端希望文本拆分为表示索引过程中确定的属性的区块。
IFILTER_INIT_INDEXING_ONLY
值: 64
优化 IFilter 的索引编制,因为客户端只调用 IFilter::Init 方法一次,并且不调用 IFilter::BindRegion。 这消除了在访问另一个区块之前和之后访问区块的可能性。
IFILTER_INIT_SEARCH_LINKS
值: 128
文本提取过程必须以递归方式搜索文档内的所有链接对象。 如果链接不可用,则获取链接第一个区块的 IFilter::GetChunk 调用应返回FILTER_E_LINK_UNAVAILABLE。
IFILTER_INIT_FILTER_OWNED_VALUE_OK
值: 512
内容索引过程可以返回筛选器设置的属性值。
IFILTER_INIT_FILTER_AGGRESSIVE_BREAK
值: 1024
TBD
IFILTER_INIT_DISABLE_EMBEDDED
值: 2048
TBD
IFILTER_INIT_EMIT_FORMATTING
值: 4096
TBD

备注

通常, IFilter::GetText 方法输出的文本应与文档的实际文本完全匹配。 但是,为了实现最大的互操作性,需要对常见功能进行一些标准化。 这些功能包括段落分隔符、换行符、连字符和空格。 IFilter 接口服务器还可以在文本中嵌入空字符,客户端几乎会忽略这些字符。 也就是说,Unicode 字符0x0000将被完全忽略,0x0001被视为断字符。

四个标志控制文本标准化:IFILTER_INIT_CANON_PARAGRAPHS、IFILTER_INIT_HARD_LINE_BREAKS、IFILTER_INIT_CANON_HYPHENS和IFILTER_INIT_CANON_SPACES。

IFilter 接口的不同客户端需要对象的不同视图。 三个标志(IFILTER_INIT_APPLY_INDEX_ATTRIBUTES、IFILTER_INIT_APPLY_CRAWL_ATTRIBUTES和IFILTER_INIT_APPLY_OTHER_ATTRIBUTES)控制应应用于区块的属性集。 此外,可以在对 IFilter::Init 方法的调用中请求特定属性,作为大小 cAttributes 的数组,存储在 aAttributes 中。

发生内容索引以外的操作时,IFilter 接口实现需要存储一些区块信息。 IFILTER_INIT_INDEXING_ONLY优化用于编制索引的筛选器。

出于查看目的,最好跨链接以及在文档及其嵌入的任何对象中搜索。 IFILTER_INIT_SEARCH_LINKS指定以递归方式搜索所有链接。

某些 IFilter 接口实现可能会在内容索引过程中生成属性值,IFILTER_INIT_FILTER_OWNED_VALUE_OK表示可以返回这些值。

要求

   
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
标头 filter.h

请参阅

IFilter