【问题标题】:How to search a PDF in Acrobat Reader AND jump to a certain page via parameter?如何在 Acrobat Reader 中搜索 PDF 并通过参数跳转到某个页面?
【发布时间】:2011-02-16 19:54:29
【问题描述】:

我们在 Web 应用程序中使用 lucene 来搜索大量 PDF 文档。

工作流程是这样的:

  1. 用户输入搜索词

  2. 向用户显示搜索结果列表。

  3. 每个搜索结果代表一个 PDF 文档,并向用户显示在哪个页面上找到了搜索词。这些页面中的每一个都表示为一个超链接。

  4. 如果用户现在点击这样的超链接,他会直接跳转到那个页面。

  5. 但是现在用户遇到了搜索词没有在页面上突出显示的问题。因此,用户必须自己查看才能在页面上找到搜索词。

我们想要的是一种在 PDF 的特定页面上突出显示搜索词的方法。

Acrobat Reader 的open parameters 允许搜索 PDF 文档(通过点击突出显示)或跳转到特定页面。但是这两个参数的组合 - 我们需要 - 不起作用。

有没有人知道如何跳转到页面并突出显示 PDF 文档中的搜索词? 我查看了 Acrobat SDK,但不知道我们可以如何使用它(它的文档非常糟糕)。

【问题讨论】:

    标签: search pdf lucene highlighting acrobat


    【解决方案1】:

    acrobat 使用插件来隐藏术语,并且需要一个 fdf 流来指示要隐藏的单词。 参考这里:

    support.dtsearch.com/dts0152.htm

    更新:

    假设您知道要突出显示的页面上的 page# 和 word#,这是一种方法:

    在网页上:

    <iframe id="acroframe" src="pdfpage/example.pdf#xml=http://example.com/hilite.aspx?hilite=8e3302ee-ff88-41ee-bdfb-9e8df87cc3ad&toolbar=1&navpanes=0&statusbar=0&view=FitH">
    </iframe>
    

    PDF 将出现在框架中,它将显示工具栏,隐藏导航窗格和状态栏并将页面调整为水平。然后它会查询网站获取 xfdf 数据进行高亮:http://example.com/hilite.aspx?hilite=8e3302ee-ff88-41ee-bdfb-9e8df87cc3ad

    在这里,我使用了之前在会话中保存的带有 hilite xfdf 值的 guid 键。 hilite.aspx 页面将返回类似于以下内容的内容来hilite 文档中的单词:

    <XML>
    <Body units=characters color=#ff00ff mode=active version=2>
    <Highlight>
    <loc pg=15 pos=3583 len=5>
    </Highlight>
    </Body>
    </XML>
    

    这将突出显示第 15 页上从位置 3583 开始的 5 个字符。(注意:尽管相似,xfdf 不是真正的“XML”)

    请注意,acrobat reader 必须在首选项中选中“启用来自外部突出显示服务器的搜索突出显示”选项。

    【讨论】:

      【解决方案2】:

      抱歉可能不是答案,但解决方法可能是将 PDF 转换为 html 并使用 Lucene 荧光笔(类似于 Google 所做的)

      【讨论】:

        【解决方案3】:

        您必须编写一个 Javascript 的 sn-p 才能获得您正在寻找的行为。

        【讨论】:

          猜你喜欢
          • 2012-03-09
          • 2011-01-29
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2020-10-05
          • 2011-11-17
          • 2014-08-20
          • 1970-01-01
          相关资源
          最近更新 更多