Foxit PDF SDK

Public 类型 | Public 成员函数 | 所有成员列表
foxit::fts::FullTextSearch类 参考
类 foxit::fts::FullTextSearch 继承关系图:

## Public 类型
enum | RankMode { e_RankNone = 0, e_RankHitCountASC = 1, e_RankHitCountDESC = 2 }
| 全文搜索的排序模式枚举。 更多...

## Public 成员函数
| FullTextSearch ()
| 构造函数。
| FullTextSearch (const FullTextSearch &other)
| 用另一个全文搜索对象构造函数。 更多...
| ~FullTextSearch ()
| 析构函数。
bool | IsEmpty () const
| 检查当前对象是否为空。 更多...
bool | operator!= (const FullTextSearch &other) const
| 不相等操作符。 更多...
FullTextSearch & | operator= (const FullTextSearch &other)
| 赋值操作符。 更多...
bool | operator== (const FullTextSearch &other) const
| 相等操作符。 更多...
bool | SearchOf (const char *match_string, RankMode rank_mode, SearchCallback *callback)
| 在已索引的PDF文件中搜索指定的文本。 更多...
void | SetDataBasePath (const char *path_of_data_base)
| 设置文件路径作为用于存储索引数据的sqlite数据库。 更多...
common::Progressive | StartUpdateIndex (const DocumentsSource &source, common::PauseCallback *pause=0, bool reupdate=false)
| 开始更新文档源对象中定义的PDF文件的索引。 更多...
bool | UpdateIndexWithFilePath (const char *file_path)
| 更新指定PDF文件的索引结果。 更多...
Public 成员函数 继承自 foxit::Base
FS_HANDLE | Handle () const
| 获取当前对象的句柄。 更多...

## 详细描述

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

## 成员枚举类型说明

## ◆ RankMode

enum foxit::fts::FullTextSearch::RankMode

全文搜索的排序模式枚举。

此枚举的值应单独使用。

枚举值
e_RankNone | 搜索结果不使用排序模式。
e_RankHitCountASC | 根据结果与预期搜索模式的匹配程度对搜索结果进行排序， 按升序排列（从相似度较低到最相似或相同）。
e_RankHitCountDESC | 根据结果与预期搜索模式的匹配程度对搜索结果进行排序， 按降序排列（从相同或最相似到相似度较低）。

## 构造及析构函数说明

## ◆ FullTextSearch()

foxit::fts::FullTextSearch::FullTextSearch | ( | const FullTextSearch & | other | ) |

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

参数

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

## 成员函数说明

## ◆ IsEmpty()

bool foxit::fts::FullTextSearch::IsEmpty | ( |  | ) | const

检查当前对象是否为空。

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

返回
  true 表示当前对象为空，false 表示不为空。

## ◆ operator!=()

bool foxit::fts::FullTextSearch::operator!= | ( | const FullTextSearch & | other | ) | const

不相等操作符。

参数

  [in] | other | 另一个全文搜索对象。此函数将检查当前对象是否与此对象不相等。

返回
  true 表示不相等，false 表示相等。

## ◆ operator=()

FullTextSearch& foxit::fts::FullTextSearch::operator= | ( | const FullTextSearch & | other | ) |

赋值操作符。

参数

  [in] | other | 另一个全文搜索对象，其值将被赋给当前对象。

返回
  对当前对象本身的引用。

## ◆ operator==()

bool foxit::fts::FullTextSearch::operator== | ( | const FullTextSearch & | other | ) | const

相等操作符。

参数

  [in] | other | 另一个全文搜索对象。此函数将检查当前对象是否与此对象相等。

返回
  true 表示相等，false 表示不相等。

## ◆ SearchOf()

bool foxit::fts::FullTextSearch::SearchOf | ( | const char * | match_string,
|  | RankMode | rank_mode,
|  | SearchCallback * | callback
| ) |  |

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

此函数可用于在多个PDF文件中进行搜索，这些文件已通过函数 FullTextSearch::StartUpdateIndex 或 FullTextSearch::UpdateIndexWithFilePath 被索引。 搜索结果将通过回调函数 SearchCallback::RetrieveSearchResult 返回，按指定的排序模式。

参数

  [in] | match_string | 要搜索的字符串。它不应是空字符串，并应是UTF-8编码。
  [in] | rank_mode | 用于搜索结果的排序模式。请参考从 FullTextSearch::e_RankNone 开始的值，这应该是这些值中的一个。
  [in] | callback | SearchCallback 对象。它不应为NULL。 用户应实现它并使用它来检索搜索结果。

返回
  true 表示成功，false 表示失败。

## ◆ SetDataBasePath()

void foxit::fts::FullTextSearch::SetDataBasePath | ( | const char * | path_of_data_base | ) |

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

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

参数

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

返回
  无。

## ◆ StartUpdateIndex()

common::Progressive foxit::fts::FullTextSearch::StartUpdateIndex | ( | const DocumentsSource & | source,
|  | common::PauseCallback * | pause = `0`,
|  | bool | reupdate = `false`
| ) |  |

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

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

参数

  [in] | source | 文档源对象，定义要索引的目录。
  [in] | pause | 暂停回调对象，决定更新过程是否需要暂停。 这可以是NULL，意味着在更新过程中不暂停。 如果这不是NULL，它应该是用户实现的有效暂停对象。 默认值：NULL。
  [in] | reupdate | true 表示重新更新数据库中现有的索引信息，false 表示不重新更新 数据库中现有的索引信息。默认值：false。

返回
  渐进对象。请通过函数 common::Progressive::GetRateOfProgress 检查当前进度的比率。如果比率还不是100，调用函数 common::Progressive::Continue 继续进度，直到进度完成。

## ◆ UpdateIndexWithFilePath()

bool foxit::fts::FullTextSearch::UpdateIndexWithFilePath | ( | const char * | file_path | ) |

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

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

参数

  [in] | file_path | 现有的PDF文件路径。它不应是空字符串，并应是UTF-8编码。

返回
  true 表示成功，false 表示失败。