0% found this document useful (0 votes)
250 views19 pages

WEB打印控件LODOP的说明文档

The document discusses using code to control printing with Lodop, including: - Embedding the Lodop printing control - Adding images, text, tables and other elements for printing - Controlling styles, layout, pagination and other formatting of printed output - Examples of printing invoices, forms and other complex documents programmatically The code shows how to precisely design printed pages using JavaScript calls to manipulate printing features.

Uploaded by

shenyan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
250 views19 pages

WEB打印控件LODOP的说明文档

The document discusses using code to control printing with Lodop, including: - Embedding the Lodop printing control - Adding images, text, tables and other elements for printing - Controlling styles, layout, pagination and other formatting of printed output - Examples of printing invoices, forms and other complex documents programmatically The code shows how to precisely design printed pages using JavaScript calls to manipulate printing features.

Uploaded by

shenyan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 19

在页面内嵌入打印控件

<script language="javascript" src="LodopFuncs.js"></script>


<object id="LODOP" classid="clsid:2105C259-1E0C-4534-8141-A753534CB4CA" width=0 height=0>
<embed id="LODOP_EM" type="application/x-print-lodop" width=0 height=0
pluginspage="install_lodop.exe"></embed>
</object>

缩放打印图片
function myPreview2() {
LODOP=getLodop(document.getElementById('LODOP'),document.getElementById('LODOP_EM'));
LODOP.ADD_PRINT_IMAGE(30,150,600,400,"<img border='0'
src='http://www.baidu.com/img/baidu_logo.gif'/>");
LODOP.SET_PRINT_STYLEA(1,"Stretch",1);//(可变形)扩展缩放模式
LODOP.PREVIEW();
};
function myPreview3() {
LODOP=getLodop(document.getElementById('LODOP'),document.getElementById('LODOP_EM'));
LODOP.ADD_PRINT_IMAGE(30,150,600,80,"<img border='0'
src='http://www.baidu.com/img/baidu_logo.gif'/>");
LODOP.SET_PRINT_STYLEA(1,"Stretch",2);//按原图比例(不变形)缩放模式
LODOP.PREVIEW();
};

控制表格的打印样式
function myPreview3(){
LODOP=getLodop(document.getElementById('LODOP'),document.getElementById('LODOP_EM'));
var strBodyStyle="<style>table { border: 1 solid #000000;border-collapse:collapse }</style>";
varstrFormHtml=strBodyStyle+"<body>"+document.getElementById("form1").innerHTML+"</body>";
LODOP.ADD_PRINT_TEXT(50,50,260,39,"细线样式打印:");
LODOP.ADD_PRINT_HTM(88,50,300,200,strFormHtml);
LODOP.PREVIEW();
};

打印内容旋转
function CreateOneFormPage(){
LODOP=getLodop(document.getElementById('LODOP'),document.getElementById('LODOP_EM'));
LODOP.SET_PRINT_STYLE("FontName","黑体");
LODOP.SET_PRINT_STYLE("FontSize",15);
LODOP.ADD_PRINT_TEXT(71,162,120,35,"正常内容");
LODOP.ADD_PRINT_TEXT(232,355,325,34,"纯文本逆时针旋转90度\n");
LODOP.SET_PRINT_STYLEA(0,"Angle",90);
LODOP.ADD_PRINT_TEXT(181,161,346,34,"纯文本逆时针旋转45度\n");
LODOP.SET_PRINT_STYLEA(0,"Angle",45);
LODOP.ADD_PRINT_HTM(230,98,163,200,"<table border=\"1\"><tr>\n<td style=\"writing-mode:
tb-rl;\">旋转90度</td>\n<td>正常<p>超文本</p><p>内容</p></td>\n</tr></table>\n\n");
};

用代码设计复杂的文本打印
function CreateFullBill() {
LODOP=getLodop(document.getElementById('LODOP'),document.getElementById('LODOP_EM'));
LODOP.SET_PRINT_STYLE("FontColor","#0000FF");
LODOP.ADD_PRINT_SHAPE(2,116,43,655,373,0,1,"#800000");
LODOP.ADD_PRINT_SHAPE(1,144,44,653,1,0,1,"#800000");
LODOP.ADD_PRINT_SHAPE(1,172,44,653,1,0,1,"#800000");
LODOP.ADD_PRINT_SHAPE(0,116,143,1,56,0,1,"#800000");
LODOP.ADD_PRINT_SHAPE(0,116,488,1,56,0,1,"#800000");
LODOP.ADD_PRINT_SHAPE(0,116,574,1,372,0,1,"#800000");
LODOP.ADD_PRINT_SHAPE(0,172,166,1,282,0,1,"#800000");
LODOP.ADD_PRINT_SHAPE(0,172,415,1,282,0,1,"#800000");
LODOP.ADD_PRINT_SHAPE(1,454,44,653,1,0,1,"#800000");
LODOP.ADD_PRINT_SHAPE(0,454,130,1,34,0,1,"#800000");
LODOP.ADD_PRINT_SHAPE(0,454,483,1,34,0,1,"#800000");
LODOP.ADD_PRINT_SHAPE(0,64,62,120,1,0,1,"#0000FF");
LODOP.ADD_PRINT_SHAPE(3,29,62,32,32,0,4,"#0000FF");
LODOP.ADD_PRINT_SHAPE(3,21,300,147,75,0,3,"#FF0000");
LODOP.ADD_PRINT_SHAPE(3,26,307,132,65,0,1,"#FF0000");
LODOP.ADD_PRINT_TEXT(33,192,408,30,"中国移动通信集团北京有限公司专用发票");
LODOP.SET_PRINT_STYLEA(0,"FontSize",15);
LODOP.SET_PRINT_STYLEA(0,"FontColor","#800000");
LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
LODOP.ADD_PRINT_TEXT(68,326,100,25,"发 票 联");
LODOP.SET_PRINT_STYLEA(0,"FontSize",11);
LODOP.SET_PRINT_STYLEA(0,"FontColor","#800000");
LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
LODOP.ADD_PRINT_TEXT(29,98,84,35,"中国移动通信CHINA MOBILE");
LODOP.ADD_PRINT_SHAPE(2,37,69,18,15,0,1,"#0000FF");
LODOP.ADD_PRINT_SHAPE(2,40,73,10,9,0,1,"#0000FF");
LODOP.ADD_PRINT_TEXT(70,64,117,20,"移 动 信 息 专 家");
LODOP.SET_PRINT_STYLEA(0,"FontSize",8);
LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
LODOP.ADD_PRINT_TEXT(124,58,68,20,"客户名称");
LODOP.SET_PRINT_STYLEA(0,"FontColor","#800000");
LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
LODOP.ADD_PRINT_TEXT(152,58,68,20,"手机号码");
LODOP.SET_PRINT_STYLEA(0,"FontColor","#800000");
LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
LODOP.ADD_PRINT_TEXT(124,497,68,20,"受理类别");
LODOP.SET_PRINT_STYLEA(0,"FontColor","#800000");
LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
LODOP.ADD_PRINT_TEXT(152,497,68,20,"合 同 号");
LODOP.SET_PRINT_STYLEA(0,"FontColor","#800000");
LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
LODOP.ADD_PRINT_TEXT(465,54,68,20,"大写金额");
LODOP.SET_PRINT_STYLEA(0,"FontColor","#800000");
LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
LODOP.ADD_PRINT_TEXT(465,495,104,20,"小写金额 ¥: ");
LODOP.SET_PRINT_STYLEA(0,"FontColor","#800000");
LODOP.SET_PRINT_STYLEA(0,"Alignment",3);
LODOP.ADD_PRINT_TEXT(98,56,47,20,"编号:");
LODOP.SET_PRINT_STYLEA(0,"FontColor","#800000");
LODOP.SET_PRINT_STYLEA(0,"Alignment",3);
LODOP.ADD_PRINT_TEXT(98,259,48,20,"日期:");
LODOP.SET_PRINT_STYLEA(0,"FontColor","#800000");
LODOP.SET_PRINT_STYLEA(0,"Alignment",3);
LODOP.ADD_PRINT_TEXT(97,500,71,20,"发票号码:");
LODOP.SET_PRINT_STYLEA(0,"FontColor","#800000");
LODOP.SET_PRINT_STYLEA(0,"Alignment",3);
LODOP.ADD_PRINT_TEXT(496,54,83,20,"话费帐期:");
LODOP.SET_PRINT_STYLEA(0,"FontColor","#800000");
LODOP.SET_PRINT_STYLEA(0,"Alignment",3);
LODOP.ADD_PRINT_TEXT(496,321,83,20,"营业员工号:");
LODOP.SET_PRINT_STYLEA(0,"FontColor","#800000");
LODOP.SET_PRINT_STYLEA(0,"Alignment",3);
LODOP.ADD_PRINT_TEXT(496,480,93,20,"收款单位名称:");
LODOP.SET_PRINT_STYLEA(0,"FontColor","#800000");
LODOP.SET_PRINT_STYLEA(0,"Alignment",3);
LODOP.ADD_PRINT_TEXT(226,703,27,121,"第二联发票联");
LODOP.SET_PRINT_STYLEA(0,"FontColor","#800000");
LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
LODOP.ADD_PRINT_TEXT(203,21,17,195,"京地税准印八九号五百万份");
LODOP.SET_PRINT_STYLEA(0,"FontSize",8);
LODOP.SET_PRINT_STYLEA(0,"FontColor","#800000");
LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
LODOP.ADD_PRINT_TEXT(126,150,100,20,"郭德强");
LODOP.ADD_PRINT_TEXT(151,150,100,20,"13954885188");
LODOP.ADD_PRINT_TEXT(125,584,99,20,"发票打印(第1次)");
LODOP.ADD_PRINT_TEXT(465,140,198,20,"陆百柒拾捌元叁角零分");
LODOP.ADD_PRINT_TEXT(465,599,70,20,"678.30");
LODOP.ADD_PRINT_TEXT(496,408,59,20,"H112063");
LODOP.ADD_PRINT_TEXT(191,58,100,20,"国内漫游通话");
LODOP.ADD_PRINT_TEXT(191,217,100,20,"584.00");
LODOP.ADD_PRINT_TEXT(222,58,100,20,"增值业务费");
LODOP.ADD_PRINT_TEXT(222,217,100,20,"48.30");
LODOP.ADD_PRINT_TEXT(251,58,100,20,"代收费");
LODOP.ADD_PRINT_TEXT(251,217,100,20,"50.00");
LODOP.ADD_PRINT_TEXT(280,58,100,20,"优惠费");
LODOP.ADD_PRINT_TEXT(280,217,100,20,"4.00");
LODOP.ADD_PRINT_TEXT(98,101,150,20,"101081005747319387");
LODOP.ADD_PRINT_TEXT(97,307,150,20,"2008年10月19日 10:28:38");
LODOP.ADD_PRINT_TEXT(152,584,103,20,"138860016786");
LODOP.ADD_PRINT_TEXT(95,571,112,20,"06775516");
LODOP.SET_PRINT_STYLEA(0,"FontName","System");
LODOP.ADD_PRINT_TEXT(76,500,71,20,"发票代码:");
LODOP.SET_PRINT_STYLEA(0,"FontColor","#800000");
LODOP.SET_PRINT_STYLEA(0,"Alignment",3);
LODOP.ADD_PRINT_TEXT(74,571,112,20,"237090742401");
LODOP.SET_PRINT_STYLEA(0,"FontName","System");
LODOP.SET_PRINT_STYLEA(0,"FontColor","#FF0000");
LODOP.ADD_PRINT_TEXT(496,135,183,20,"2008年09月(20080901-20080930)");
LODOP.ADD_PRINT_TEXT(496,572,112,20,"-王府井中心店营");
LODOP.ADD_PRINT_TEXT(311,217,100,20,"678.30");
LODOP.ADD_PRINT_TEXT(311,58,100,20,"费用合计");

};
满页打印和打印页头页尾
function PreviewMytable(){
LODOP=getLodop(document.getElementById('LODOP'),document.getElementById('LODOP_EM'));
LODOP.ADD_PRINT_TABLE(100,5,500,280,document.getElementById("div1").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"TableHeightScope",iRadioValue);
LODOP.PREVIEW();
};
function PrintInFullPage(){
LODOP=getLodop(document.getElementById('LODOP'),document.getElementById('LODOP_EM'));
LODOP.PRINT_INIT("打印控件功能演示_Lodop功能_自定义纸张");
LODOP.SET_PRINT_PAGESIZE(2,0,0,"A4");
LODOP.ADD_PRINT_TABLE("2%","1%","96%","98%",document.getElementById("div1").innerHTML);
LODOP.SET_PREVIEW_WINDOW(0,0,0,800,600,"");
LODOP.PREVIEW();
};

演示使用百分比(%)和满页打印:
var LODOP; //声明为全局变量
function myCreatePage() {
LODOP=getLodop(document.getElementById('LODOP'),document.getElementById('LODOP_EM'));
LODOP.ADD_PRINT_ELLIPSE("0%","0%","100%","50%",0,1);
LODOP.ADD_PRINT_TABLE("50%","0%","100%","50%","<body
leftmargin=0>"+document.getElementById("table02").innerHTML+"</body>");
};
function myPreview() {
myCreatePage();
LODOP.PREVIEW();
};

幅面高度不固定的票据打印
function ReSumMoney() {
var fSumvalue=0;
for (i = 1; i < 8; i++) {
if (document.getElementById("CK"+i).checked) {
fSumvalue=fSumvalue+parseFloat(document.getElementById("DJ"+i).value);
}
}
document.getElementById("HJ").value=fSumvalue.toFixed(2);
};
function MyPreview() {
AddTitle();
var iCurLine=80;//标题行之后的数据从位置80px开始打印
for (i = 1; i < 8; i++) {
if (document.getElementById("CK"+i).checked) {
LODOP.ADD_PRINT_TEXT(iCurLine,15,100,20,document.getElementById("BH"+i).value);
LODOP.ADD_PRINT_TEXT(iCurLine,149,100,20,document.getElementById("MC"+i).value);
LODOP.ADD_PRINT_TEXT(iCurLine,289,100,20,document.getElementById("SL"+i).value);
LODOP.ADD_PRINT_TEXT(iCurLine,409,100,20,document.getElementById("DJ"+i).value);
iCurLine=iCurLine+25;//每行占25px
}
}
LODOP.ADD_PRINT_LINE(iCurLine,14,iCurLine,510,0,1);
LODOP.ADD_PRINT_TEXT(iCurLine+5,20,300,20,"打印时间 :"+(new Date()).toLocaleDateString()+"
"+(new Date()).toLocaleTimeString());
LODOP.ADD_PRINT_TEXT(iCurLine+5,346,150,20," 合 计 金 额 :
"+document.getElementById("HJ").value);
LODOP.SET_PRINT_PAGESIZE(3,1385,45,"");//这里3表示纵向打印且纸高“按内容的高度”;1385表示纸宽
138.5mm;45表示页底空白4.5mm
LODOP.PREVIEW();
};
function AddTitle(){
LODOP=getLodop(document.getElementById('LODOP'),document.getElementById('LODOP_EM'));
LODOP.ADD_PRINT_TEXT(15,102,355,30,"北京市东城区沃乐福商城收款票据");
LODOP.SET_PRINT_STYLEA(1,"FontSize",13);
LODOP.SET_PRINT_STYLEA(1,"Bold",1);
LODOP.ADD_PRINT_TEXT(50,15,100,20,"商品编号");
LODOP.SET_PRINT_STYLEA(2,"FontSize",10);
LODOP.SET_PRINT_STYLEA(2,"Bold",1);
LODOP.ADD_PRINT_TEXT(50,149,100,20,"商品名称");
LODOP.SET_PRINT_STYLEA(3,"FontSize",10);
LODOP.SET_PRINT_STYLEA(3,"Bold",1);
LODOP.ADD_PRINT_TEXT(50,289,100,20,"商品数量");
LODOP.SET_PRINT_STYLEA(4,"FontSize",10);
LODOP.SET_PRINT_STYLEA(4,"Bold",1);
LODOP.ADD_PRINT_TEXT(50,409,100,20,"单价(元)");
LODOP.SET_PRINT_STYLEA(5,"FontSize",10);
LODOP.SET_PRINT_STYLEA(5,"Bold",1);
LODOP.ADD_PRINT_LINE(72,14,73,510,0,1);
};

在页面嵌入背景图片
function myShow4() {
LODOP=getLodop(document.getElementById('LODOP'),document.getElementById('LODOP_EM'));
LODOP.ADD_PRINT_TEXT(43,250,75,20,"东北地区");
LODOP.ADD_PRINT_TEXT(96,173,75,20,"华北地区");
LODOP.ADD_PRINT_TEXT(187,208,60,20,"华南地区");
LODOP.ADD_PRINT_TEXT(137,256,60,20,"华东地区");
LODOP.ADD_PRINT_TEXT(136,176,61,20,"华中地区");
LODOP.ADD_PRINT_TEXT(77,76,60,20,"西北地区");
LODOP.ADD_PRINT_TEXT(172,129,60,20,"西南地区");
LODOP.ADD_PRINT_LINE(97,224,57,284,0,1);
LODOP.ADD_PRINT_LINE(89,118,107,177,0,1);
LODOP.ADD_PRINT_LINE(169,152,152,213,0,1);
LODOP.ADD_PRINT_LINE(117,195,134,201,0,1);
LODOP.ADD_PRINT_LINE(163,231,190,239,0,1);
LODOP.ADD_PRINT_LINE(147,234,148,253,0,1);
LODOP.ADD_PRINT_TEXT(94,395,24,97,"地区方位图");

LODOP.ADD_PRINT_SETUP_BKIMG("<img border='0'
src='http://static13.photo.sina.com.cn/middle/4fe4ba17x873a8d10515c&690'>");
LODOP.SET_SHOW_MODE("BKIMG_IN_PREVIEW",1); // 注 : "BKIMG_IN_PREVIEW"- 预 览 包 含 背 景 图
"BKIMG_IN_FIRSTPAGE"- 仅首页包含背景图
LODOP.PREVIEW();
};

强制分页
function MyPreview() {
LODOP=getLodop(document.getElementById('LODOP'),document.getElementById('LODOP_EM'));
LODOP.SET_PRINT_PAGESIZE(1,500,508,"");
for (i = 1; i < 8; i++) {
LODOP.NewPage();
LODOP.ADD_PRINT_RECT(10,18,128,160,0,1);
LODOP.ADD_PRINT_TEXT(31,33,111,20,"商品编号:"+document.getElementById("BH"+i).value);
LODOP.ADD_PRINT_TEXT(69,33,111,20,"商品名称:"+document.getElementById("MC"+i).value);
LODOP.ADD_PRINT_TEXT(107,33,111,20,"商品数量:"+document.getElementById("SL"+i).value);
LODOP.ADD_PRINT_TEXT(146,33,111,20,"商品单价:"+document.getElementById("DJ"+i).value);
LODOP.PREVIEW();
}
};

分页打印综合表格
function PreviewMytable(){
LODOP=getLodop(document.getElementById('LODOP'),document.getElementById('LODOP_EM'));
LODOP.ADD_PRINT_TABLE(128,"5%","90%",314,document.getElementById("div2").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"Vorient",3);
LODOP.ADD_PRINT_HTM(20,"5%","90%",109,document.getElementById("div1").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"ItemType",1);
LODOP.SET_PRINT_STYLEA(0,"LinkedItem",1);
LODOP.ADD_PRINT_HTM(444,"5%","90%",54,document.getElementById("div3").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"ItemType",1);
LODOP.SET_PRINT_STYLEA(0,"LinkedItem",1);
LODOP.NewPageA();
LODOP.ADD_PRINT_TABLE(112,"5%","90%",328,document.getElementById("div2").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"Vorient",3);
LODOP.ADD_PRINT_HTM(26,"5%","90%",80,document.getElementById("div4").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"ItemType",1);
LODOP.SET_PRINT_STYLEA(0,"LinkedItem",4);
LODOP.ADD_PRINT_TEXT(454,96,"76.25%",20,"( “页脚”,紧跟表格)");
LODOP.SET_PRINT_STYLEA(0,"LinkedItem",4);
LODOP.SET_PRINT_STYLEA(0,"FontSize",12);
LODOP.SET_PRINT_STYLEA(0,"FontColor","#FF0000");
LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
LODOP.SET_PRINT_STYLEA(0,"ItemType",1);
LODOP.SET_PRINT_STYLEA(0,"Horient",3);
LODOP.ADD_PRINT_TEXT(3,653,135,20,"总页号:第#页/共&页");
LODOP.SET_PRINT_STYLEA(0,"ItemType",2);
LODOP.SET_PRINT_STYLEA(0,"Horient",1);
LODOP.ADD_PRINT_TEXT(3,34,196,20,"总页眉:《两个发货单的演示》");
LODOP.SET_PRINT_STYLEA(0,"ItemType",1);
LODOP.PREVIEW();
};

演示如何分页输出页面内容:
var LODOP; //声明为全局变量
function prn1_preview() {
LODOP=getLodop(document.getElementById('LODOP'),document.getElementById('LODOP_EM'));
LODOP.ADD_PRINT_HTM(88,200,350,600,document.getElementById("div1").innerHTML);
LODOP.NewPage();
LODOP.ADD_PRINT_HTM(88,200,350,600,document.getElementById("div2").innerHTML);
LODOP.NewPage();
LODOP.ADD_PRINT_HTM(88,200,350,600,document.getElementById("div3").innerHTML);
LODOP.PREVIEW();
};
function prn2_preview() {
LODOP=getLodop(document.getElementById('LODOP'),document.getElementById('LODOP_EM'));
strHTML="<table border='0' width='100%' >";
strHTML=strHTML+"<tr><td>";
strHTML=strHTML+document.getElementById("div1").innerHTML;
strHTML=strHTML+"</td></tr>";
strHTML=strHTML+"<tr><td>";
strHTML=strHTML+document.getElementById("div2").innerHTML;
strHTML=strHTML+"</td></tr>";
strHTML=strHTML+"<tr><td>";
strHTML=strHTML+document.getElementById("div3").innerHTML;
strHTML=strHTML+"</td></tr>";
LODOP.ADD_PRINT_TABLE(88,200,350,1,strHTML);
LODOP.PREVIEW();
};
function prn3_preview() {
LODOP=getLodop(document.getElementById('LODOP'),document.getElementById('LODOP_EM'));
LODOP.ADD_PRINT_HTM(88,150,450,"100%",document.getElementById("div1_2_3").innerHTML);
LODOP.PREVIEW();
};

演示内容关联后按顺序打印:
LODOP.ADD_PRINT_TABLE(100,5,500,280,document.getElementById("tablediv").innerHTML);
LODOP.ADD_PRINT_TABLE(26,0,500,280,document.getElementById("tablediv").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"LinkedItem",1);
LODOP.ADD_PRINT_TEXT(15,50,200,25,"制表日期:"+LODOP.FORMAT("TIME:YYYY年MM月DD日","DATE"));
LODOP.SET_PRINT_STYLEA(0,"LinkedItem",2);
LODOP.ADD_PRINT_TEXT(15,300,200,25,"双表输出:Admin");
LODOP.SET_PRINT_STYLEA(0,"LinkedItem",2);
LODOP.ADD_PRINT_TABLE(100,5,500,280,document.getElementById("tablediv").innerHTML);
LODOP.ADD_PRINT_TEXT(15,50,200,25,"制表日期:"+LODOP.FORMAT("TIME:YYYY年MM月DD日","DATE"));
LODOP.SET_PRINT_STYLEA(0,"LinkedItem",1);
LODOP.ADD_PRINT_TEXT(15,300,200,25,"单表制表:guest");
LODOP.SET_PRINT_STYLEA(0,"LinkedItem",1);

超多页打印演示:
function MyPREVIEW() {
LODOP=getLodop(document.getElementById('LODOP'),document.getElementById('LODOP_EM'));
LODOP.PRINT_INIT("中文学位证书打印");
LODOP.SET_PRINT_PAGESIZE(1,2970,2100,"");
LODOP.SET_PRINT_STYLE("FontSize",16);
LODOP.SET_PRINT_STYLE("Bold",1);
for (j = 1; j <=10; j++) {
CreateOnePage("姓名"+j,"男",j);
};
LODOP.SET_PREVIEW_WINDOW(0,0,0,0,0,"");
LODOP.PREVIEW();
};
function CreateOnePage(XM,XB,BH){
LODOP.NewPage();
LODOP.ADD_PRINT_TEXTA("text01",67,132,137,35,XM);
LODOP.SET_PRINT_STYLEA(0,"Alignment",3);
LODOP.ADD_PRINT_TEXTA("text02",67,280,40,35,XB);
LODOP.ADD_PRINT_TEXTA("text03",67,329,70,35,"1979");
LODOP.SET_PRINT_STYLEA(0,"Alignment",3);
LODOP.ADD_PRINT_TEXTA("text04",67,421,50,35,"09");
LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
LODOP.ADD_PRINT_TEXTA("text05",67,489,40,35,"09");
LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
LODOP.ADD_PRINT_TEXTA("text06",223,220,76,35,"理学");
LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
LODOP.ADD_PRINT_TEXTA("text07",121,130,332,35,"应用物理与微电子技术");
LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
LODOP.ADD_PRINT_TEXTA("text08",271,482,34,35,"校");
LODOP.ADD_PRINT_TEXTA("text09",271,616,32,35,"长");
LODOP.SET_PRINT_STYLEA(0,"Alignment",3);
LODOP.ADD_PRINT_TEXTA("text10",300,131,289,35,"合肥工业大学");
LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
LODOP.ADD_PRINT_TEXTA("text11",364,210,261,35,"103700002009000"+BH);
LODOP.ADD_PRINT_TEXTA("text12",365,753,66,35,"2009");
LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
LODOP.ADD_PRINT_TEXTA("text13",365,843,37,35,"12");
LODOP.ADD_PRINT_TEXTA("text14",365,911,54,35,"31");
LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
};

演示打印 Table 的分页小计和合计:


利用专为函数 ADD_PRINT_TABLE 使用的特殊超文本元素属性可以轻松实现分页小
计、累计、分类统计、页数及总合计等功能,
该属性有 tdata、format、tclass、tindex 四个,可以用在 table 内任何元素上,如
果元素在 tfoot 内则每页都输出。
这些属性的解释和演示如下:

一、设置统计类型的元素属性名是“tdata”,其值和含义为:
subCount---本页行数,即本列的单元格行数;
subSum---本页合计,即本列的数值合计;
subAverage---本页平均数,即本页合计除以本页行数;
Count---累计行数,即从第一页到本页的行数累加值;
Sum---累计数,即从第一页到本页的本列数值的累加值;
Average---累计平均数,即累计数除以累计行数;
allCount---总行数,即全表(Table)的本列行数;
allSum---总计数,即全表(Table)的本列数值的总和;
allAverage---总平均数,即全表总计数除以总行数;
二、设置数据格式的元素属性名是“format”,format 值如下样式:
“0” “0.00” “#.##”
“#,##0.00”“0.000E+00”“#.###E-0 ”“UpperMoney(大写金额)”等等...
三、分类统计的“类名”用元素属性“tclass”,tclass 值任意设置,参见本演示
的“A 型”“B 型”个数统计。
四、一般要求统计结果的位置与数据的列位置一致或内含在数据列内,如果位置无
法一致,
可以用“tindex”指定对应的数据列,该值是数字型的列序号,从 1 起始,参见本
演示的“B 型”统计。
五、统计结果的占位符是任意个“#”组成的字符串,当结果值较大时,注意占位符要足够多,除非周围有空
白区

<tr>
<td width="481" colspan="2">本表截止当前行累积金额:
</td>
<td width="657" colspan="3"><font color="#0000FF" tdata="Sum" format="#,##0.00"
tindex="3" >######</font>
</td>
</tr>

<tr>
<td width="374" colspan="2">截止表尾累积金额
</td>
<td width="202"><font color="#0000FF" tdata="Sum" format="#,##0.00" tindex="3" >######</font>
</td>
<td width="363" colspan="2"><font color="#0000FF" tdata="Sum" format="UpperMoney"
tindex="3" >######</font>
</td>
</tr>
<tfoot>
<tr>
<th width="20%" tdata="subCount" format="#" align="left"> 本 页 行 数 : <font
color="#0000FF">######</font></th>
<th width="26%" tdata="subSum" format="#.##">本页数量小计:<font color="#0000FF">######</font></th>
<th width="14%" align="right">本页金额小计</th>
<th width="19%" tdata="subSum" format="#,##0.00" align="right"><font color="#0000FF">### 元
</font></th>
<th width="21%" tdata="subAverage" format="#.00" align="left"> 本 页 均 价 : <font
color="#0000FF">######</font></th>
</tr>
<tr>
<th width="20%" tdata="Count" format="#" align="left"> 累 计 行 数 : <font
color="#0000FF">######</font></th>
<th width="26%" tdata="Sum" format="#.##">数量累计:<font color="#0000FF">######</font></th>
<th width="14%" align="right">金额累计</th>
<th width="19%" tdata="Sum" format="#,##0.00" align="right"><font color="#0000FF">
¥###</font></th>
<th width="21%" tdata="Average" format="#.00" align="left"> 累 计 均 价 : <font
color="#0000FF">######</font></th>
</tr>
<tr>
<th width="20%" tdata="allCount" format="#" align="left"> 全 表 行 数 : <font
color="#0000FF">######</font></th>
<th width="26%" tdata="allSum" format="#.##">全表数量总计:<font color="#0000FF">######</font></th>
<th width="14%" align="right">全表金额总计</th>
<th width="19%" tdata="allSum" format="#,##0.00" align="right"><font color="#0000FF">
¥###</font></th>
<th width="21%" tdata="allAverage" format="#.00" align="left"> 全 表 均 价 : <font
color="#0000FF">######</font></th>
</tr>
<tr>
<th width="22%" tdata="subCount" format="0" align="left" colspan="2">
本页A型:<font color="#0000FF" tclass="a">##</font>行,B型:
<font color="#0000FF" tclass="b" tindex="1">##</font>行
</th>
<th width="12%" tdata="pageNO" format="#" align="left" colspan="2">
<p align="center">第<font color="#0000FF">#</font>页</p>
</th>
<th width="10%" tdata="pageCount" format="#" align="left">
<p align="center">总<font color="#0000FF">#</font>页
</th>
</tr>
</tfoot>
如何打印条形码:
function CreatePrintPage() {
LODOP=getLodop(document.getElementById('LODOP'),document.getElementById('LODOP_EM'));
LODOP.PRINT_INITA(0,0,800,1600,"打印控件功能演示_Lodop功能_打印条码");
LODOP.ADD_PRINT_BARCODE(28,34,307,47,"128A","123456789012");
LODOP.ADD_PRINT_BARCODE(84,34,342,78,"128B","123456789012");
LODOP.SET_PRINT_STYLEA(0,"FontSize",20);
LODOP.ADD_PRINT_BARCODE(176,34,199,58,"128C","888888");
LODOP.SET_PRINT_STYLEA(0,"Color",255);
LODOP.ADD_PRINT_BARCODE(237,34,153,54,"EAN8","69012341");
LODOP.ADD_PRINT_BARCODE(296,34,360,47,"EAN13","6901234567892");
LODOP.ADD_PRINT_BARCODE(351,34,360,36,"EAN128A","123456789012");
LODOP.SET_PRINT_STYLEA(0,"ShowBarText",0);
LODOP.ADD_PRINT_BARCODE(403,34,360,47,"EAN128B","123456789012");
LODOP.ADD_PRINT_BARCODE(462,34,360,47,"EAN128C","123456789012");
LODOP.ADD_PRINT_BARCODE(513,34,360,47,"Code39","*123ABC4567890*");
LODOP.SET_PRINT_STYLEA(0,"Color",16711680);
LODOP.ADD_PRINT_BARCODE(570,34,360,47,"39Extended","*1234567890*");
LODOP.ADD_PRINT_BARCODE(621,34,360,47,"2_5interleaved","123456789012");
LODOP.ADD_PRINT_BARCODE(677,34,360,47,"2_5industrial","123456789012");
LODOP.ADD_PRINT_BARCODE(729,34,360,47,"2_5matrix","123456789012");
LODOP.SET_PRINT_STYLEA(0,"Color",8421440);
LODOP.ADD_PRINT_BARCODE(787,34,360,47,"UPC_A","089600124569");
LODOP.ADD_PRINT_BARCODE(844,34,135,64,"UPC_E0","08960007");
LODOP.ADD_PRINT_BARCODE(238,426,104,62,"UPC_E1","1111111");
LODOP.SET_PRINT_STYLEA(0,"Angle",90);
LODOP.ADD_PRINT_BARCODE(209,560,62,57,"UPCsupp2","123456789012");
LODOP.SET_PRINT_STYLEA(0,"Angle",90);
LODOP.ADD_PRINT_BARCODE(374,434,119,59,"UPCsupp5","123456789012");
LODOP.SET_PRINT_STYLEA(0,"Angle",90);
LODOP.ADD_PRINT_BARCODE(370,559,44,63,"Code93","BJ100080");
LODOP.SET_PRINT_STYLEA(0,"Angle",90);
LODOP.ADD_PRINT_BARCODE(241,663,73,59,"93Extended","123456789012");
LODOP.SET_PRINT_STYLEA(0,"Angle",-90);
LODOP.ADD_PRINT_BARCODE(693,424,49,79,"MSI","123456789012");
LODOP.SET_PRINT_STYLEA(0,"Color",16711935);
LODOP.SET_PRINT_STYLEA(0,"ShowBarText",0);
LODOP.SET_PRINT_STYLEA(0,"Angle",90);
LODOP.ADD_PRINT_BARCODE(749,559,44,68,"PostNet","123456789012");
LODOP.SET_PRINT_STYLEA(0,"Angle",90);
LODOP.ADD_PRINT_BARCODE(572,659,44,73,"Codabar","123456789012");
LODOP.SET_PRINT_STYLEA(0,"Angle",-90);
LODOP.ADD_PRINT_BARCODE(30,423,116,114,"QRCode","123123123版本3的最大值是42个字符");
LODOP.SET_PRINT_STYLEA(0,"QRCodeVersion",3);
LODOP.ADD_PRINT_BARCODE(31,587,168,146,"QRCode","1234567890版本7的最大值是122个字符
123123");
LODOP.SET_PRINT_STYLEA(0,"GroundColor",16744448);
LODOP.SET_PRINT_STYLEA(0,"QRCodeVersion",7);
};
单据打印
printDj:function(){
DjglProcess.lodop=getLodop(document.getElementById('LODOP'),document.
getElementById('LODOP_EM'));
var strBodyStyle="<style>" +
" .title_print { border-style: solid; border-width: 0 0 1 0; font-size:
24px; font-family: 仿宋, 黑体; font-weight: BOLD;}" +
".text_print{ border-style: solid; border-width: 0 0 0 0;
font-family: 楷体_GB2312; font-size: 14px; }" +
".head_print{ border-style: solid; border-width: 0 0 0 0;
font-family: 宋体; font-size: 14px; }" +
".text2_print { font-size: 14px; font-family: 宋体; }" +
".num_print {border-style: solid; border-width: 0 0 0 0; text-align:
right; ime-mode: disabled; width: 100%; font-size:
14px; }" +
" .trHeight_print{ height:32px; } </style>";
strFormHtml=strBodyStyle+"<body>"+document.getElementById("_print").
innerHTML+"</body>";
DjglProcess.lodop.add_print_htm(10,60,840,700,strFormHtml);
//DjglProcess.lodop.PRINTA(); //选择打印机打印
DjglProcess.lodop.PREVIEW(); //预览打印
//DjglProcess.lodop.PRINT(); //直接打印
},
入库单列表打印
<script type="text/javascript">
function prn_Preview() {
CreatePrintPage();
LODOP.PREVIEW(); //打印预览
//LODOP.PRINT_SETUP(); //打印维护
//LODOP.PRINT_DESIGN(); //打印设计
};
function CreatePrintPage() {
LODOP=getLodop(document.getElementById('LODOP'),document.getElementById('LODOP_E
M'));
LODOP.PRINT_INITA(0,0,800,1600,"打印控件功能演示_Ext");
AddText();
LODOP.ADD_PRINT_TEXT(3,653,135,20,"总页号:第#页/共&页");
LODOP.SET_PRINT_STYLEA(0,"FontSize",11);
LODOP.SET_PRINT_STYLEA(0,"ItemType",2);
LODOP.SET_PRINT_STYLEA(0,"Horient",1);
LODOP.ADD_PRINT_TEXT(3,34,196,20,"总页眉:《入库单的演示》");
LODOP.SET_PRINT_STYLEA(0,"FontSize",11);
LODOP.SET_PRINT_STYLEA(0,"ItemType",1);
}
function AddText(){
LODOP.ADD_PRINT_TEXT(25,382,355,30,dj_grid.title);
LODOP.SET_PRINT_STYLEA(1,"FontSize",16);
LODOP.SET_PRINT_STYLEA(1,"Bold",1);
//设置表格样式
var strTableStyle="<style type='text/css'>table{width:'100%';border-collapse: collapse;} table
thead td b{font-size: 25px;} table tr td{font-size: 13px;} table tfoot td{font-size: 15px;}</style>";
//将数据拼成一个 table
var strTableStartHtml="<table border='1' width='100%' bordercolor='#336699' cellpadding='0'
cellspacing='0' align='center'>";
var strTableEndHtml="</table>";
var strTableTheadHtml="<thead style='height: 30px' bgcolor='#efefef'>";
var strTableTrHtml="";
for(var i=0;i<dj_grid.getColumnModel().getColumnCount(true);i++){
var td="<td nowrap align='center' style=font-size:
15px><b>"+dj_grid.getColumnModel().getColumnHeader(i)+"</b></td>";
strTableTheadHtml+=td;
}
strTableTheadHtml+="<td nowrap align='center'><b>条形码</b></td>";
strTableTheadHtml+="</thead>";
var zjeTotal=0;
for(var i=0;i<dj_grid.getStore().getCount();i++){
var td ="<tr style='height: 30px'><td align='center'>";
td+=dj_grid.getStore().getAt(i).get("djh");
td+="</td><td align='center'>";
td+=Ext.util.Format.date(dj_grid.getStore().getAt(i).get("djrq"),'Y 年 m 月 d 日');
td+="</td><td align='center'>";
td+=dj_grid.getStore().getAt(i).get("ghsmc");
td+="</td><td align='right'>";
var zje=dj_grid.getStore().getAt(i).get("zje");
zjeTotal+=parseFloat(zje);
td+=Ext.util.Format.number(zje,'0,0.00');
td+="&nbsp;&nbsp;</td><td align='center'>";
td+=dj_grid.getStore().getAt(i).get("djzt");
td+="</td><td align='center'>";
td+="</td></tr>";
strTableTrHtml+=td;
}
var strTableTfoot="<tr style='height: 30px'><td align='center'><b> 合 计
</b></td><td>&nbsp;</td><td>&nbsp;</td><td
align='right'><b>"+Ext.util.Format.number(zjeTotal,'0,0.00')+"</b>&nbsp;&nbsp;&nbsp;&nbsp;&nb
sp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>";
var strPageFooter="<tfoot style='height: 30px'><td align='center'><b><表格页脚>本页动态合
计 </b></td><td tdata='pageNO' format='#' align='center'><p align='center'><b> 第 <font
color='#0000FF'>#</font> 页 </b></p></td><td tdata='pageCount' format='#' align='center'><p
align='center'><b> 总 <font color='#0000FF'>#</font> 页 </b></td><td tdata='subSum'
format='#,##0.00' align='left'><font
color='#0000FF'>#</font></b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td><td>&nbsp;</td><td>&nbsp;
</td></tfoot>";
LODOP.ADD_PRINT_HTM(50,0,800,1000,strTableStyle);
LODOP.ADD_PRINT_TABLE(75,0,"100%","85%",strTableStartHtml+strTableTheadHtml+strT
ableTrHtml+strPageFooter+strTableEndHtml);
var j=81;
for(var i=0;i<dj_grid.getStore().getCount();i++){
j=j+30;

LODOP.ADD_PRINT_BARCODE(j,734,37,22,"128A",dj_grid.getStore().getAt(i).get("djh"));
if(j%1011==0){j=81;LODOP.NewPage();}
}
};

You might also like