我需要知道是否可以从已加载到 Windows 形式的 Web 浏览器控件中的 pdf 中获取选定的文本。我正在使用带有 .net 3.5 及以下版本的 C# 和 Visual Studio 2008。我在控件中显示了 pdf,但我不知道如何访问该文档中的选定文本。mshtml 文档为空。
提前致谢!
我需要知道是否可以从已加载到 Windows 形式的 Web 浏览器控件中的 pdf 中获取选定的文本。我正在使用带有 .net 3.5 及以下版本的 C# 和 Visual Studio 2008。我在控件中显示了 pdf,但我不知道如何访问该文档中的选定文本。mshtml 文档为空。
提前致谢!
要显示 PDF,您需要将其呈现为图像或不同的图形语言,如 EPS、EMF/WMF 等。因此,除非已经完成一些工作以将 PDF 中的文本覆盖在图像之上,否则您将不会能够物理地选择文本。
当 PDF 显示在 Web 浏览器控件中时,您是否能够从 PDF 中选择文本?如果还没有,那么您可能需要考虑尝试通过某种库直接从 PDF 访问文本。
尝试
webBrowser2.Document.ExecCommand("SelectAll", false, null);
webBrowser2.Document.ExecCommand("Copy", false, null);
让我知道它是否有效!
使用以下代码很容易:
public static string GetAllText(WebBrowser webBrowser)
{
webBrowser.Focus();
SendKeys.Send("^a");
SendKeys.Send("^c");
return ClipBoard.GetText();
}
Document 为 null,因此您不能在其上调用 ExecCommand。可以选择文本,但它位于网络浏览器中嵌入的 .PDF 查看器中。
文本的剪切和粘贴可以手动完成,但我们如何以编程方式完成呢?