使用 c#.net 中的 Web 浏览器控件加载 pdf 文件中选定文本的自动副本

Posted

技术标签:

【中文标题】使用 c#.net 中的 Web 浏览器控件加载 pdf 文件中选定文本的自动副本【英文标题】:Automated copy of selected text in pdf file loaded using web browser control in c#.net 【发布时间】:2012-09-25 07:35:58 【问题描述】:

这就是我所做的:

    我已经在网络浏览器中加载了一个 pdf 文件, 现在我想从该文件中选择文本并粘贴到文本框中。

谁能帮帮我?

【问题讨论】:

...你试过什么?你用什么来“加载”你的PDF?自定义组件?该 Web 浏览器的 Adob​​e Acrobat 插件? 详情! 我认为他试图务实地将所选/突出显示的文本从 pdf 复制/粘贴到文本框。 以编程方式 - 但是是的。这很明显。不是,OP 正在使用哪些技术来尝试支持此功能。根据这些细节,答案将或多或少复杂。就目前而言,这只是猜测。 【参考方案1】:

我很确定这将是非常困难的,如果不是不可能的话。

浏览器不“运行” PDF,它充当 PDF 应用程序的主机,最终共享它的主窗口。之后,光标等的控制权传递给 PDF 应用程序,浏览器实际上不再知道其中发生了什么。如果正在使用的 PDF 应用程序公开了用于操作光标/文本选择的 COM 接口(值得怀疑),那么 可能 可以从客户端脚本针对这些接口编写脚本 - 但实际上您将无法运行该窗口中的任何脚本,因为浏览器显示的是 PDF,而不是网页。

如果您将 Web 控件托管在 Windows 窗体应用程序上,这可能是可能的,但即便如此,我什至不知道从哪里开始。

如果您的目标是从 PDF 中提取文本,那么您最好将其推送到 .Net PDF 库中。一个快速的谷歌搜索会为您提供一些合适的库。

【讨论】:

【参考方案2】:

如果您的 pdf 文件包含表单元素,则可以将文件提交到 url。 检查此链接..它可能会有所帮助。 Can a PDF fillable form post itself to an HTTPS URL?

【讨论】:

以上是关于使用 c#.net 中的 Web 浏览器控件加载 pdf 文件中选定文本的自动副本的主要内容,如果未能解决你的问题,请参考以下文章

CefSharp.wpf Web 浏览器导航事件 (C# .Net)

asp.net中的浏览器控件?

从.net(C#)中的Webbrowser控件中检索选定的文本

模拟链接点击webbrowser控件vb.net

c#WPF带有Highchart的Web浏览器,来自外部源的Javascript无法正常工作“此页面上的脚本出现错误”

没有浏览器控件类的 C# Web 浏览器