我在winform上有一个webbrowser对象,我想用它来显示pdf。 pdf驻留在ftp服务器上。我已经能够通过下载来显示pdf 到磁盘并指向webbrowser对象(导航),但我想流 出于安全原因。有没有人能够将pdf流式传输到位于.Net winform上的webbrowser?
Dim URI As String = host & targetFilename
Dim ftp As System.Net.FtpWebRequest = CType(FtpWebRequest.Create(URI), FtpWebRequest)
ftp.Credentials = New System.Net.NetworkCredential(userName, passWord)
ftp.KeepAlive = False
ftp.UseBinary = True
ftp.Method = System.Net.WebRequestMethods.Ftp.DownloadFile
Using webResp As System.Net.FtpWebResponse = DirectCast(ftp.GetResponse(), System.Net.FtpWebResponse)
Using respStream As Stream = webResp.GetResponseStream
If GetFileExtension(targetFilename) = "PDF" Then
WebBrowser1.DocumentStream = respStream
Application.DoEvents()
End If
respStream.Close()
End Using
End Using
答案 0 :(得分:1)
我建议使用PDF Viewer Control而不是网络浏览器控件,因为网络浏览器控件将要求客户端安装了PDF Viewer。
这也允许您将文档流式传输到它。
答案 1 :(得分:1)
因为您已经在使用WebBrowser控件;为什么不指向包含embed标记的本地html文件:
<embed src="ftp://ftpserver/yourpdf.pdf" />
我没有测试过,但pdf应该在控件的上下文中提供。