LODOP打印超文本中部分文字消失的一種情況1


如果有兩對空span,第一對里面是空格,第二對里面是文字,在這兩對span標簽之間的文字會消失。
<span>&nbsp;</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>&nbsp;&nbsp;&nbsp;&nbsp; </span></span>文字<span>:</span>這是一段測試文字</p>
    <!--:前面的“文字”消失了-->
</div>
<div id="b">
    <span></span>文字測試1<span></span>
    <!--兩對空span,之間的“文字測試1”沒有消失-->
</div>
<div id="c">
   <span>&nbsp;</span>文字測試2<span></span>
   <!--兩對span,第一對span標簽里是空格&nbsp;第二對里是空的,之間的“文字3”沒有消失-->
</div>
<div id="d">
   <span>前面的</span>文字3<span>文字測試3的結果</span>
   <!--兩對span,第一對span標簽里有文字;第二對里有文字,之間的“文字3”沒有消失了-->
</div>
<div id="e">
   <span>&nbsp;</span>文字4<span>文字測試4的結果</span>
   <!--兩對span,第一對span標簽里是空格&nbsp;第二對里有內容,之間的“文字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>

圖示:


免責聲明!

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



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