lodoop打印控件详解

简介:
[java]  view plain  copy
 
  1. 注意:使用此打印控件需要引入(在我上传的Demo中都有):  
  2.     install_lodop32.exe  
  3.     install_lodop64.exe  
  4.     LodopFuncs.js  
  5.     jquery-1.10.0.min.js  
  6.   
  7. 具体Demo下载地址: http://download.csdn.net/download/l294333475/7697807  
 
[java]  view plain  copy
 
  1. <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>  
  2. <%  
  3. String path = request.getContextPath();  
  4. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  
  5. %>  
  6. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
  7. <html>  
  8.   <head>  
  9.     <base href="<%=basePath%>">  
  10.     <title>My JSP 'TestLodoop.jsp' starting page</title>  
  11.     <meta http-equiv="pragma" content="no-cache">  
  12.     <meta http-equiv="cache-control" content="no-cache">  
  13.     <meta http-equiv="expires" content="0">      
  14.     <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">  
  15.     <meta http-equiv="description" content="This is my page">  
  16.       
  17.   
  18.   
  19.     <script language="javascript" src="<%=basePath%>lodop/LodopFuncs.js"></script>  
  20.     <script src="<%=basePath%>js/jquery-1.10.0.min.js"></script>  
  21.     <object  id="LODOP_OB" classid="clsid:2105C259-1E0C-4534-8141-A753534CB4CA" width=0 height=0>   
  22.            <embed id="LODOP_EM" type="application/x-print-lodop" width=0 height=0></embed>  
  23.     </object>  
  24.       
  25.     <script language="javascript">  
  26.         var LODOP=getLodop(document.getElementById('LODOP_OB'),document.getElementById('LODOP_EM'),"<%=basePath%>lodop/");  
  27.         $(document).ready(function(){  
  28.             if(LODOP == null || (typeof(LODOP.VERSION)=="undefined")){  
  29.                 $("#btnPrintView").attr("disabled","disabled");  
  30.                 $("#btnPrint").attr("disabled","disabled");  
  31.                 $("#btnNext").attr("disabled","disabled");  
  32.             }  
  33.             else{  
  34.                 CreatePrinterList();  
  35.             }  
  36.         });  
  37.           
  38.         //打印  
  39.         function print(){  
  40.             document.getElementById("showInstall").innerHTML = "";  
  41.             Create();  
  42.             //LODOP.SET_PRINT_COPIES(2);  
  43.             LODOP.SET_PRINT_MODE("CATCH_PRINT_STATUS",true);  
  44.             var code = LODOP.PRINTA();  
  45.             alert(code);  
  46.             var ret = LODOP.GET_VALUE("PRINT_STATUS_OK",code);  
  47.             alert(ret);  
  48.             if(ret){  
  49.                 $("#btnNext").attr("disabled","none");  
  50.             }  
  51.             else{  
  52.                 document.getElementById("showInstall").innerHTML = "<font color='#FF00FF'>打印失败</font>";  
  53.             }  
  54.         }         
  55.           
  56.           
  57.         //加载打印机  
  58.         function CreatePrinterList(){  
  59.             if (document.getElementById('PrinterList').innerHTML!="") return;  
  60.             LODOP=getLodop();   
  61.             var iPrinterCount=LODOP.GET_PRINTER_COUNT();  
  62.             for(var i=0;i<iPrinterCount;i++){  
  63.       
  64.                 var option=document.createElement('option');  
  65.                 option.innerHTML=LODOP.GET_PRINTER_NAME(i);  
  66.                 option.value=i;  
  67.                 document.getElementById('PrinterList').appendChild(option);  
  68.             };    
  69.         };  
  70.           
  71.         //打印预览  
  72.         function preview() {  
  73.             Create();  
  74.             LODOP.SET_PREVIEW_WINDOW(1,0,0,0,0,"");  
  75.             LODOP.PREVIEW();  
  76.         };  
  77.           
  78.         function Create(){  
  79.             LODOP.PRINT_INIT("");     
  80.             LODOP.SET_PRINT_MODE("WINDOW_DEFPRINTER",getSelectedPrintIndex());//设置打印机  
  81.             LODOP.SET_PRINT_MODE("WINDOW_DEFPAGESIZE:"+getSelectedPrintIndex(),"A4");//设置打印纸张为A4  
  82.               
  83.             LODOP.ADD_PRINT_HTM(10,30,700,1080,document.getElementById("tRequest").innerHTML);  
  84.               
  85.             LODOP.NewPage();                              
  86.             CreateDataBill();  
  87.               
  88.             LODOP.NewPage();              
  89.             CreateDataSeal();  
  90.               
  91.             LODOP.NewPage();  
  92.             LODOP.ADD_PRINT_HTM(30,30,700,1080,document.getElementById("tDeal").innerHTML);  
  93.         }  
  94.           
  95.         //选择打印机  
  96.         function getSelectedPrintIndex(){  
  97.             return document.getElementById("PrinterList").value;  
  98.         };  
  99.           
  100.         //法人代表授权书  
  101.         function CreateDataBill() {  
  102.           
  103.             LODOP.ADD_PRINT_TEXT(97,220,500,20,"法人代表授权书");  
  104.             LODOP.SET_PRINT_STYLEA(0,"FontSize",30);  
  105.             LODOP.SET_PRINT_STYLE("FontSize",14);  
  106.             LODOP.ADD_PRINT_TEXT(190,150,300,20,"本授权书声明:总部设在(地址)");  
  107.             LODOP.ADD_PRINT_LINE(205,420, 205, 600,0, 1);  
  108.             LODOP.ADD_PRINT_TEXT(190,600,150,20,",(公司名称)");  
  109.               
  110.             LODOP.ADD_PRINT_LINE(255,100, 255, 250,0, 1);             
  111.             LODOP.ADD_PRINT_TEXT(240,250,200,20,"公司(法人代表)");  
  112.             LODOP.ADD_PRINT_LINE(255,400, 255, 500,0, 1);  
  113.             LODOP.ADD_PRINT_TEXT(240,500,250,20,"(即下面签字的授权人),");  
  114.               
  115.             LODOP.ADD_PRINT_TEXT(290,100,300,20,"代表本公司授权(被授权人)");  
  116.             LODOP.ADD_PRINT_LINE(315,350, 315, 450,0, 1);  
  117.             LODOP.ADD_PRINT_TEXT(290,450,400,20,"(即下面签字的被授权人)");  
  118.             LODOP.ADD_PRINT_TEXT(340,100,600,20,"为本公司合法代理人,到贵方办理CFCA数字证书相关事宜。");  
  119.               
  120.             LODOP.ADD_PRINT_TEXT(420,150,550,20,"本公司承认该代表所签署文件及提交公司文件的法律效力。");  
  121.               
  122.             LODOP.ADD_PRINT_TEXT(500,100,100,20,"被授权人:");  
  123.             LODOP.ADD_PRINT_TEXT(500,400,100,20,"授权人:");  
  124.             LODOP.ADD_PRINT_TEXT(600,100,200,20,"填写公司名称(公章)");  
  125.             LODOP.ADD_PRINT_TEXT(650,100,200,20,"日期");  
  126.               
  127.         };  
  128.           
  129.         //印章采集页  
  130.         function CreateDataSeal(){  
  131.             LODOP.ADD_PRINT_TEXT(97,250,500,20,"印章采集");  
  132.             LODOP.SET_PRINT_STYLEA(0,"FontSize",30);  
  133.             LODOP.SET_PRINT_STYLE("FontSize",14);  
  134.             LODOP.ADD_PRINT_TEXT(190,100,550,20,"此印章仅用于办理中国大唐集团公司集采平台电子钥匙使用。");  
  135.             LODOP.ADD_PRINT_TEXT(240,100,550,20,"请将公章/合同专用章加盖在以下方框内。");  
  136.             LODOP.ADD_PRINT_RECT(290, 200, 200, 200,0, 1);  
  137.             LODOP.ADD_PRINT_TEXT(540,100,650,20,"此法人签字/印章仅用于办理中国大唐集团公司集采平台电子钥匙使用。");  
  138.             LODOP.ADD_PRINT_TEXT(590,100,650,20,"请将法人签字写在以下方框内,或者将法人印章加盖在以下方框内。");  
  139.             LODOP.ADD_PRINT_RECT(640, 200, 200, 200,0, 1);  
  140.         }  
  141.     </script>  
  142.       
  143.       
  144.   </head>  
  145.   <body>  
  146.   <!-- 以下为设置打印内容 -->  
  147.    <div>  
  148.         <p class="text1"><span>指定打印机:<select id="PrinterList" size="1"></select></span></p>  
  149.         <p class="text1"><span>指定纸张:A4</span></p>  
  150.         <p>  
  151.         <button id="btnPrintView" onclick="preview();">在线预览</button>  
  152.         <button id="btnPrint" onclick="print();">在线打印</button>  
  153.         </p>  
  154.         <p><div id="showInstall"></div></p>  
  155.     </div>  
  156.       
  157.     <button id="btnNext" onClick="javascript:window.location.href='<%=basePath%>supplier/send.do'">下一步</button>  
  158.       
  159.       
  160.       
  161.     <!-- 以下为具体需要打印的内容 -->  
  162.     <div id ="tRequest" style="display:none;">  
  163.     <p style="margin:0px;text-align:center;font-size:30px;">企业证书申请表<img src="01.jpg" /></p>  
  164.       <table style="border-collapse:collapse;width:700px;">  
  165.         <tr>  
  166.             <td style="width:30px"></td>  
  167.             <td style="width:70px"></td>  
  168.             <td style="width:150px"></td>  
  169.             <td style="width:100px"></td>  
  170.             <td style="width:100px"></td>  
  171.             <td style="width:100px"></td>  
  172.             <td style="width:150px"></td>  
  173.         </tr>  
  174.         <tr>  
  175.             <td colspan="2" style="width:100px;border: 1px solid #000;height:50px;">申请日期</td>  
  176.             <td colspan="2" style="width:200px;border: 1px solid #000;">2014-07-31</td>  
  177.             <td style="width:100px;border: 1px solid #000;">证书数量</td>  
  178.             <td colspan="2" style="width:290px;border: 1px solid #000;">2</td>  
  179.         </tr>  
  180.         <tr>  
  181.             <td colspan="2" style="border: 1px solid #000;height:50px;">证书种类</td>  
  182.             <td colspan="5" style="border: 1px solid #000;">  
  183.                 <input type="checkbox" />高级证书<input type="checkbox" checked/>普通证书<input type="checkbox" />Direct Server证书  
  184.                 <input type="checkbox" />Web Server证书  
  185.                 <input type="checkbox" />安全E-mail证书<input type="checkbox" />CodeSigning证书<input type="checkbox" />其它种类证书  
  186.             </td>  
  187.         </tr>  
  188.         <tr>  
  189.             <td colspan="2" style="border: 1px solid #000;height:25px;">所属系统</td>  
  190.             <td colspan="5" style="border: 1px solid #000;">  
  191.                 <input type="checkbox" />E-01<input type="checkbox" checked/>J-01  
  192.             </td>  
  193.         </tr>  
  194.                   
  195.           
  196.         <tr>  
  197.             <td style="width:30px;text-align:center;vertical-align:middle;border: 1px solid #000;" rowspan="10">企业信息</td>  
  198.           
  199.             <td colspan="2" style="border: 1px solid #000;height:25px;width:150px;">中文名称</td>  
  200.             <td colspan="4" style="border: 1px solid #000;">南京优泰科技发展有限公司</td>  
  201.         </tr>  
  202.         <tr>  
  203.             <td colspan="2" style="border: 1px solid #000;height:25px;">英文/拼音简称</td>  
  204.             <td colspan="4" style="border: 1px solid #000;">utc</td>  
  205.         </tr>  
  206.         <tr>  
  207.             <td colspan="2" style="border: 1px solid #000;height:25px;">WEB域名</td>  
  208.             <td colspan="4" style="border: 1px solid #000;">www.utcsoft.com(仅限于服务器证书)</td>  
  209.         </tr>  
  210.         <tr>  
  211.             <td colspan="2" style="border: 1px solid #000;height:25px;">证件类型</td>  
  212.             <td colspan="4" style="border: 1px solid #000;">  
  213.                 <input class="myradio" type="checkbox" name="radioCardType" value="zzjg">组织机构代码证  
  214.                 <input class="myradio" type="checkbox" name="radioCardType" value="yyzz">企业营业执照  
  215.                 <input class="myradio" type="checkbox" name="radioCardType" value="qt">其他  
  216.             </td>  
  217.         </tr>  
  218.         <tr>  
  219.             <td colspan="2" style="border: 1px solid #000;height:25px;">证件号码</td>  
  220.             <td colspan="4" style="border: 1px solid #000;">1111</td>  
  221.         </tr>  
  222.         <tr>  
  223.             <td colspan="2" style="border: 1px solid #000;height:25px;">主管领导(签名)</td>  
  224.             <td colspan="3" style="border: 1px solid #000;"></td>  
  225.             <td rowspan="5" style="width:150px;border: 1px solid #000;vertical-align:bottom;">(单位盖章)</td>  
  226.         </tr>  
  227.         <tr>  
  228.             <td colspan="2" style="border: 1px solid #000;height:25px;">单位地址</td>  
  229.             <td colspan="3" style="border: 1px solid #000;">1111</td>  
  230.         </tr>  
  231.         <tr>  
  232.             <td colspan="2" style="border: 1px solid #000;height:25px;">省(市)</td>  
  233.             <td colspan="3" style="border: 1px solid #000;">1111</td>  
  234.         </tr>  
  235.         <tr>  
  236.             <td colspan="2" style="border: 1px solid #000;height:25px;">电话</td>  
  237.             <td colspan="3" style="border: 1px solid #000;">1111</td>  
  238.         </tr>  
  239.         <tr>  
  240.             <td colspan="2" style="border: 1px solid #000;height:25px;">传真</td>  
  241.             <td colspan="3" style="border: 1px solid #000;">1111</td>  
  242.         </tr>  
  243.         <tr>  
  244.             <td style="width:30px;text-align:center;vertical-align:middle;border: 1px solid #000;" rowspan="8">办理人信息</td>  
  245.           
  246.             <td colspan="2" style="border: 1px solid #000;height:25px;">姓名(签名)</td>  
  247.             <td colspan="4" style="border: 1px solid #000;">刘鹏</td>  
  248.         </tr>  
  249.         <tr>  
  250.             <td colspan="2" style="border: 1px solid #000;height:25px;">证件类型</td>  
  251.             <td colspan="4" style="border: 1px solid #000;">  
  252.                 <input type="checkbox" checked/>身份证<input type="checkbox" />军官证<input type="checkbox" />港澳通行证  
  253.                 <input type="checkbox" />护照<input type="checkbox" />其他  
  254.             </td>  
  255.         </tr>  
  256.         <tr>  
  257.             <td colspan="2" style="border: 1px solid #000;height:25px;">证件号码</td>  
  258.             <td colspan="4" style="border: 1px solid #000;">${agent.agentCardNum}</td>  
  259.         </tr>  
  260.         <tr>  
  261.             <td colspan="2" style="border: 1px solid #000;height:25px;">电话</td>  
  262.             <td colspan="4" style="border: 1px solid #000;">1111</td>  
  263.         </tr>  
  264.         <tr>  
  265.             <td colspan="2" style="border: 1px solid #000;height:25px;">电子邮件</td>  
  266.             <td colspan="4" style="border: 1px solid #000;">1111</td>  
  267.         </tr>  
  268.         <tr>  
  269.             <td colspan="2" style="border: 1px solid #000;height:25px;">通信地址</td>  
  270.             <td colspan="4" style="border: 1px solid #000;">1111</td>  
  271.         </tr>  
  272.         <tr>  
  273.             <td colspan="2" style="border: 1px solid #000;height:25px;">邮政编码</td>  
  274.             <td colspan="4" style="border: 1px solid #000;">1111</td>  
  275.         </tr>  
  276.         <tr>  
  277.             <td colspan="2" style="border: 1px solid #000;height:25px;">确认意见</td>  
  278.             <td colspan="4" style="border: 1px solid #000;">  
  279.                 <input type="checkbox" checked/>上述信息属实<input type="checkbox" />上述信息不属实  
  280.             </td>  
  281.         </tr>  
  282.         <tr>  
  283.             <td style="width:30px;text-align:center;vertical-align:middle;border: 1px solid #000;" rowspan="2">C<br>F<br>C<br>A<br>意见</td>  
  284.           
  285.             <td colspan="2" style="border: 1px solid #000;height:25px;">CFCA经办人:</td>  
  286.             <td colspan="2" style="border: 1px solid #000;">  
  287.                 <input type="checkbox" />以上手续完备<br><input type="checkbox" />以上手续完备  
  288.             </td>  
  289.             <td colspan="2" style="border: 1px solid #000;">  
  290.                 业务部审核员:<br>  
  291.                 业务审核日期:  
  292.             </td>  
  293.         </tr>  
  294.         <tr>  
  295.             <td colspan="4" style="border: 1px solid #000;height:25px;">分管领导:<br><br><br><br></td>  
  296.             <td colspan="2" style="border: 1px solid #000;vertical-align:bottom;">  
  297.                 (CFCA盖章)  
  298.             </td>  
  299.         </tr>  
  300.         <tr>  
  301.             <td style="width:30px;text-align:center;vertical-align:middle;border: 1px solid #000;">操作</td>  
  302.           
  303.             <td colspan="4" style="border: 1px solid #000;height:25px;">  
  304.                 运行部录入人员:<br>  
  305.                 录入日期:  
  306.             </td>  
  307.             <td colspan="2" style="border: 1px solid #000;">  
  308.                 运行部审核人员:<br>  
  309.                 审核日期:  
  310.             </td>  
  311.         </tr>  
  312.         <tr>  
  313.             <td style="width:30px;text-align:center;vertical-align:middle;border: 1px solid #000;">备注</td>  
  314.           
  315.             <td colspan="6" style="border: 1px solid #000;">  
  316.                 如您办理电子钥匙续费,请在此栏注明您所持有的电子钥匙的DN号码:<br><br>  
  317.             </td>  
  318.         </tr>  
  319.       </table>  
  320.     </div>  
  321.       
  322.       
  323.       
  324.     <div id="tDeal" style="display:none;">  
  325.         <p style="text-align:center;font-size:30px;">购买协议</p>  
  326.         <table style="border-collapse:collapse;width:700px;">  
  327.             <tr>  
  328.                 <td style="width:30px;"></td>  
  329.                 <td style="width:150px;"></td>  
  330.                 <td style="width:150px;"></td>  
  331.                 <td style="width:200px;"></td>  
  332.                 <td style="width:170px;"></td>  
  333.             </tr>  
  334.             <tr>  
  335.                 <td rowspan="3" style="width:30px;text-align:center;vertical-align:middle;border: 1px solid #000;">供方</td>  
  336.                 <td style="width:80px;height:30px;border: 1px solid #000;">企业名称</td>  
  337.                 <td colspan="4" style="height:30px;border: 1px solid #000;">南京优泰科技发展有限公司</td>  
  338.             </tr>  
  339.             <tr>  
  340.                 <td style="width:80px;height:30px;border: 1px solid #000;">开户银行</td>  
  341.                 <td colspan="4" style="height:30px;border: 1px solid #000;">工商银行南京市新街口支行</td>  
  342.             </tr>  
  343.             <tr>  
  344.                 <td style="width:80px;height:30px;border: 1px solid #000;">账号</td>  
  345.                 <td colspan="4" style="height:30px;border: 1px solid #000;">4301010019101143205</td>  
  346.             </tr>  
  347.             <tr>  
  348.                 <td rowspan="2" style="width:30px;text-align:center;vertical-align:middle;border: 1px solid #000;">需方</td>  
  349.                 <td style="width:150px;height:30px;border: 1px solid #000;">企业名称</td>  
  350.                 <td colspan="3" style="height:30px;border: 1px solid #000;"></td>  
  351.                 <td rowspan="2" style="width:150px;height:150px;border: 1px solid #000;vertical-align:bottom;">(盖章)</td>  
  352.             </tr>  
  353.             <tr>  
  354.                 <td style="width:150px;height:30px;border: 1px solid #000;">联系人/电话</td>  
  355.                 <td colspan="3" style="height:30px;border: 1px solid #000;"></td>  
  356.             </tr>  
  357.             <tr>  
  358.                 <td colspan="2" style="height:30px;border: 1px solid #000;">产品名称</td>  
  359.                 <td colspan="4" style="height:30px;border: 1px solid #000;">优泰电子签章系统软件V9.0</td>  
  360.             </tr>  
  361.             <tr>  
  362.                 <td colspan="2" style="height:30px;border: 1px solid #000;">数量</td>  
  363.                 <td colspan="4" style="height:30px;border: 1px solid #000;">优泰电子签章系统软件V9.0</td>  
  364.             </tr>  
  365.             <tr>  
  366.                 <td colspan="2" style="height:30px;border: 1px solid #000;">金额</td>  
  367.                 <td style="height:30px;border: 1px solid #000;">¥</td>  
  368.                 <td colspan="3" style="height:30px;border: 1px solid #000;">大写</td>  
  369.             </tr>  
  370.             <tr>  
  371.                 <td colspan="2" style="height:30px;border: 1px solid #000;">日期</td>  
  372.                 <td colspan="4" style="height:30px;border: 1px solid #000;">优泰电子签章系统软件V9.0</td>  
  373.             </tr>  
  374.             <tr>  
  375.                 <td style="width:30px;text-align:center;vertical-align:middle;border: 1px solid #000;">备注</td>  
  376.                 <td colspan="5" style="height:200px;border: 1px solid #000;">  
  377.                     1、  本软件产品受著作权法及国际条约条款和知识产权保护法及条约的保护。<br>  
  378.                     2、  本软件产品用于大唐项目。<br>  
  379.                     3、  本软件在供方确认收款后,三个工作日内发出。<br>  
  380.                     4、  请将此协议盖章后与其他申请材料一同邮寄<br>  
  381.                     5、  需方签署本协议,表明需方已接受在办理电子钥匙时提供公章或者法人签字的图片,并保证其真实性。  
  382.                       
  383.                 </td>  
  384.             </tr>  
  385.         </table>  
  386.     </div>  
  387.       
  388.   </body>  
  389. </html>  

 

 

