1. 程式人生 > >c# 頁面列印預覽 並儲存為PDF

c# 頁面列印預覽 並儲存為PDF

這次列印的方法主要是獲取頁面的html檔案 進行整理 並生成列印預覽

1.C# 的.aspx 頁面

需要設定   <!--startprint--> 和 <!--endprint--> 用於設定列印內容

2.列印按鈕設定onclick="previewfirst(); 方法

3.Jquery 裡呼叫 js裡具體列印方法類   (此方法裡 可設定列印頁面的某些具體元素顯示與否)

function previewfirst()

{
 previewMain();

}

4.具體列印的方法

function previewMain() {

    //獲取當前頁的html程式碼  
    var bodyhtml = window.document.body.innerHTML;
    //設定列印開始區域、結束區域  
    var startFlag = "<!--startprint-->";
    var endFlag = "<!--endprint-->";
    // 要列印的部分  
   
    var printhtml = bodyhtml.substring(bodyhtml.indexOf(startFlag),
                    bodyhtml.indexOf(endFlag));
    // 生成並列印ifrme  
    var syfPrint = window.frames["iframe_1"];       // document.frames[0];
    syfPrint.document.body.innerHTML = printhtml;
    //syfPrint.document.execCommand("Print");
   
    var htmmm = '</br>';
    window.document.title = " Hello word!";
    window.document.body.innerHTML = htmmm + syfPrint.document.body.innerHTML;
    window.location.href = "";

    window.print();

}

在此列印方法後 會生成的頁面 總是會帶有頁首和頁尾,頁首就是如上方法中的“Hello word !” 頁尾暫時還沒找到好的方法更改 如有高手 歡迎指點~~