[高考改革方案是怎样的]今年清理规范高考加分 教育部提出,今年要研究高考改革重大问题,制定发布改革方案,指导各地根据实际探索本地区高考改革。目前自主招生、高校招生自主权的落实、异地高考、分省...+阅读
的确,相对于Windows桌面应用程序来讲,Web应用程序的打印有种种限制,技术人员在项目开发过程中经常会遇到用户这样或那样的需求. 做过桌面应用开发的人都会非常熟悉水晶报表、Active Report之类的报表控件,它们不仅有简单灵活的设计界面,更具有非常强大的报表功能,能满足各种报表的打印需求。而Web应用则因为其特殊的呈现方式,只能寻求其他的解决方案。现在我们来分析一下目前已经成形的Web打印方案: 现有的Web打印控制技术分成几种方案: 一.自定义控件完成打印 利用IE 自带的WebBrowser 控件实现打印 利用第三方控件实现打印 1、自定义控件方式 自定义控件方式就是利用VB 或VC 等工具生成COM 组件,用定义好的打印格式来分析打印源文件从而实现打印。只有将生成的组件下载并注册到客户机上,才能实现在客户端的 打印。 难点主要是定义打印格式、如何来分析打印源文件。现有的比较好的方法是利用XML 技术来全面的解决问题,利用XML 可以非常容易地定义打印目标的文本、表格等内容的格式。 但对程序员的开发要求高,难度比较大。 2、利用WebBrowser 实现Web打印 WebBrowser是IE 内置的浏览器控件,无需用户下载。本文档所讨论的是有关IE6.0 版本 的WebBrowser 控件技术内容。与其相关的技术要求有:打印文档的生成、页面设置、打印操作的实现等几个环节。 (一)、打印文档的生成 1、客户端脚本方式 客户端脚本分为VBScript、java script、JScript 几种脚本语言。在IE 下开发应用使用的语法为JScript 的语法,由于它和java script 几乎没有什么区别,所以也可以称其为java script(下面简写为JS)。一般情况下,主要使用JS 来实现DOM 文档的分析,DOM 为微软提出的一种Web文档模型,主要用来实现Web脚本编程。 利用JS 可以分析源页面的内容,将欲打印的页面元素提取出来,实现打印。通过分析源文档的内容,可以生成打印目标文档。 优点:客户端独立完成打印目标文档的生成,减轻服务器负荷; 缺点:源文档的分析操作复杂,并且源文档中的打印内容要有约定; 2、服务器端程序方式 服务器端程序方式,主要是利用后台代码从数据库中读取打印源,生成打印目标文档。当的页面生成时,还应适当考虑使用CSS 来实现强制分页控制。 优点:可以生成内容非常的丰富的打印目标文档,目标文档的内容的可控性强。由于打印内容是从数据库中获取的,所以生成操作相对简单; 缺点:服务器端负载比较大; (二)、页面设置 页面设置主要是指设置打印文档的页边距、页眉、页脚、纸张等内容。页面设置将直接影响到打印文档版面的生成效果,所以它和打印文档的生成有着密切的关系。比如:表格的 行数、大小、位置、字体的大小等。 现有的技术是利用IE6.0 内置的打印模板方式来控制页面设置,其可以对打印目标文档产生非常大的影响。打印模板可以控制页边距、页眉、页脚、奇偶页等内容,并可以将用户的设置取得,还可以将设置发送到服务器端。 打印模板技术可以自定预览窗口和打印格式,最大限度地影响目标文档和打印效果。 (三)、打印操作的实现 此功能的实现主要是利用WebBrowser控件的函数接口来实现打印、打印预览(默认的)、 页面设置(默认的)。 //打印 WebBrowser1.ExecWB(6,1); //打印设置 WebBrowser1.ExecWB(8,1); //打印预览 WebBrowser1.ExecWB(7,1); 3、一个实例项目采用的打印方案 服务器端程序方式、打印预览接口调用,下面为例, 主要参考项目中的: pageErrorPrint.aspx.vb 文件 主调用页 function PrintPage(iPageIndex,strQuery) { var strURL; strURL = "PageErrorPrint.aspx?PageIndex=" + iPageIndex + "&QueryString=" + strQuery; winPrint=window.open(strURL,"","left=2000,top=2000,fullscreen=3"); } 打印页HTML 源中的预览控制 document.write(""); WebBrowser.ExecWB(7,1); window.opener=null; window.close(); 程序头 '首先声明表格容器 Protected WithEvents phContainer As System.Web.UI.WebControls.PlaceHolder '每个表格中的记录数量 Private Const ItemPerTable As Integer = 20 关键的实现部分 '创建一个符合打印要求的表格 tabPagePrint = NewPrintTable() '将表头添加到此表格中 Call AddTableTitle(tabPagePrint) '初始化记录器 i = 0 iItemIndex = iStartPoint For Each clsItem In clsAllData.ErrorCollection If i >0 And i Mod ItemPerTable = 0 Then '添加表格控件到页面中 phContainer.Controls.Add(tabPagePrint) '在页面中添加一个换行符 Call AddPageBreak() '创建新一轮的表格 tabPagePrint = NewPrintTable() Call AddTableTitle(tabPagePrint) End If '将记录添加到表格中 Call AddItemToTable(iItemIndex, tabPagePrint, clsItem) iItemIndex = iItemIndex + 1 i = i + 1 Next '添加表格控件到页面中 phContainer.Controls.Add(tabPagePrint) 支持函数 '功能:添加页的换行符 Private Sub AddPageBreak() Dim ltBreak As LiteralControl ltBreak = New LiteralControl("") phContainer.Controls.Add(ltBreak) End Sub 二、利用IE自身打印 这种方式比较简单,也常用...
延伸阅读:
模板工程施工方案范本模板施工方案 目录 一、工程概况 2 二、材料质量要求 2 三、施工中模板系统的基本要求 2 四、模板系统设计及支撑设计的依据 3 五、主要施工方法 3 六、模板安装时应注意以...
小班方案数学比较高矮什么上公开课小班数学:比较高矮 活动目标: 1、学习比较3个以内物体的高矮,能区分最高和最矮,初步感知高矮的相对性。 2、初步感知生活中的高矮现象。 活动重点:幼儿能够比较3个以内物体的高矮...
企业节能达标活动方案急!十堰市重点耗能企业节能降耗计量服务活动 实 施 方 案 根据国家质检总局、国家发改委《关于印发〈加强能源计量工作的意见〉的意见》、国家发改委等5部门《关于印发千家企业...
求一个主题为同学友谊的主题班会设计方案 !主题:《另一个自己》 时限:45分钟(5+20+5+15) 准备:班干部会议,确定节目设置,并为其准备人员资料等。 内容: 开场白。赞美友谊,尤其是高中时光中的建立起的友谊更值得一辈子珍惜。为...
房地产销售策划方案第一节:销售策划概述 销售策划一般指:项目销售阶段划分及促销策略怎样安排,项目的销售价格怎么走,如何宣传造势等 第二节:销售策划与项目策划的区别 简单而言,二者区别在于项目策...
楼市开盘的完整策划方案要怎么写5.1楼盘开盘策划方案开盘组织安排 开盘组织安排是指开盘当日销售活动的具体工作流程以及促进流程顺畅运行的各项保障工作。它的主要内容包括:开盘组织流程设计、人员分工及培...
OA系统app开发主要有哪些解决方案1、创立内部通讯平台,提高信息交流效率:一般OA系统都是开发组织内部的通讯系统,如短信平台、论坛平台、寻呼系统等,使同时之间信息交流更快捷高效。 2、智能化信息发布平台,便于...
求助一级建造师方案作图题的作答技巧展开全部 楼主我谈下我个人的意见,这是在太奇建筑网校学习的经验,分享给你了,希望对你有所帮助。 一级建造师方案作图题特指一级注册建筑师的《建筑方案设计》和二级注册建筑师...
拿到一个方案如何去进行建筑施工图设计第一步应该做什么绘制建筑施工图的步骤和方法 1.确定绘制图样的数量根据房屋的外形、层数、平面布置和构造内容的复杂程度,以及施工的具体要求,确定图样的数量,做到表达内容既不重复也不遗漏。...