web 實現大量打印

web 實現大量打印php

問題描述:html

在B/S項目中須要打印大量的圖片,咱們使用window.print,可是當數據量大至上萬的時候,將圖片加載出來須要一些時間,加載出來以後打印,若是用戶關閉了打印界面會致使打印頁的缺失。jquery

解決思路:web

1.IE,使用ActiveX控件,非IE,使用Flash插件。這種思路不一樣的瀏覽器開發方式不同,IE/FF/GROME瀏覽器

2.開發一個exe,客戶端安裝到本地服務,使用HTTP通信方式。經過JS發送HTTP請求給本地的服務,本地服務起一個小型的HTTP server接收請求,而後返回數據,JS解析,顯示在UI上。好比將打印的參數傳值到本地服務,本地服務去調用打印機,使瀏覽器資源獲得釋放。ide

咱們使用第二種思路。.net

嘗試瞭如下方法:插件

1.HttpPrintercdn

採用緣由 免費 ,OME費用很便宜的,並且不限制時間和數量.還能夠購買源碼的。server

HttpPrinter.com

2.葡萄城的ActiveReports

中有B / s端的打印使用window.print實現

https://demo.grapecity.com.cn/ActiveReports/ASPNET/ControlExplorer/Viewers/Default.aspx?category=1001&action=14

另外有C / S端的打印,沒法與瀏覽器交互,可是能夠去改進

https://gcdn.grapecity.com.cn/forum.php?mod=viewthread&tid=48785&extra=page%3D1

  1. Lodop分爲收費版與免費版

    (1)使用Lodop插件,須要客戶端安裝一個服務,服務的端口默認是8000或18000

    (2)如何購買和使用打印控件的Lodop的註冊號

http://blog.sina.com.cn/s/blog_721e77e50100nfzs.html

(3)Lodop樣例演示

http://www.lodop.net/LodopDemo.html

考量問題:

(1)免費版有水印

  1. JCP分爲收費版與免費版

    安裝程序須要替換

    網官 http://printfree.jatools.com/

    考量問題:

免費版只適合於IE瀏覽器

圖片須要渲染到頁面,打印時釋放瀏覽器資源能夠作其餘操做

收費版jatoolsPrint支持大部分瀏覽器

5.jquery打印

底層是window.print方法

最後考量,咱們決定將的ActiveReports中的C / S端程序打包成EXE,利用自定義協議實現打開本地exe服務,使用HTTP方式實現瀏覽器與本地服務的通信。

相關文章
相關標籤/搜索