以前从未这样做过,所以不确定其中涉及什么。我确实搜索并找到了很多答案,但它们比我需要的更复杂。例如,他们需要放大、生成、创建准确的缩略图、在网页中嵌入实际的 PDF 等......但我的问题要简单得多:
如果我在网页上显示他的信息的人有一些 PDF 来显示我只想在页面上放置一个通用的 PDF 图标,人们点击它,实际的 PDF 会在浏览器的新选项卡中打开。
只是这样做有什么关系? 它不像文件路径 ,PDF 以二进制对象的形式保存在 SQL Server 中,或者它在 SQL Server 中保存它所做的任何事情..它不是服务器上的文件磁盘路径
最佳答案
您的标签表示 asp.net-mvc。
创建一个 Controller 来处理对 PDF 文件的请求
伪:
[RoutePrefix("Pdf")]
public class PdfController : Controller {
[Route("{id}"]
public ActionResult GetPDF(int id) {
//...Code to extract pdf from SQLServer and store in stream
Stream stream = GetDataFromSQLServerById(id);
return File(stream,"filename.pdf");
}
}
在客户端
<a href="/Pdf/123456" target="_blank">
<img src="images/pdficon.jpg">
</a>
更新:
引用@ChrisPratt 的评论; (我忘了在我的答案中包含)
anchor 标记上的
target
属性会告诉浏览器在新选项卡中打开链接。
关于asp.net-mvc - 在浏览器的新标签页中打开 PDF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37464577/