在asp.net中显示PDF的方法:

来源:http://www.cnblogs.com/tengs2000/archive/2009/02/23/1396646.html

 

一、直接显示,使用的还是原页面的URL

1 Response.ContentType = "application/pdf";
2 Response.Clear();
3 Response.TransmitFile(@"SharePoint.pdf");
4 Response.End();
C# Code

 

二、以PDF文件做为URL进行显示

Response.Redirect("Sharepoint.pdf");

 

三、点击进行下载

1 Response.ClearHeaders();
2 Response.ContentType = "application/pdf";
3 Response.Clear();
4 Response.AppendHeader("Content-Disposition", "attachment;Filename=SharePoint.pdf");
5 Response.TransmitFile(@"SharePoint.pdf");
6 Response.End();

 

注意:上面SharePoint.pdf是pdf文件的名字与路径。(现在是当前目录,故目录没有写“ ./ ” 而已。)

 

四、在一个页面中嵌入一个PDF显示框

例如:在Default4.aspx里面显示一个框,可以使用iframe。

<iframe runat ="server" src="getPdfFile.aspx?filename=./pdf/通知.pdf" width="800px" height="600px" ></iframe>

另外再写一个getPdfFile.aspx页面,写其pageload事件:

1 protected void Page_Load(object sender, EventArgs e)
2     {
3         string fileName = Request["fileName"];
4         Response.ContentType = "application/pdf";
5         Response.Clear();
6         Response.TransmitFile(@""+fileName);
7         Response.End();
8     }

嗯,这个做法是参考了http://bbs.csdn.net/topics/340192312里面的讨论。

可是拷贝别人的代码过来,运行不了,只好用了上面第一种的做法。(可能不是很好。)

原来的代码:

 

【核心代码】 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 using Aspose.Cells; using Aspose.Slides.Pptx; using System; using System.Collections.Generic; using System.Data; using System.IO; using System.Linq; using System.Net; using System.Net.Http; using System.Text; using System.Web.Http; namespace DocOnlineView.UI.Controllers.MVCAPI { public class HomeController : ApiController { [HttpGet] public DataTable CourseViewOnLine(string fileName) { DataTable dtlist = new DataTable(); dtlist.Columns.Add("TempDocHtml", typeof(string)); string fileDire = "/Files"; string sourceDoc = Path.Combine(fileDire, fileName); string saveDoc = ""; string docExtendName = System.IO.Path.GetExtension(sourceDoc).ToLower(); bool result = false; if (docExtendName == ".pdf") { //pdf模板文件 string tempFile = Path.Combine(fileDire, "temppdf.html"); saveDoc = Path.Combine(fileDire, "viewFiles/onlinepdf.html"); result = PdfToHtml( sourceDoc, System.Web.HttpContext.Current.Server.MapPath(tempFile), System.Web.HttpContext.Current.Server.MapPath(saveDoc)); } else { saveDoc = Path.Combine(fileDire, "viewFiles/onlineview.html"); result = OfficeDocumentToHtml( System.Web.HttpContext.Current.Server.MapPath(sourceDoc), System.Web.HttpContext.Current.Server.MapPath(saveDoc)); }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值