我目前正在使用excel宏(虽然我会在必要时切换到VB.NET)循环遍历PDF中的所有文本,并使用PDF中的文本的某些部分填充数组(通过Adobe SDK和getPageNthWord)。这部分工作正常,但现在我想要的更进一步。
PDF的某些部分只是抓取文字并没有全面展示,我想看看我还能得到什么。这正是我想要的截图或片段:
所以,我知道我可以使用getPageNthWordQuads来找到单词“Compliance Warning”的坐标,我也可以找到一种方法来找到屏幕的右下角,但我的问题从那里开始。在我得到那些坐标之后我会怎么做?我可以放大PDF以仅查看该部分然后截取屏幕截图吗?我已经有了活动窗口截图的代码,但我不知道如何滚动或缩放PDF。
非常感谢任何帮助。我们也欢迎采用新方法。谢谢!
答案 0 :(得分:0)
可能有许多方法可行 - 我对您的环境/约束知之甚少,无法确定哪种方法最有效。我假设你在这里通过OLE与Acrobat交谈。
1)您可以打开一个窗口,获取其AVPageView并让它进行缩放并移动到您想要它做的事情。
2)您可以使用OpenInWindowEx在自己的一个窗口中打开PDF文档,然后抓取该窗口的内容(优点是该窗口可能在屏幕外)。
3)您可以使用DrawEx方法(在AcroExch.PDPage中)将页面的特定部分呈现到您自己的窗口中,然后进行处理。