PrintSample35.html 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>WEB打印控件LODOP的样例三十五:获得打印结果和程序代码</title>
  6. <script language="javascript" src="LodopFuncs.js"></script>
  7. </head>
  8. <body>
  9. <h2><font color="#009999">演示如何获得打印结果和程序代码:</font>
  10. </h2>
  11. <table>
  12. <tr><td>一般情况下,打印设计的程序代码需要用界面的“生成程序代码”菜单命令生成后,</td>
  13. </tr>
  14. <tr><td>手工复制出来融合到页面程序中使用。但实际上无论是<font color="#0000FF">直接打印、打印预览、打印维护</font>还是<font color="#0000FF">打印设计</font>,在运行结束或关闭窗口时都会返回相应的执行结果:</td></tr>
  15. <tr><td><font color="#0000FF">直接打印</font><font color="#000000">返回逻辑真假结果(1或true代表真,false或0代表假),表示是否成功(关于进一步捕获打印状态<a href="PrintSample45.html">参考样例45</a>);</font></td></tr>
  16. <tr><td><font color="#0000FF">打印维护</font><font color="#000000">和</font><font color="#0000FF">打印预览</font><font color="#000000">返回打印次数,大于0表示打印成功的次数;</font></td></tr>
  17. <tr><td><font color="#0000FF">打印设计</font><font color="#000000">窗口关闭后会自动生成程序代码并返给页面,页面程序可以进一步验证这些代码或提交保存;</font></td></tr>
  18. <tr><td><font color="#0000FF">打印设计</font><font color="#000000">返回的程序代码借用js的 eval()函数 ,从而实现0内容开始的全动态设计;</font></td></tr>
  19. </table>
  20. <p><font size="2"><input type="button" value="打印预览" onclick="prn1_preview()">
  21. <input type="button" value="打印维护" onclick="prn1_setup()">
  22. <input type="button" value="打印设计" onclick="prn1_design()">
  23. <input type="button" value="打印维护返回程序代码" onclick="prn2_setup()"></p>
  24. <form method="POST" action="--WEBBOT-SELF--">
  25. <p><textarea rows="12" id="S1" cols="107" >返回的结果值</textarea>
  26. <div id='id01' disabled = true>
  27. <input type="button" value="用这些代码执行打印预览" id="button02" onclick="prn2_Preview()">
  28. <input type="button" value="保存这些代码到本地文件" id="button03" onclick="myWriteFile(document.getElementById('S1').value)">
  29. <input type="button" value="导入程序代码" id="button04" onclick="document.getElementById('S1').value=myReadFile()">
  30. <input type="button" value="用以上代码设计并返回结果(循环互动)" id="button05" onclick="prn2_design()">
  31. </div>
  32. </font>
  33. </form>
  34. <table>
  35. <tr><td style="font-weight:bold">关于打印设计特别说明</td></tr>
  36. <tr><td>1.<font color="#0000FF">打印预览</font>中有透明表格内容的演示</td></tr>
  37. <tr><td>2.打印设计在生成程序代码时依据以下方法,让页面变量与数据项内容对接:
  38. <br>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<font color="#0000FF">LODOP.SET_PRINT_STYLEA(0,"ContentVName","变量名");</font>
  39. <br>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp例如:<font color="#0000FF">LODOP.ADD_PRINT_TEXT(256,61,191,30,"演示发货地址信息");</font>
  40. <br>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<font color="#0000FF">LODOP.SET_PRINT_STYLEA(0,"ContentVName","MyData");</font>
  41. <br>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp设计完毕,关闭设计窗口,设计时的内容自动替换为变量名称,关闭设计窗口生成代码如下:
  42. <br>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<font color="#0000FF">LODOP.ADD_PRINT_TEXT(256,61,191,30,MyData);</font>
  43. <br>3.实例演示设计内容与变量转换对接:<input type="text" id="data01" size="30" value="泰安市青年路28号银泰大厦">点击<font color="#0000FF"><a href="javascript:void(0)" onclick="prn1_design();">打印设计</a></font>后点击<font color="#0000FF" ><a href="javascript:void(0)" onclick="prn2_Preview();">用设计生成代码预览</a></font>看<font color="red" >红色字体</font>显示效果</td></tr>
  44. <tr><td><br><br><a href="PrintSampIndex.html"><<回样例目录</a></td></tr>
  45. <table>
  46. <p></p>
  47. <script language="javascript" type="text/javascript">
  48. var LODOP;
  49. var MyData=document.getElementById('data01').value;
  50. var HtmStr="<!DOCTYPE>\n<style>table,td{border:1px solid black;}</style>\n<body style=\"background-color:transparent;margin:0\" >\n<table>\n<tr>\n<td>透明超文本表格</td>\n<td>预览就看出透明</td>\n<td>预览才看出透明</td>\n</tr>\n<tr>\n<td>非表格也能透明</td>\n<td>预览看出透明</td>\n<td>预览看出透明</td>\n</tr>\n</table>";
  51. function prn1_preview() {
  52. CreateOneFormPage();
  53. if (LODOP.CVERSION) CLODOP.On_Return=function(TaskID,Value){document.getElementById('S1').value=Value;};
  54. document.getElementById('S1').value="打印预览返回结果:"+LODOP.PREVIEW();
  55. document.getElementById('id01').disabled = true;
  56. };
  57. function prn1_setup() {
  58. CreateOneFormPage();
  59. if (LODOP.CVERSION) CLODOP.On_Return=function(TaskID,Value){document.getElementById('S1').value=Value;};
  60. document.getElementById('S1').value=LODOP.PRINT_SETUP();
  61. document.getElementById('id01').disabled = true;
  62. };
  63. function prn1_design() {
  64. CreateOneFormPage();
  65. if (LODOP.CVERSION) CLODOP.On_Return=function(TaskID,Value){document.getElementById('S1').value=Value;};
  66. document.getElementById('S1').value=LODOP.PRINT_DESIGN();
  67. document.getElementById('id01').disabled = false;
  68. };
  69. function prn2_setup() {
  70. CreateOneFormPage();
  71. LODOP.SET_PRINT_MODE("PRINT_SETUP_PROGRAM",true);
  72. if (LODOP.CVERSION) CLODOP.On_Return=function(TaskID,Value){document.getElementById('S1').value=Value;};
  73. document.getElementById('S1').value=LODOP.PRINT_SETUP();
  74. document.getElementById('id01').display =false;
  75. };
  76. function prn2_Preview() {
  77. MyData=document.getElementById('data01').value; //打印前变量重读一下最新值
  78. LODOP=getLodop();
  79. eval(document.getElementById('S1').value);
  80. if (LODOP.CVERSION) CLODOP.On_Return=null;
  81. LODOP.PREVIEW();
  82. };
  83. function prn2_design() {
  84. LODOP=getLodop();
  85. eval(document.getElementById('S1').value);
  86. if (LODOP.CVERSION) CLODOP.On_Return=function(TaskID,Value){document.getElementById('S1').value=Value;};
  87. document.getElementById('S1').value=LODOP.PRINT_DESIGN();
  88. };
  89. function CreateOneFormPage(){
  90. MyData=document.getElementById('data01').value; //打印前变量重读一下最新值
  91. LODOP=getLodop();
  92. LODOP.PRINT_INIT("打印控件功能演示_Lodop功能_获得程序代码");
  93. LODOP.SET_PRINT_MODE("PROGRAM_CONTENT_BYVAR",true);//生成程序时,内容参数有变量用变量,无变量用具体值
  94. LODOP.ADD_PRINT_TEXTA("htm-1",12,228,317,30,"关闭本设计窗口会看到程序代码");
  95. LODOP.SET_PRINT_STYLEA(0,"FontSize",15);
  96. LODOP.ADD_PRINT_ELLIPSE(168,29,100,60,0,1);
  97. LODOP.ADD_PRINT_BARCODE(190,483,213,60,"128A","123456789012");
  98. LODOP.SET_PRINT_STYLEA(0,"Color","#FF00FF");
  99. LODOP.ADD_PRINT_CHART(296,42,604,185,1,"");
  100. LODOP.ADD_PRINT_SHAPE(4,51,195,239,128,0,1,"#0080FF");
  101. LODOP.ADD_PRINT_HTM(141,377,261,161,HtmStr);
  102. LODOP.ADD_PRINT_TEXT(256,61,324,30,"演示发货地址信息");
  103. LODOP.SET_PRINT_STYLEA(0,"ContentVName","MyData");//设置内容参数的变量名
  104. LODOP.SET_PRINT_STYLEA(0,"FontSize",13);
  105. LODOP.SET_PRINT_STYLEA(0,"FontColor","#FF0000");
  106. };
  107. function myWriteFile(strText){
  108. if (LODOP.CVERSION) CLODOP.On_Return=function(TaskID,Value){
  109. var strFilename=Value;
  110. CLODOP.On_Return=function(TaskID,Value){alert(Value)};
  111. LODOP.WRITE_FILE_TEXT(0,strFilename,strText);
  112. };
  113. var strFilename=LODOP.GET_DIALOG_VALUE("LocalFileFullNameforSave","保存的新文件名.txt");
  114. if (!LODOP.CVERSION) {
  115. alert(LODOP.WRITE_FILE_TEXT(0,strFilename,strText));
  116. };
  117. };
  118. function myReadFile() {
  119. if (LODOP.CVERSION) CLODOP.On_Return=function(TaskID,Value){
  120. var strFilename=Value;
  121. CLODOP.On_Return=function(TaskID,Value){document.getElementById('S1').value=Value};
  122. LODOP.GET_FILE_TEXT(strFilename);
  123. };
  124. var strFilename=LODOP.GET_DIALOG_VALUE("LocalFileFullNameforOpen","导入的文件名.txt");
  125. if (!LODOP.CVERSION) {
  126. return LODOP.GET_FILE_TEXT(strFilename);
  127. };
  128. };
  129. </script>
  130. </body>
  131. </html>