Foxit PDF SDK
FSFullTextSearch类 参考
类 FSFullTextSearch 继承关系图:
FSBase

构造函数

(id) - init
 构造函数。

 
(id) - initWithOther:
 用另一个全文搜索对象构造函数。
更多...
 
(BOOL) - isEmpty
 检查当前对象是否为空。
更多...
 
(BOOL) - searchOf:rank_mode:callback:
 在已索引的PDF文件中搜索指定的文本。
更多...
 
(void) - setDataBasePath:
 设置文件路径作为用于存储索引数据的sqlite数据库。
更多...
 
(void) - setIgnoreSpace:
 设置匹配搜索结果时是否忽略字符之间的空白。
更多...
 
(FSProgressive *) - startUpdateIndex:pause:reupdate:
 开始更新文档源对象中定义的PDF文件的索引。
更多...
 
(BOOL) - updateIndexWithFilePath:
 更新指定PDF文件的索引结果。
更多...
 

详细描述

此类用于索引一些PDF文件,然后在这些已索引的PDF文件中搜索指定的文本。

函数文档

◆ initWithOther:()

- (id) initWithOther: (FSFullTextSearch*)  other

用另一个全文搜索对象构造函数。

参数
[in]other另一个全文搜索对象。

◆ isEmpty()

- (BOOL) isEmpty

检查当前对象是否为空。

当当前对象为空时,意味着当前对象是无用的。

返回
YES 表示当前对象为空,NO 表示不为空。

◆ searchOf:rank_mode:callback:()

- (BOOL) searchOf: (NSString *)  match_string
rank_mode: (FSFullTextSearchRankMode)  rank_mode
callback: (id<FSSearchCallback>)  callback 

在已索引的PDF文件中搜索指定的文本。

此函数可用于在多个PDF文件中进行搜索,这些文件已通过函数 FSFullTextSearch::startUpdateIndex:pause:reupdate: 或 FSFullTextSearch::updateIndexWithFilePath: 被索引。 搜索结果将通过回调函数 FSSearchCallback::retrieveSearchResult:page_index:match_result:match_start_text_index:match_end_text_index: 返回,按指定的排序模式。

参数
[in]match_string要搜索的字符串。它不应是空字符串,并应是UTF-8编码。
[in]rank_mode用于搜索结果的排序模式。请参考从 FSFullTextSearchRankNone 开始的值,这应该是这些值中的一个。
[in]callback对象。它不应为nil。 用户应实现它并使用它来检索搜索结果。
返回
YES 表示成功,NO 表示失败。

◆ setDataBasePath:()

- (void) setDataBasePath: (NSString *)  path_of_data_base

设置文件路径作为用于存储索引数据的sqlite数据库。

此函数只在第一次通过函数 FSFullTextSearch::startUpdateIndex:pause:reupdate: 或 FSFullTextSearch::updateIndexWithFilePath: 更新PDF文件索引之前有用。 一旦更新完成,此函数将变为无用。
如果从未为当前全文搜索对象成功调用过此函数,sqlite数据的默认文件 将被命名为"fts.db"并与应用程序文件位于同一位置。

参数
[in]path_of_data_base指定文件作为sqlite数据库的文件路径。它不应是空字符串,并应是UTF-8编码。
返回
无。

◆ setIgnoreSpace:()

- (void) setIgnoreSpace: (BOOL)  ignore_space

设置匹配搜索结果时是否忽略字符之间的空白。

默认情况下,全文搜索要求搜索模式中的字符连续匹配。启用此选项后,匹配时将忽略字符之间的空白字符(空格、制表符、换行符等)。
此选项仅影响 函数 FSFullTextSearch::searchOf:rank_mode:callback:,立即生效且无需重新索引。

参数
[in]ignore_spaceYES 表示匹配时忽略字符之间的空白,而 NO 表示不忽略。默认值:NO。
返回
无。

◆ startUpdateIndex:pause:reupdate:()

- (FSProgressive *) startUpdateIndex: (FSDocumentsSource*)  source
pause: (id<FSPauseCallback>)  pause
reupdate: (BOOL)  reupdate 

开始更新文档源对象中定义的PDF文件的索引。

此更新可能需要很长时间,因此Foxit PDF SDK使用渐进式过程来完成此操作。
只有在文档源定义的指定目录(包括子目录)下的PDF文件才能被索引。数据库中不位于 文档源定义的指定目录(包括子目录)内的PDF文件的索引将被删除。

参数
[in]source文档源对象,定义要索引的目录。
[in]pause暂停回调对象,决定更新过程是否需要暂停。 这可以是nil,意味着在更新过程中不暂停。 如果这不是nil,它应该是用户实现的有效暂停对象。 默认值:nil。
[in]reupdateYES 表示重新更新数据库中现有的索引信息,NO 表示不重新更新 数据库中现有的索引信息。默认值:NO。
返回
渐进对象。请通过函数 FSProgressive::getRateOfProgress 检查当前进度的比率。如果比率还不是100,调用函数 FSProgressive::resume 继续进度,直到进度完成。

◆ updateIndexWithFilePath:()

- (BOOL) updateIndexWithFilePath: (NSString *)  file_path

更新指定PDF文件的索引结果。

此函数可用于更新单个PDF文件的索引结果。

参数
[in]file_path现有的PDF文件路径。它不应是空字符串,并应是UTF-8编码。
返回
YES 表示成功,NO 表示失败。