Skip to content

搜索与替换

内容编辑模式下,当用户在 PDF 文档中执行文字搜索和替换时,搜索结果通常会高亮显示匹配的文本片段,并提供导航到对应位置的链接,并可以对单个关键字或者所有关键字进行文本替换。 通过 ComPDFKit SDK 提供的搜索和替换功能,您可以轻松实现这一功能。

文字搜索

在内容编辑模式下文字搜索允许用户在整个 PDF 文档中输入关键字,查找匹配的文本,并可以对单个或者全部的关键字进行文本替换

java
CPDFEditTextSearchReplace editTextSearchReplace = readerView.getEditTextSearchReplace();
// keywords : 搜索的关键字
// options : 搜索选项, 0:忽略大小写, 1:区分大小写,2: 匹配整个单词
editTextSearchReplace.setSearchConfig(String keywords, int options);
// 高亮搜索结果并返回搜索结果集合
SparseArray<ArrayList<CPDFEditFindSelection>> results = editTextSearchReplace.findSelections();
kotlin
val editTextSearchReplace = readerView.getEditTextSearchReplace()
// keywords : 搜索的关键字
// options : 搜索选项, 0:忽略大小写, 1:区分大小写,2: 匹配整个单词
editTextSearchReplace.setSearchConfig(keywords : String, options : Int)
// 高亮搜索结果并返回搜索结果集合
val results : SparseArray<ArrayList<CPDFEditFindSelection>> = editTextSearchReplace.findSelections()

单个替换

替换当个关键字的文本

java
CPDFEditTextSearchReplace editTextSearchReplace = readerView.getEditTextSearchReplace();
// 选中指定的关键字
editTextSearchReplace.setCurrentSelection(page, textRangeIndex);
// 替换文本内容
editTextSearchReplace.replace(String str);
readerView.invalidateChildrenAp();
kotlin
val editTextSearchReplace = readerView.getEditTextSearchReplace()
// 选中指定的关键字
editTextSearchReplace.setCurrentSelection(page, textRangeIndex)
// 替换文本内容
editTextSearchReplace.replace(String str)
readerView.invalidateChildrenAp()

全部替换

替换所有关键字文本

java
CPDFEditTextSearchReplace editTextSearchReplace = readerView.getEditTextSearchReplace();
editTextSearchReplace.replaceAll(replaceValue);
editTextSearchReplace.clear();
readerView.invalidateChildrenAp();
kotlin
val editTextSearchReplace = readerView.getEditTextSearchReplace()
editTextSearchReplace.replaceAll(replaceValue)
editTextSearchReplace.clear()
readerView.invalidateChildrenAp()