如果有兩對空span,第一對里面是空格,第二對里面是文字,在這兩對span標簽之間的文字會消失。
<span> </span>文字<span>文字</span>類似這樣的格式
可能底層ie瀏覽器的解析有關,由於Lodop借助的是windows底層的引擎進行解析,lodop本身不自帶瀏覽器引擎(lodop和c-lodop都是輕量級,兩三兆以內的小東西),所以受引擎解析的而影響,可以盡量避免這種格式的出現,由於一些軟件樣式都是自動生成的,有許多不需要的樣式和標簽,可酌情處理一下傳來的樣式。
或換用ADD_PIRNT_HTML(超文本的圖形模式)試試,這種類似截圖,能更好的還原超文本的樣式,適合精度高的打印機,精度低的打印機可能會不太清楚。
測試代碼:
<head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>WEB打印控件LODOP</title> <script language="javascript" src="LodopFuncs.js"></script> </head> <body> <div id="a"> <span>2)<span> </span></span>文字<span>:</span>這是一段測試文字</p> <!--:前面的“文字”消失了--> </div> <div id="b"> <span></span>文字測試1<span></span> <!--兩對空span,之間的“文字測試1”沒有消失--> </div> <div id="c"> <span> </span>文字測試2<span></span> <!--兩對span,第一對span標簽里是空格 第二對里是空的,之間的“文字3”沒有消失--> </div> <div id="d"> <span>前面的</span>文字3<span>文字測試3的結果</span> <!--兩對span,第一對span標簽里有文字;第二對里有文字,之間的“文字3”沒有消失了--> </div> <div id="e"> <span> </span>文字4<span>文字測試4的結果</span> <!--兩對span,第一對span標簽里是空格 第二對里有內容,之間的“文字3”消失了--> </div> <a href="javascript:prn1_preview()">打印預覽</a> <script language="javascript" type="text/javascript"> var LODOP; //聲明為全局變量 function prn1_preview() { LODOP=getLodop(); LODOP.PRINT_INIT(""); LODOP.ADD_PRINT_HTM(10,10,410,30,document.getElementById("a").innerHTML); LODOP.ADD_PRINT_HTM(52,26,410,30,document.getElementById("b").innerHTML); LODOP.ADD_PRINT_HTM(102,24,410,30,document.getElementById("c").innerHTML); LODOP.ADD_PRINT_HTM(152,24,410,30,document.getElementById("d").innerHTML); LODOP.ADD_PRINT_HTM(210,24,410,30,document.getElementById("e").innerHTML); LODOP.PRINT_DESIGN(); }; </script> </body>
圖示: