Lodop常用方法

一、文本打印項,style設置

1.Lodop設置文字居中

LODOP.ADD_PRINT_TEXT(Top,Left,Width,Height,strContent);增加純文本打印項

LODOP.ADD_PRINT_TEXT(200,0,100,50,"自動居中的標題");
LODOP.SET_PRINT_STYLEA(0,"Horient",2);

SET_PRINT_STYLE

  • 整體設置(針對文本項)
  • 打印初始化後、增加打印項之前調用本函數
  • 對該語句後面的打印項樣式設置效果

SET_PRINT_STYLEA

  • 單個打印項(針對文本項)進行字體設置,增加打印項之後調用本函數
  • LODOP.SET_PRINT_STYLEA(3,"FontSize",15);設置第3個內容項字體爲15號字體
  • 針對第一個參數設置的打印項樣式設置效果
  • 序號設置0表示最新文本對象,序號是1就是第一個對象,依次,,,
2. Lodop設置文本內容行左右對齊

允許標點溢出,且英文單詞拆開

SET_PRINT_STYLEA(0,"TextNeatRow",true);

二、打印圖片

圖片屬性設置
LODOP.SET_PRINT_STYLEA(0,“Stretch”,1);//(可變形)擴展縮放模式
LODOP.SET_PRINT_STYLEA(0,“Stretch”,2);//按原圖比例(不變形)縮放模式

圖片和文字的層級是按照添加順序來的,越往後新添加的,層級越高,如果在同一個位置,先添加文字,後添加圖片
需要設置透明圖片LODOP.SET_PRINT_STYLE("TransColor","#FFFFFF");

LODOP.PRINT_INIT("打印控件功能演示_Lodop功能_打印圖片4");
LODOP.ADD_PRINT_TEXT(56,56,200,20,"公章底下的文字");
LODOP.SET_PRINT_STYLEA(0,"FontSize",13);
LODOP.ADD_PRINT_IMAGE(28,49,171,153,"<img border='0' src='http://www.c-lodop.com/demolist/PrintSample37.png' />");
LODOP.SET_PRINT_STYLEA(0,"TransColor","#FFFFFF");
LODOP.ADD_PRINT_TEXT(120,53,200,20,"公章上面的文字");
LODOP.SET_PRINT_STYLEA(0,"FontSize",15);
LODOP.PREVIEW();
1.添加打印對象–圖片
LODOP.PRINT_INITA("");
LODOP.SET_PRINT_PAGESIZE(1,'297mm','210mm',"");
var url = 'http://s0.imhimg.com/timg%20(2)_20200119142210.jpg'
LODOP.ADD_PRINT_IMAGE(0,0,"60mm","100mm","<img border='0' src='"+url+"'  />");
LODOP.SET_PRINT_STYLEA(0,"Stretch",2);  //圖片顯示全部
LODOP.SET_PRINT_STYLEA(0,"Horient",2);  //居中顯示
2.添加打印背景–圖片
LODOP.ADD_PRINT_SETUP_BKIMG("<img border='0' src='"+url2+"'>");
LODOP.SET_SHOW_MODE("BKIMG_PRINT",1);//打印包含背景圖	
//或
LODOP.SET_SHOW_MODE("BKIMG_IN_PREVIEW",1)
3.選擇本地圖片打印
<button>打印</button>
<a href="javascript:;" onclick="javascript:document.getElementById('file1').value=getImageFileName()">選文件..</a>
<input type="text" id="file1" size="40" > 
var LODOP; //聲明爲全局變量
function getImageFileName() {
     LODOP=getLodop(); 
     if (LODOP.CVERSION) CLODOP.On_Return=function(TaskID,Value){document.getElementById('file1').value=Value;};
     return  LODOP.GET_DIALOG_VALUE("LocalFileFullName","*.jpg;*.bmp;.jpeg;.png");
 } 
        
('button').on('click',function(){
    LODOP.PRINT_INITA("");
    LODOP.SET_PRINT_PAGESIZE(1,'297mm','210mm',"A4");
    LODOP.ADD_PRINT_SETUP_BKIMG(document.getElementById('file1').value);
    LODOP.SET_SHOW_MODE("BKIMG_PRINT",1);//打印包含背景圖	
    LODOP.SET_PRINT_STYLEA(0,"HtmWaitMilSecs",100);//延遲100毫秒
    LODOP.PREVIEW();
})
4.添加超文本對象

只是在實際開發中,有時候這種方式加載不出來圖片,必須等img.onload以後才能去打印

LODOP.ADD_PRINT_HTM(0,0,'60%','60%','<img src="http://s0.imhimg.com/timg%20(2)_20200119142210.jpg" alt="">');

三、打印機設置

1.渲染打印機下拉框

GET_PRINTER_COUNT;獲得打印機個數
GET_PRINTER_NAME(intPrinterIndex);用序號獲得打印機名,一般序號從0開始,-1特指默認打印機;
SET_PRINTER_INDEX(oIndexOrName);按序號或名稱指定打印機,選定後禁止手工重選;
SET_PRINTER_INDEXA(IndexorName);按序號或名稱指定打印機,選定後允許手工重選;
SELECT_PRINTER;彈出界面選打印機並返回其序號,序號從0開始,返回-1表示放棄
SET_PRINT_COPIES(intCopies);指定每次打印份數,缺省爲1
在這裏插入圖片描述

<select class="form-control invoice_printselect">
  <option>默認打印機</option>
</select>

function load_printer() {
        var printer_count = LODOP.GET_PRINTER_COUNT(); //獲取打印機個數
        var printer_name = new Array();
        var str = "";
        var default_printer = defaultPrintval ? defaultPrintval : LODOP.GET_PRINTER_NAME(-1);
        for (var i = 0; i < printer_count; i++) {
            printer_name[i] = LODOP.GET_PRINTER_NAME(i); //獲取打印機設備名字
            str += "<option value='" + i + "'";
            if (printer_name[i] == default_printer) {
                str += "selected='selected'";
            }
            str += ">" + printer_name[i] + "</option>";

        }
        return str; //渲染下拉框供選擇打印機
    }

//判斷是否安裝lodop
var LODOP = getLodop();
 if (LODOP) {
     var printer = load_printer();
     $(".invoice_printselect").empty().append(printer);
 }
2.控制打印機雙面打印
SET_PRINT_MODE("PRINT_DUPLEX",2);
SET_PRINT_MODE("PRINT_DEFAULTSOURCE",1);

PRINT_DUPLEX的設置參數:

  • 0-不控制
  • 1-不雙面
  • 2-雙面(長邊裝訂)
  • 3-小冊子雙面(短邊裝訂_長邊水平)
    PRINT_DEFAULTSOURCE的設置參數:
  • 1-紙盒
  • 4-手動
  • 7-自動
  • 0-不控制

如打印機無雙面打印功能,也可手工實現,此時需如下語句(Lodop提供了暫停時間翻紙):SET_PRINT_MODE("DOUBLE_SIDED_PRINT",true);

四、添加超文本

可以加外鏈樣式

//外鏈樣式
var strStyleCSS="<link href='css/PrintSample10.css' type='text/css' rel='stylesheet'>";
var strFormHtml=strStyleCSS+"<body>"+document.getElementById("form1").innerHTML+"</body>";
LODOP.PRINT_INIT("打印控件功能演示_Lodop功能_外鏈樣式風格");
LODOP.ADD_PRINT_TEXT(50,50,260,39,"外鏈樣式雙線邊框:");
LODOP.ADD_PRINT_HTM(88,50,300,200,strFormHtml);
LODOP.PREVIEW();

添加本業完整內容

LODOP.ADD_PRINT_HTM(10,10,"100%","100%","<!DOCTYPE html>"+document.getElementsByTagName("html")[0].innerHTML);
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章