B/S 模式 套打 的一种实现方式
来源:互联网 发布:肇庆学院网络 编辑:程序博客网 时间:2024/04/30 05:23
“套打” 是一种非常普遍的需求,在 C/S 模式中,尤为常见。目前,随着 B/S 模式的普遍使用,这种需求就体现在了 B/S 模式程序的需求中。 对于一些比较大型的应用, 基本都是基于报表工具的,像水晶报表(Crystal Report), 这些报表工具,基本都具有支持套打的功能。 我这里的实现方式,是非报表工具的轻量级实现,也是比较简单易懂的。
- 套打:就是在模板页上的预订位置,打印出特定的内容
我这里的实现方式,主要是用 css 样式表来实现的。很多人,对 css 的使用,仅限于浏览器模式,很多人的写法是:
<style>....</style>
或者
<style type="text/css">.....</style>
而实际上,css 的书写方式,还有一个 attribute ,那就是 media,写作:
<style type="text/css" media="...">....</style>
而 media 的取值,有三种:
screen 屏幕; print 打印机; all 全部
。如果不指定 media 的值, 则默认是 all.
我们要实现的套打,其实就是 屏幕显示的是完整的内容,而打印出来的,只是某些预定位置的内容。 这正是应用了 media 这个属性。
下面我们来实际做一个例子,来演示如何实现这种套打。
假设: 有如下一张表格,要实现套打 (图一)
内容填写后, 如下图 (图二):
我们要打印出来的,是后填写入的内容,例如:张三、男等。
现在我们的思路已经出来了:
- 将套打的格式,做成一张图片
- 将此图片,作为一个TABLE的背景
- 利用 CSS 的 media 的属性,为TABLE指定screen 和 print 的不同展现:screen 有背景、print 无背景
现在,套打的背景图片我们已经有了,如 图一
我们的TABLE填写内容后,如下图,下面是实际需要打印的内容:
为此TABLE指定背景图片(图一)后,则上下重合,屏幕显示如下
而打印预览中,显示的结果如下:
至此,说有的说明工作都完成了 ,下面上代码:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html> <head> <style type="text/css" media="screen"> .td_table{ background: url(td_print_bg.jpg) no-repeat; /*假设背景图片取名 td_print_bg.jpg*/ } </style> <style type="text/css" media="print"> .td_table{ background-image: url(); } </style> <style type="text/css" media="all"> .td_table{ width: 447px; /*背景图片的宽度 + TABLE的cellpadding + cellspacing*/ height:116px; /*背景图片的高度 + TABLE的cellpadding + cellspacing*/ table-layout:fixed; margin: 0 auto; } </style> </head> <body> <br><br><br><br> <table class="td_table" cellspacing="0" cellpadding="4" align="center"> <tr> <td colspan="4" align="center"> </td> </tr> <tr> <td> </td> <td> 张三</td> <td> </td> <td> 男</td> </tr> <tr> <td> </td> <td> 173CM</td> <td> </td> <td> 65KG</td> </tr> <tr> <td> </td> <td> 28</td> <td> </td> <td> 山东</td> </tr> </table> </body></html>
附上本例子的背景图片:
---------------------------------------------------------------
media=”print” 表示应用到打印机
background-image: url(); 表示没有背景图片
- B/S 模式 套打 的一种实现方式
- 套打程序的实现
- 基于web的套打实现方案
- jquery PrintArea 实现票据的套打
- java 套打 实现
- 实现套打功能
- 打印系列一:(套打解决方案(支持B/S和C/S))
- java applet实现套打
- css div 实现套打
- 使用jatoolsPrinter实现套打
- 基于Equinox嵌入方式的B/S 实现
- PB实现B/S的几种方式
- js实现web上的word凭据套打
- 关于医院精确套打发票的实现
- ASP.NET 实现快递单的打印及套打
- Redis存储Key的一种设计实现方式:模式匹配
- C# ASP.NET B/S模式下,采用lock语法 实现多用户并发产生不重复递增单号的一种解决方法技术参考
- C# ASP.NET B/S模式下,采用lock语法 实现多用户并发产生不重复递增单号的一种解决方法技术参考
- -mshort-load-bytes错误的解决方法
- 数值的进制转换 C#
- csdn没有写过文章
- gtk主题
- ASP.NET 2.0 中的异步页面
- B/S 模式 套打 的一种实现方式
- 面向对象编程初释
- prototype bind 和 bindAsEventListener的区别
- AXD调试中初始化SDRAM的脚本语句
- 正则表达式验证输入是否全中文 C#
- 用汇编写的求数的阶乘的递归程序,很有新意
- Ubuntu 8.10运行windows热门软件测试报告(图)(2008.10.31)
- java rmi
- 123