asp.net 页面打开PDF

问题描述

我是在win764位系统上开发的是可以直接打开查阅的但是win732位点击之后就变成下载了怎么能不让下载只是查看

解决方案

解决方案二:
浏览器无法直接查看pdf和office文件,这种文件一般都是先转换为swf,再使用falsh播放器进行播放。中间的过程就是PDF(或office文件)-》swf文件-》在页面播放。
解决方案三:
PDF转SWF在页面查看。pdf2swf
解决方案四:
引用2楼Tian_xd的回复:

PDF转SWF在页面查看。pdf2swf

查到这个方法了不会写代码
解决方案五:
usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Web;usingSystem.IO;usingSystem.Text;publicclasstoSwf{privatevoidExec(stringarguments,stringexePath){System.Diagnostics.Processproc=newSystem.Diagnostics.Process();proc.StartInfo.FileName=exePath;proc.StartInfo.Arguments=arguments;proc.StartInfo.WindowStyle=System.Diagnostics.ProcessWindowStyle.Hidden;proc.Start();proc.WaitForExit();proc.Close();}///<summary>///返回页数///</summary>///<paramname="pdfPath">PDF文件地址</param>publicintGetPageCount(stringpdfPath){try{byte[]buffer=File.ReadAllBytes(pdfPath);intlength=buffer.Length;if(buffer==null)return-1;if(buffer.Length<=0)return-1;stringpdfText=Encoding.Default.GetString(buffer);System.Text.RegularExpressions.Regexrx1=newSystem.Text.RegularExpressions.Regex(@"/Types*/Page[^s]");System.Text.RegularExpressions.MatchCollectionmatches=rx1.Matches(pdfText);returnmatches.Count;}catch(Exceptionex){throwex;}}///<summary>///将PDF转换为SWF文件///</summary>///<paramname="pdfPath">PDF文件路径</param>///<paramname="swfPath">SWF文件路径</param>///<paramname="page"></param>publicvoidConvertToSwf(stringpdfPath,stringswfPath,intpage){try{stringpdf2swf_exe=@"C:ProgramFiles(x86)SWFToolspdf2swf.exe";stringswfcombine_exe=@"C:ProgramFiles(x86)SWFToolsswfcombine.exe";if(!File.Exists(pdf2swf_exe)){thrownewApplicationException("Cannotfind:"+pdf2swf_exe);}StringBuildersb=newStringBuilder();sb.Append("-o""+swfPath+""");//outputsb.Append("-z");sb.Append("-T9");//flashversionsb.Append("-sdisablelinks");//禁止PDF里面的链接sb.Append("-p"+"1"+"-"+page);//pagerangesb.Append("-j100");//Setqualityofembeddedjpegpicturestoquality.0isworst(small),100isbest(big).(default:85)sb.Append("""+pdfPath+""");//input//执行swf转换this.Exec(sb.ToString(),pdf2swf_exe);stringrfxview=@"C:ProgramFiles(x86)SWFToolsswfsrfxview.swf";stringarguments=string.Format(""{0}"viewport={1}-o{2}",rfxview,swfPath,swfPath);this.Exec(arguments,swfcombine_exe);}catch(Exceptionex){throwex;}}}

解决方案六:
然后调用ConvertToSwf方法。把相应的参数传进去,执行就OK了。
解决方案七:
还要下载安装pdf2swf这个软件的。
解决方案八:
现在的浏览器基本都支持在线浏览,但是首先的装adobe
解决方案九:
引用6楼Tian_xd的回复:

还要下载安装pdf2swf这个软件的。

引用4楼Tian_xd的回复:

usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Web;usingSystem.IO;usingSystem.Text;publicclasstoSwf{privatevoidExec(stringarguments,stringexePath){System.Diagnostics.Processproc=newSystem.Diagnostics.Process();proc.StartInfo.FileName=exePath;proc.StartInfo.Arguments=arguments;proc.StartInfo.WindowStyle=System.Diagnostics.ProcessWindowStyle.Hidden;proc.Start();proc.WaitForExit();proc.Close();}///<summary>///返回页数///</summary>///<paramname="pdfPath">PDF文件地址</param>publicintGetPageCount(stringpdfPath){try{byte[]buffer=File.ReadAllBytes(pdfPath);intlength=buffer.Length;if(buffer==null)return-1;if(buffer.Length<=0)return-1;stringpdfText=Encoding.Default.GetString(buffer);System.Text.RegularExpressions.Regexrx1=newSystem.Text.RegularExpressions.Regex(@"/Types*/Page[^s]");System.Text.RegularExpressions.MatchCollectionmatches=rx1.Matches(pdfText);returnmatches.Count;}catch(Exceptionex){throwex;}}///<summary>///将PDF转换为SWF文件///</summary>///<paramname="pdfPath">PDF文件路径</param>///<paramname="swfPath">SWF文件路径</param>///<paramname="page"></param>publicvoidConvertToSwf(stringpdfPath,stringswfPath,intpage){try{stringpdf2swf_exe=@"C:ProgramFiles(x86)SWFToolspdf2swf.exe";stringswfcombine_exe=@"C:ProgramFiles(x86)SWFToolsswfcombine.exe";if(!File.Exists(pdf2swf_exe)){thrownewApplicationException("Cannotfind:"+pdf2swf_exe);}StringBuildersb=newStringBuilder();sb.Append("-o""+swfPath+""");//outputsb.Append("-z");sb.Append("-T9");//flashversionsb.Append("-sdisablelinks");//禁止PDF里面的链接sb.Append("-p"+"1"+"-"+page);//pagerangesb.Append("-j100");//Setqualityofembeddedjpegpicturestoquality.0isworst(small),100isbest(big).(default:85)sb.Append("""+pdfPath+""");//input//执行swf转换this.Exec(sb.ToString(),pdf2swf_exe);stringrfxview=@"C:ProgramFiles(x86)SWFToolsswfsrfxview.swf";stringarguments=string.Format(""{0}"viewport={1}-o{2}",rfxview,swfPath,swfPath);this.Exec(arguments,swfcombine_exe);}catch(Exceptionex){throwex;}}}

第一:执行了之后会不会再我写的目录下创建一个swf的文件呢第二:stringrfxview=@"C:ProgramFiles(x86)SWFToolsswfsrfxview.swf";这个需要修改成我的哪个文件吗
解决方案十:
stringrfxview=@"C:ProgramFiles(x86)SWFToolsswfsrfxview.swf";在你的安装目录找。///<summary>///将PDF转换为SWF文件///</summary>///<paramname="pdfPath">PDF文件路径</param>///<paramname="swfPath">SWF文件路径</param>///<paramname="page"></param>publicvoidConvertToSwf(stringpdfPath,stringswfPath,intpage)你看看这个上面的注释啊!
解决方案十一:
toSwfts=newtoSwf();//将其转换为SWF格式ts.ConvertToSwf(pdf文件路径,SWF文件路径+".swf",ts.GetPageCount(pdf文件路径));
解决方案十二:
装Adobe,浏览器可在线打开PDF

时间: 2024-09-15 08:47:22

asp.net 页面打开PDF的相关文章

asp.net 使用模板页Master后,子页面打开新页面,获取不了返回值

问题描述 asp.net 使用模板页Master后,子页面打开新页面,获取不了返回值 内容页: var url = "SelectContractNo1.aspx?PersonId=" + ticks; var aim=window.showModalDialog(url) 返回值页面: setTimeout(function(){window.returnValue='" + aaa + "'; self.close();}, 100); aim 不能获得返回值

页面打开时短时间内全屏显示flash然后自动隐藏,在asp.net中如何实现啊(急)

问题描述 如题页面打开时短时间内全屏显示flash然后自动隐藏,在asp.net中如何实现啊?高手帮忙哦

怎么在 ASP.NET页面中打开 OFFICE

问题描述 怎么在ASP.NET页面中打开OFFICE中的WORD,EXCEL等. 解决方案 解决方案二: 解决方案三:System解决方案四:dimnewappasnewword.applicationdimnewdocasnewword.newappnewdoc=newapp.add("d:...")....解决方案五:打开EXCEL文件复杂的用COM简单的用stringConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;D

【译】在Asp.Net中操作PDF – iTextSharp - 使用链接和书签

原文 [译]在Asp.Net中操作PDF – iTextSharp - 使用链接和书签      用户和PDF文档的交互可以通过锚(链接)和书签进行,接着我前面iTextSharp的系列文章,本篇文章主要讲通过iTextSharp创建的PDF中链接和书签的基础知识,你或许想复习一下之前的文章,如果你还没有阅读过之前的文章,那么:      在ASP.NET中创建PDF-iTextSharp起步      在Asp.Net中操作PDF - iTextSharp - 使用字体      在Asp.N

【译】在Asp.Net中操作PDF - iTextSharp - 利用列进行排版

原文 [译]在Asp.Net中操作PDF - iTextSharp - 利用列进行排版   在使用iTextSharp通过ASP.Net生成PDF的系列文章中,前面的文章已经讲述了iTextSharp所涵盖的大多数基本功能.本文主要讲述通过另外一种方法来对文档进行排版,那就是使用列(columns).本系列之前的文章如下:     在ASP.NET中创建PDF-iTextSharp起步     在Asp.Net中操作PDF - iTextSharp - 使用字体     在Asp.Net中操作P

ASP.net 页面被关闭后,服务器端是否仍然执行中?

问题:当一个正在执行中的ASPX页面执行到一半的时候,浏览器中你关闭了这个页面,服务器端对应的这个页面的代码仍然在执行么? 答案:除非你代码里面做了特殊判断,否则仍然正在执行. 注意点: 1.客户端显示页面的时候,后台已经执行完了的页面对象早已经不存在了.当然这时候谈不上服务器段执行不执行的问题了. 2.页面还没有返回,处于等待状态的时候.关闭ASPX页面,才会涉及到上面提到的服务器端仍然在执行的情况. 3.客户端关闭的时候根本不向服务器发送指令. 4.除非你代码里面做了特殊判断,这里的特殊判断

FrontPage创建HTML/ASP混合页面

frontpage|创建|页面    我一直使用Microsoft的FrontPage 98来开发ASP/ADO之类的Internet数据库应用程序.现在我听说许多人都非常信奉采用InterDev做为开发那些程序的工具,因为他们认为FrontPage搞乱了代码.但是在这里,我要列举一些极好的理由来说明我为什么更喜欢FrontPage. 我的许多客户都是企业家,他们认为,对于一个Web站点来说,FrontPage和其他所见即所得的Web站点开发工具能做到不用编程就建立页面.当然,"不用编程&quo

巧用ASP实现在线生成PDF文档

    在开始讲解ASP实现在线生成PDF文档之前我们先了解一下PDF的历史,了解了某个东西,知道他的作用性以及重要性,再去学习该ASP程序相信效果一定不一样.     Adobe PDF格式已经变成很多机构和公司进行跨平台制表的通用媒体格式.尽管我不是这个产品的狂热痴迷者,却不得不接受这样一个事实:用这个格式产生一个协定可能会比用Word还要好.           由于在一家雇用公司工作,我已经把我们所有早期的软件写成能在Internet上运行,这样我们就能和小的子公司共享公用数据库了.然而

ASP.NET页面事件

asp.net|页面 在 ASP.NET 页面的寿命周期内,Page 对象会公开一些被频繁使用的标准事件.ASP.NET 页面框架在运行时,会自动连接到(连线)这些方法的相应代理实例.这样您就无须编写必要的"粘接代码".以下列表按激发顺序提供运行时连线的代理实例: • Page_Init:出现此事件期间,您可以初始化值或连接可能具有的任何事件处理程序. • Page_Load:出现此事件期间,您可以执行一系列的操作来首次创建 ASP.NET 页面或响应由投递引起的客户端事件.在此事件之