本文转自左正博客园博客,原文链接:http://www.cnblogs.com/soundcode/p/7711542.html,如需转载请自行联系原作者

相关文章
|
7月前
|
开发框架 BI C#
C#之二十三 打印和水晶报表
C#之二十三 打印和水晶报表
61 0
|
10月前
|
图形学 C++
Qt实现Qchart的打印和打印预览的几种方法
Qt实现Qchart的打印和打印预览的几种方法
|
10月前
|
Java
学生菜单打印
学生菜单打印
41 0
|
11月前
Mac程序坞只显示正在运行的应用图标
Mac程序坞只显示正在运行的应用图标
112 0
搜狗输入法怎么打印间隔号
搜狗输入法怎么打印间隔号
188 0
|
监控
win10照片打印闪退
win10系统,版本号不太清楚,应该是1607以上。打开照片没有问题,但点了打印后就闪退。 一开始认为是驱动问题,重装驱动后问题依旧,也换了图片打印,也不行。尝试右键选择打印可以使用。最后查看系统日志,发现是“照片”软件出错。
1355 0
|
C# 容器
用WPF实现打印及打印预览
原文:用WPF实现打印及打印预览 应该说,WPF极大地简化了我们的打印输出工作,想过去使用VC++做开发的时候,打印及预览可是一件极麻烦的事情,而现在我不会再使用C++来做Windows的桌面应用了——性价比实在太低。
1448 0