PDF在線閱讀的兩種方法

PDF在線閱讀的兩種方法:

1.??直接用Object讀取PDF文件(如果機器上客戶端都安裝了PDF的話)

aspx代碼:

??????<object id=”pdfObject” width=”80%” height=”80%” classid=” CLSID:CA8A9780-280D-11CF-A24D-444553540000”>

????????????<param name=”SRC” value=”DinnerNow.pdf”>

??????</object>

其中如果需要從后臺讀取這個value值(DinnerNow.pdf)在下面一并描述。

2.??將上傳的PDF文件轉(zhuǎn)換為swf格式之后,用flash閱讀,這樣的話就分兩步,第一步的話就是在上傳文件的時候?qū)DF轉(zhuǎn)化為swf格式,處理方法如下:

a)?在服務(wù)器機器上安裝swftools-0.9.1.exe(或者FlashPaper之類的軟件),在這邊我用swftools(如我的文件安裝在C://Program Files//SWFTools)。

b)?客戶端上傳文件(如用FileUpload上傳文件之后,如SaveAs方法之后),調(diào)用服務(wù)器端CMD,代碼如下:

??????????????Process?p =?new?Process();

????????????p.StartInfo.FileName =?"cmd.exe";

????????????p.StartInfo.UseShellExecute =?false;

????????????p.StartInfo.RedirectStandardInput =?true;

????????????p.StartInfo.RedirectStandardOutput =?true;

????????????p.StartInfo.RedirectStandardError =?true;

????????????p.StartInfo.CreateNoWindow =?true;

????????????p.Start();

????????????p.StandardInput.WriteLine("cd C://Program Files//SWFTools");

????????????//?d://DinnerNow.pdf是服務(wù)器中保存文件的地址(上傳文件到服務(wù)器的哪個位置)

????????????//?d:// DinnerNow.swf是需要將pdf文件轉(zhuǎn)化為swf文件之后的路徑

????????????p.StandardInput.WriteLine("pdf2swf.exe d://DinnerNow.pdf -o d:// DinnerNow.swf -T 9");

????????????p.StandardInput.WriteLine("exit");

????????????p.WaitForExit();

????????p.Close();

?c) 之前兩步做的都是準備工作,就是將pdf文件轉(zhuǎn)換為swf,接下來就是在線閱讀了,在線閱讀跟第一種方法中一樣,也用object來處理,aspx代碼如下:

???? <div>

??????? <script type="text/JavaScript">

??????????? document.write('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="50%" height="50%" codebase="http://active.macromedia.com/flash5/cabs/swflash.cab#version=8,0,0,0">');

??????????? document.write('<param name="MOVIE" value=' +?src?+ '>');

??????? </script>

??? </div>

???? 那么其中的src怎么得到呢,可以在aspx.cs后臺傳到前臺去,如重寫一個OnPreRender方法:

????????? protected override void OnPreRender(EventArgs e)

??????? {

??????????? base.OnPreRender(e);

??????????? Page.ClientScript.RegisterClientScriptBlock(GetType(), "swfSrc", "<script type=/"text/javascript/">var src = 'DinnerNow.swf';</script>");

??????? }

???? 上面兩步建議用自定義控件去封裝下

---------------------

作者:山鷹的天空

來源:CSDN

原文:https://blog.csdn.net/LanSeTianKong12/article/details/77529160

版權(quán)聲明:本文為博主原創(chuàng)文章,轉(zhuǎn)載請附上博文鏈接!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容