web在線打印,打印閱覽,打印維護,打印設計

winform打印的方案比較多,實現也比較容易,並且效果也很是炫;但如今愈來愈多的系統是web系統,甚至是移動端。網上也有很是的web打印方案,但各式各樣的問題很是多,好比js兼容性,穩定性等一直纏繞着衆多的程序員,或者就是web 打印須要瀏覽器安裝 ActiveX 組件,ActiveX安裝不容易成功等等問題。程序員

  下面咱們來看一種web在線閱覽,在線編輯,在線打印的解決方案,Lodop這一款在線打印工具在各版本瀏覽器的兼容性表現不錯,功能方面,咱們經常使用的打印閱覽,打印設計,打印機設置等他都提供了,並且額外的功能也是不少的,足夠咱們開發使用了。他對瀏覽器安裝 ActiveX 組件提供了另一種方法,首先檢測有沒有安裝插件,未檢測到插件時,自動提示,並給出下載插件的地址,這裏的插件使用的是exe 格式的,這樣就避免了瀏覽器安全設置的問題,至於怎麼安裝這裏就不在贅述。web

  1.準備工做:瀏覽器

  下載lodop:http://www.lodop.net/uploads/file/Lodop6.198.zip,解壓後放到工程中,在頁面引入以下代碼:安全

<embed id="LODOP_EM" type="application/x-print-lodop" width="0" height="0" pluginspage="../Lodop/install_lodop.exe"></embed>

  其中: app

是專爲 FireFox 瀏覽器設計的代碼,若是你這個打印控件只在 IE 上應用,那麼上面這名話徹底能夠不用的。函數

只這樣加就好了:工具

  把這些引入頁面之後,剩下的就是一些基本的lodop API調用了。字體

  2.加幾個按鈕調用spa

複製代碼
1 .net


2 @x.Button("打印預覽").Icon("icon-printView").Click("print_preview()").ToolTip("打印預覽")
3 @x.Button("直接打印").Icon("icon-print").Click("print()").ToolTip("直接打印")
4 @x.Button("選擇打印機").Icon("icon-selectPrinter").Click("print_printA()").ToolTip("選擇打印機")
5 @x.Button("打印維護").Icon("icon-printSetup").Click("printSetup()").ToolTip("打印維護")
6 @x.Button("打印設計").Icon("icon-printDesign").Click("printDesign()").ToolTip("打印設計")
7

複製代碼
  3.這些按鈕對應的方法  

複製代碼
1 var LODOP; //聲明爲全局變量
2 // 打印預覽
3 function print_preview() {
4 CreatePrintPage();
5 LODOP.PREVIEW();
6 };
7 // 直接打印
8 function print() {
9 CreatePrintPage();
10 LODOP.PRINT();
11 };
12 // 選擇打印機
13 function print_printA() {
14 CreatePrintPage();
15 LODOP.PRINTA();
16 };
17 //打印維護
18 function printSetup() {
19 CreatePrintPage();
20 LODOP.PRINT_SETUP();
21 };
22 //打印設計
23 function printDesign() {
24 CreatePrintPage();
25 LODOP.PRINT_DESIGN();
26 };
27 // 建立打印頁面
28 function CreatePrintPage() {
29 LODOP = getLodop();
30 LODOP.PRINT_INIT("web在線打印");
31 LODOP.SET_PRINT_PAGESIZE(1, 0, 0, "A4");
32 //設置打印頁面屬性:2:表示橫向打印,0:定義紙張寬度,爲0表示無效設置,A4:設置紙張爲A4
33 //LODOP.ADD_PRINT_TEXT(50, 231, 260, 39, "打印頁面部份內容");
34 LODOP.SET_PRINT_STYLE("FontSize", 18);
35 LODOP.SET_PRINT_STYLE("Bold", 1);
36 LODOP.ADD_PRINT_HTM(10, 30, 760, 860, $('#CurrentDocumentPage')[0].contentWindow.document.body.innerHTML);
37 }
複製代碼
  具體API不用詳細介紹,這裏只說一下ADD_PRINT_HTM(intTop,intLeft,intWidth,intHeight,strHtml)增長超文本項,

$('#CurrentDocumentPage')[0].contentWindow.document.body.innerHTML,就是Iframe頁面的內容,須要仔細研究的能夠到lodop官網查閱。
1


2
4
5

$("#CurrentDocumentPage").attr("src", viewUrl);

  4.最終效果

  頁面內容

  打印閱覽

   打印維護的目標用戶是頁面操做者,開發者在根據業務須要將該界面提供給操做者時,有時會發現其默認功能權限不符合業務要求(亦多亦少),以下是默認的功能權限範圍,試着改變勾選,看看演示程序是如何經過SET_SHOW_MODE函數解決這一問題的。

1:位置移動和寬高調整
2:顏色選擇
3:字體名選擇
4:字大小選擇
5:旋角調整
6:粗斜體功能條
7:線型功能條

8:對齊功能條
9:刪除功能
10:頁眉設置
11:頁腳設置
12:位置鎖定功能
13:屬性設置
14:顯示關閉鈕(界面內嵌時)

  打印機設置 

  5.總結:

  最後,簡單說下Lodop的優點吧:

    (1)、操做簡單,API通俗易懂,兼容性好,主流的瀏覽器都支持了;

    (2)、插件能實現自動安裝提醒,而且不須要其餘額外的設置;

    (3)、打印維護可以實現權限控制,好比在不修改內容的前提下修改打印的樣式,好比調整字體,好比調整位置等等

    (4)、用戶設計的打印頁面,能夠做爲個性化的我的設置,系統維護的同一個模板能夠適應不一樣的打印機。

相關文章
相關標籤/搜索