基于Web打印、打印预览技术预研报告.doc

上传人:飞****9 文档编号:137557157 上传时间:2020-07-09 格式:DOC 页数:10 大小:63KB
返回 下载 相关 举报
基于Web打印、打印预览技术预研报告.doc_第1页
第1页 / 共10页
基于Web打印、打印预览技术预研报告.doc_第2页
第2页 / 共10页
基于Web打印、打印预览技术预研报告.doc_第3页
第3页 / 共10页
基于Web打印、打印预览技术预研报告.doc_第4页
第4页 / 共10页
基于Web打印、打印预览技术预研报告.doc_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《基于Web打印、打印预览技术预研报告.doc》由会员分享,可在线阅读,更多相关《基于Web打印、打印预览技术预研报告.doc(10页珍藏版)》请在金锄头文库上搜索。

1、基于Web打印、打印预览技术预研报告历史记录编号章节名称说明修订日期版本号作者批准人1全文新建2014/08/27V1.0yi目 录1 预研背景42 预研目的和意义43 预研目标43.1 概述预研技术的发展情况43.2 预研技术解决方法和方法比较43.3 针对产品进行的方法选择和基本描述94 结论95 参考资料101 预研背景本次预研是对XXXV2.0产品中Web打印、打印预览技术的研究。2 预研目的和意义本次预研在于找到一种合适的方法用以实现XXXV2.0中Web页面的打印功能,从而给用户提供简单方便的操作、简洁美观的打印效果及预览效果起着十分关键的作用。3 预研目标XXX平台V2.0中实现

2、打印预览、打印功能。 3.1 概述预研技术的发展情况 在B/S架构的项目中,由于浏览器的局限性,一直以来Web打印最是让程序员头痛的技术, 浏览器呈现给用户的页面与实际打印的效果有着很明显的差别,如:打印模板中控制页边距、页眉、页脚、纸张大小等。我们经常用的Word、Excel等应用程序,它们有着简单灵活的设计界面,能满足各种文档的打印需求,而Web应用则因为其特殊的呈现方式,只能寻求其他的解决方案。现有的Web打印控制技术分成三种方式:浏览器的打印功能、第三方控件打印功能、服务器生成Pdf、Word、Excel形式下载到本地打印。3.2 预研技术解决方法和方法比较一、 浏览器的打印功能a)

3、通过javascript来调用window.print()函数实现,或用户点击浏览器的打印菜单实现预览及打印功能。media print.toolbardisplay:none; 设置类样式中的内容不打印.pagingpage-break-after:always 强制换页优点:1 代码简单2 支持IE、谷歌、火狐等浏览器缺点:1 不能精确分页。浏览器一般是根据用户设置的页面大小,web页面的内容多少,来自行决定分页位置,程序员很难控制。会有页脚页眉干扰。2 不能准确对齐边距及打印页面大小。3 不能解决连续打印。b) 使用webbrowser控件+ javascript,这实际上,是浏览器打印

4、功能菜单的一种程序调用,与打印功能菜单没什么两样。分页的问题仍然存在,只不过,可以让用户不用去点菜单,直接在网页中的一个按钮,或一个链接里面调用。优点:1 代码简单缺点:1 仅支持IE浏览器2 不能精确分页。二、 第三方控件打印功能1) 使用ScriptX控件打印ScriptX是一个叫MeadCo的国外公司开发的打印控件,可以对页眉,页脚,页边距,纸张方向进行设置,官网的最新版是6.4,下载以后是一个smsx.cab文件,其大小为5.06MB,使用时需要在页面引入cab控件。 var hkey_root,hkey_path,hkey_key hkey_root=HKEY_CURRENT_USE

5、R hkey_path=SoftwareMicrosoftInternetExplorerPageSetup /设置网页打印的页眉页脚为空 function pagesetup_null() try var RegWsh = new ActiveXObject(WScript.Shell) hkey_key=header RegWsh.RegWrite(hkey_root+hkey_path+hkey_key,) hkey_key=footer RegWsh.RegWrite(hkey_root+hkey_path+hkey_key,) catch(e) /用于设置打印参数function p

6、rintBase() factory.printing.header = /页眉factory.printing.footer = /页脚factory.printing.portrait = true /true为纵向打印,false为横向打印factory.printing.leftMargin = 0.5 factory.printing.topMargin = 1.5 factory.printing.rightMargin = 0.5 factory.printing.bottomMargin = 1.5 /用于调用设置打印参数的方法和显示预览界面function printRepo

7、rt() printBase(); / pagesetup_null(); document.all(button).style.display = none;/隐藏按钮 factory.printing.Preview();function printWindow() factory.printing.header = This is MeadCo; /頁首 factory.printing.footer = Printing by ScriptX; / 頁尾 factory.printing.portrait = false; / 橫印 factory.printing.leftMargi

8、n = 1.0; factory.printing.topMargin = 1.0; factory.printing.rightMargin = 1.0; factory.printing.bottomMargin = 1.0; factory.printing.Print(true); 优点:1 可以通过代码直接设置页眉页脚页边距缺点:1 分页可控性差2 仅支持IE浏览器2) 使用Lodop控件进行复杂的打印Lodop俗称露肚皮,是一个专业的Web打印控件,分为收费版和免费版,也是目前一般专业打印软件中应用最广的打印控件,所有调用如同JavaScript扩展语句。它是一个install_l

9、odop32.exe的安装包,其大小为2.28MB。 LODOP=getLodop(document.getElementById(LODOP_OB),document.getElementById(LODOP_EM); PRINT_INIT(strPrintTaskName)打印初始化SET_PRINT_PAGESIZE(intOrient,intPageWidth,intPageHeight,strPageName)设定纸张大小ADD_PRINT_HTM(intTop,intLeft,intWidth,intHeight,strHtml)增加超文本项ADD_PRINT_TEXT(intTo

10、p,intLeft,intWidth,intHeight,strContent)增加纯文本项ADD_PRINT_TABLE(intTop,intLeft,intWidth,intHeight,strHtml)增加表格项SET_PRINT_STYLE(strStyleName, varStyleValue)设置对象风格NewPage() 设置换页PREVIEW打印预览PRINT直接打印优点:1 可控性好;2 支持IE系列、IE内核系列(遨游、360、世界之窗、搜狗、蚂蚁等)浏览器,以及Firefox(火狐)系列、Chrome(谷歌)系列、Opera系列、Safari系列等各类浏览器缺点:1需要安装控件3) 使用Pdf插件进行复杂的打印PDFObject.js,是一个 JavaScript 库用来在HTML中动

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 管理论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号