LODOP直接用base64碼輸出圖片


Lodop中的ADD_PRINT_IMAGE,也可以直接輸出base64碼圖片,不用加img標簽,如果加了img標簽,會被當做超文本對待,受瀏覽器引擎解析的影響。

什么時候使用base64碼直接輸出比較好:
1.低版本IE解析不了帶img標簽的base64碼輸出方式。
一些低版本的的IE不支持base64碼圖片,這種時候用img+base64碼,瀏覽器引擎不支持就無法解析,例如IE6、IE7等,這時候可以換用直接輸出base64碼不加img標簽方式。

2.批量打印大量的圖片:
批量打印很大數量的圖片,如果用img標簽超文本輸出方式,IE引擎需要下載解析很多圖片,受IE瀏覽器本身的限制,瀏覽器解析影響的,緩存有時不釋放或釋放的慢,可能打了一段時間后會突然不顯示圖片了,變成空白頁。
這種時候可以改用直接輸出base64碼方式,不需要瀏覽器解析,不受瀏覽器引擎的影響。

Lodop圖片輸出ADD_PRINT_IMAGE 有白邊
之前有博文介紹凡是輸出img標簽的,受瀏覽器解析的影響,會有瀏覽器背景色的白邊,如果是護眼色,就是護眼色的白邊。
直接輸出base64碼方式由於不經過瀏覽器解析,也不會產生白邊。

由於參數太長,圖片和代碼省略了很多該base64碼,且用了\r\n換行。

加img標簽的base64碼輸出圖片
直接輸出base64碼的圖片(不加img標簽)
低版本IE解析不了帶img標簽的base64碼輸出方式時,可用該直接輸出base64碼方法。
批量打印大量的圖片時,可以用該直接輸出base64碼方法。
效果如圖。

代碼 :

<script language="javascript" type="text/javascript">   
        var LODOP; //聲明為全局變量 
function prn1_preview() {
        LODOP=getLodop();  
        LODOP.PRINT_INIT("");//初始化
        LODOP.ADD_PRINT_SHAPE(4,-1,0,216,343,0,1,"#000000");
        LODOP.ADD_PRINT_IMAGE(10,10,172,123,"data:image/png;base64,\r\niVBORw0KGgoAAAANSUhEUgAAAJAAAABfCAIAAACImtmOAAAACXBIWXMAAAsTAAALEwEAmpwYAAAK\r…………(省略)");
        LODOP.ADD_PRINT_IMAGE(200,10,172,123,"<img src=\"data:image/png;base64,\r\niVBORw0KGgoAAAANSUhEUgAAAJAAAABfCAIAAACImtmOAAAACXBIWXMAAAsTAAALEwEAmpwYAAAK\r…………(省略)"/>");
        LODOP.PRINT_DESIGN(); 
    };
</script> 

圖片:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM