LODOP

官方地址:http://www.lodop.net/

一个很好的打印控件,可以是实现纸张设置、横打竖打、打印预览、打印维护多种功能。官网的示例非常详细、能很好支持多种浏览器的打印。

在使用中遇到的唯一的缺点是它可能会更改原有内面的CSS样式,

特别是引用的外部CSS样式是无效的,必须要把css样式文件(<style></style>及其内的内容)添加在需要打印内容的内部。

WebBrowser控件

  使用前,首先我们需要在页面中嵌入WebBrowser控件,不过由于该控件是IE浏览器自带的,支持浏览器默认安全设置,可以直接在IE浏览器中使用(chrome和firefox测试中不可用),只是有的时候需要添加对ActiveX控件的支持。

设置方法为:进入浏览器 Internet选项-》安全-》Internet-》自定义级别-》设置如下两项:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>中国绿色厨房计划</title>
<script language="javascript">
function printsetup() {
// 打印页面设置
wb.execwb(8, 1);
}
function printpreview() {
// 打印页面预览
wb.execwb(7, 1);
}
function printit() {
if (confirm('确定打印吗?')) {
wb.ExecWB(6, 1)
//wb.execwb(1,1)//打开
//wb.ExecWB(2,1);//关闭现在所有的IE窗口,并打开一个新窗口
//wb.ExecWB(4,1)//;保存网页
//wb.ExecWB(6,1)//打印
//wb.ExecWB(7,1)//打印预览
//wb.ExecWB(8,1)//打印页面设置
//wb.ExecWB(10,1)//查看页面属性
//wb.ExecWB(15,1)//好像是撤销,有待确认
//wb.ExecWB(17,1)//全选
//wb.ExecWB(22,1)//刷新
//wb.ExecWB(45,1)//关闭窗体无提示
}
}
</script>
</head>
<body>
<div style="width:640px;height:20px;margin:100px auto 0 auto;font-size:12px;text-align:right;">
<input value="打印" type="button" onclick="javascript:window.print()" />
<OBJECT classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2" height="0" id="wb" name="wb" width="0">
</OBJECT>
<input type=button name=button_print style="display:none;" value="打印本单据" onclick="javascript:printit()">
<input type=button name=button_setup value="打印页面设置" onclick="javascript:printsetup();">
<input type=button name=button_show value="打印预览" onclick="javascript:printpreview();">
<input type=button name=button_fh value="关闭" onclick="javascript:window.close();">
</div>
<div style="width:640px;height:624px;margin:20px auto;">
这是需要打印的内容
</div>
</body>
</html>

打印测试页面

JS打印——第三方控件打印的更多相关文章

  1. 转网页WB.ExecWB控件打印方法

    网页WB.ExecWB控件打印方法 2010-02-01 12:48 代码: <table width="100%" cellpadding="1" on ...

  2. HOW TO:使用 Visual C# .NET 打印 RichTextBox 控件的内容

    概要 本分步指南介绍了如何打印 RichTextBox 控件的内容.RichTextBox 控件没有提供任何打印 RichTextBox 内容的方法.您可以扩展 RichTextBox 类以使用 EM ...

  3. DevExpress Winform 通用控件打印方法(允许可自定义边距) z

    DevExpress Winform 通用控件打印方法,包括gridcontrol,treelist,pivotGridControl,ChartControl,LayoutControl...(所有 ...

  4. C#如何打印RichTextBox控件的内容

      本任务的内容 摘要 创建 RichTextBoxPrintCtrl 控件 测试控件 参考 概要 本分步指南介绍了如何打印 RichTextBox 控件的内容.RichTextBox 控件没有提供任 ...

  5. wpf 深度复制控件,打印控件

    原文:wpf 深度复制控件,打印控件 <Window x:Class="WpfApp2.MainWindow" xmlns="http://schemas.micr ...

  6. 好用的第三方控件,Xcode插件(不断更新)

    第三方控件类:   1.提示框 MBProgressHUD: 是一款非常强大的.提供多种样式的提示框.使用起来简单.方便.可以在GitHub上查看具体的使用方法. https://github.com ...

  7. Delphi7 第三方控件1stClass4000的TfcImageBtn按钮控件动态加载jpg图片例子

    Delphi7 第三方控件1stClass4000的TfcImageBtn按钮控件动态加载jpg图片例子 procedure TForm1.Button1Click(Sender: TObject); ...

  8. delphi使用 第三方控件

    第三方控件安装时必须把所有的pas,dcu,dpk,res等文件复制到你的Lib目录下 然后通过dpk进行安装 安装后会多出来新的控件面板,新控件就在那里了 当然也有一些控件会安装到原有的面板上 比如 ...

  9. 教程-Delphi第三方控件安装卸载指南

    1 只有一个DCU文件的组件.DCU文件是编译好的单元文件,这样的组件是作者不想把源码公布.一般来说,作者必须说明此组件适合Delphi的哪种版本,如果版本不对,在安装时就会出现错误.也正是因为没有源 ...

随机推荐

  1. python使用网易邮箱发邮件

    # -*- coding: UTF-8 -*- import smtplib from email.mime.text import MIMEText import email.mime.multip ...

  2. 6,Flask 中内置的 Session

    Flask中的Session非常的奇怪,他会将你的SessionID存放在客户端的Cookie中,使用起来也非常的奇怪 1. Flask 中 session 是需要 secret_key 的 from ...

  3. Kotlin 二分法算法游戏--猜价格

    本人最新想学习算法,算法是提高程序性能的关键! 程序就是数据结构和算法! 写了一个二分法的游戏,供大家参考: 当然,语言基于kotlin import java.util.* /** * Create ...

  4. python的判断与循环

    一.python的特殊缩进与语法 对于Python而言代码缩进是一种语法,Python没有像其他语言一样采用{}或者begin...end分隔代码块,而是采用代码缩进和冒号来区分代码之间的层次.缩进的 ...

  5. gprof使用介绍 (gcc -pg) [转]

    原文出处: http://blog.csdn.net/unbutun/article/details/6609498 linux服务端编程,性能总是不可避免要思考的问题. 而单机(严格的说是单核)单线 ...

  6. BInder浅析

    Binder是什么 Binder是运行在Android内核态用于进程间通信(IPC)的驱动,采用C/S架构,由三项基本组件组成:Binder服务端,Binder驱动,应用程序客户端. 为什么要用Bin ...

  7. 玩转Node.js(二)

    玩转Node.js(二) 先来回顾上次的内容,上一次我们使用介绍了Node.js并写了第一个服务器端的Hello World程序,在这个Hello World程序中,请求自带的http模块并将其赋给h ...

  8. Cannot create a secure XMLInputFactory --CXF调用出错

    在调用方法前加上下面三句即可调用成功: Properties props = System.getProperties(); props.setProperty("org.apache.cx ...

  9. HDU 4189 Cybercrime Donut Investigation 线段树+思路

    参考:http://www.cnblogs.com/slon/archive/2012/03/30/2426104.html 题意:给一个有n个点的点集,有q个询问,每个询问询问一个点p,求与p曼哈顿 ...

  10. jsp处理

    jsp处理步骤: 浏览器发送一个HTTP请求给服务器. Web服务器识别出这是一个对JSP网页的请求,并且将该请求传递给JSP引擎.通过使用URL或者.jsp文件来完成. JSP引擎从磁盘中载入JSP ...