我们有一个项目,我们需要通过基于Web的界面提供对Word文档集合的搜索。客户希望在用户打开文档时突出显示搜索词。
打开文档时,有没有办法在Word中直接执行此操作?我们可以提出的唯一选择是将Word文档转换为HTML并显示它。
仅供后台使用,我们目前正在使用Windows SharePoint Services进行文档搜索。
答案 0 :(得分:2)
您可以使用Word的突出显示功能执行此操作。但是,要使用该功能,您必须在服务器端或客户端使用Word自动化。
VBA中用于突出显示搜索词的脚本可能如下所示:
Sub Highlight(oDoc As Word.Document, term As String)
With oDoc.Range.Find
.ClearFormatting
.Replacement.ClearFormatting
.Replacement.Highlight = True
.Text = term
.Replacement.Text = term
.Forward = True
.Wrap = wdFindContinue
.Format = True
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
.Execute Replace:=wdReplaceAll
End With
End Sub
脚本执行搜索和替换,并将突出显示应用于找到的文本。如果您对如何最好地自动化Word有任何疑问,例如在服务器环境中,请不要犹豫。
答案 1 :(得分:1)
Kwizcom有一款满足这种需求的产品 - 我没试过,你的里程可能会有所不同! SharePoint搜索字符串突出显示器 - http://www.kwizcom.com/ProductPage.asp?ProductID=28
此外,如果将Word文档转换为PDF是可以接受的(假设您已安装PDF iFilter以便可以对这些文档编制索引),则可以通过将参数附加到URL来获得结果文档中的搜索项突出显示。 Adobe Viewer客户端可以解释这些并基本上对文档进行客户端搜索。有关详细信息,请参阅http://www.novolocus.com/2008/05/15/hit-highlighting-inside-adobe-pdfs-using-sharepoint-search/。
希望这有帮助!