分享一个VS写的PDF打印控件
控件CLSID
A04AC669-CB70-4E8B-9CC0-9B73FC153784
功能描述
自己写的一个控件,某人寿公司的需求,可惜最后没用到。
需求如下:
1、给你一个一个PDF文档,让你打印该文档,且不同页从打印机的不同纸盒出纸(需求真是千奇百怪)。
接口如下:
/************************************************/
//发送打印任务到打印队列
//参数: strPath-> 文件路径
// pageFrom-> 打印开始页
// pageTo-> 打印结束页
// nBoxNo-> 打印机纸盒编号
/************************************************/
void SendPrintData(BSTR strPath, LONG pageFrom, LONG pageTo, SHORT nBoxNo);/************************************************/
//设置打印机
//参数: paperType-> 纸张类型(例如:A4)
// paperDirection-> 纸张方向(横向:1,纵向:2)
// nCopies-> 打印份数
// bDuplex-> 是否双面打印
/************************************************/
SHORT SetPrint(BSTR paperType,SHORT paperDirection, SHORT nCopies, SHORT bDuplex);/************************************************/
//打印打印队列中的所有任务
/************************************************/
void PrintAll();
源码地址
http://download.csdn.net/detail/wu_tongyu/9516112
测试程序
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><title> PDF打印测试 </title></head><script type="text/javascript"> function handleFIles(files){var file = files[0];var fd = document.getElementById("file");//alert(fd.value);}function SendData(){var sPath = document.getElementById("path").value;var from = parseInt(document.getElementById("from").value);var to = parseInt(document.getElementById("to").value);var boxno = parseInt(document.getElementById("boxno").value);var ocx = document.getElementById("PdfPrinterOCX");ocx.SendPrintData(sPath,from,to,boxno);}function Print(){var ocx = document.getElementById("PdfPrinterOCX");ocx.PrintAll();}function PrintDefault(){var strPath = document.getElementById("path").value;//var szPath = strPath.replace(/\\+/,"\\\\");//alert(szPath);var ocx = document.getElementById("PdfPrinterOCX");ocx.PrintByDefault(strPath);}function SelectFile(){try {var Message = "\u8bf7\u9009\u62e9\u6587\u4ef6\u5939"; //选择框提示信息var Shell = new ActiveXObject("Shell.Application");var Folder = Shell.BrowseForFolder(0, Message, 64, 17); //起始目录为:我的电脑//var Folder = Shell.BrowseForFolder(0, Message, 0); //起始目录为:桌面if (Folder != null) {Folder = Folder.items(); // 返回 FolderItems 对象Folder = Folder.item(); // 返回 Folderitem 对象Folder = Folder.Path; // 返回路径if (Folder.charAt(Folder.length - 1) != "\\") {Folder = Folder + "\\";}document.getElementById(path).value = Folder;return Folder;}}catch (e) {alert(e.message);}}
</script><body><OBJECT ID="PdfPrinterOCX" CLASSID="clsid:A04AC669-CB70-4E8B-9CC0-9B73FC153784"></OBJECT><!-- 路径编码方式好像有问题<div style="margin-bottom:30px"><p>请选择PDF文件:</p><input type="file" id="file" onchange="handleFIles(this.files)"/></div>--><table><tr><td>输入PDF文件路径:</td><td><input type="input" id="path" value="c:\\test.pdf"/></td></tr><tr><td>输入打印起始页:</td><td><input type="input" id="from"/></td></tr><tr><td>输入打印终止页:</td><td><input type="input" id="to"/></td></tr><tr><td>输入出纸盒编号:</td><td><input type="input" id="boxno"/></td></tr><table><div style="margin:10px"><input type="button" onclick="SendData()" value="发送打印数据"/><input type="button" onclick="Print()" value="打 印"/><input type="button" onclick="PrintDefault()" value="自动选择纸盒打印"/></div></body>
</html>
分享一个VS写的PDF打印控件相关推荐
- 分享一个 C# Winfrom 下的 OutlookBar 控件的使用
最近在上网的时候,发现了这个C# 下的 OutlookBar 控件,看了一下感觉还真不错,特此记录一下. using System; using System.Drawing; using Syste ...
- WEB免费打印控件推荐
在WEB系统中,打印的确是个烦人的问题. 要么自己开发打印控件,如果项目时间紧,肯定来不及. 要么购买成熟的打印控件,如果是大项目可以考虑,但如果项目只有几K到1.2W之间,这就麻烦了. 前段时间有机 ...
- 打印控件---引用网友推荐
原文出处:http://www.cnblogs.com/panshenglu/archive/2009/09/21/1571258.html 原文作者:六六 在WEB系统中,打印的确是个烦人的问题. ...
- WEB 免费打印控件推荐
在WEB 系 统中,打印的确是个烦人的问题. 要么自己开发打印控件,如果项目时间紧,肯定 来不及. 要么购买成熟的打印控件,如果是大项目可以考 虑,但如果项目只有几K 到1 .2W 之间,这就麻烦了. ...
- WEB免费打印控件推荐(转载)
在WEB系统中,打印的确是个烦人的问题. 要么自己开发打印控件,如果项目时间紧,肯定来不及. 要么购买成熟的打印控件,如果是大项目可以考虑,但如果项目只有几K到1.2W之间,这就麻烦了. 前段时间有机 ...
- Java Web打印控件(纯java手写版)
场景: 向数据库中添加一条记录时,调用客户端局域网中的打印机自动将数据打印出来.(当然是客户端打印,服务器端打印还要控件???) 要求: 不弹出.不打印预览.直接自动打印.(静默打印) 需要兼容各大浏 ...
- 在.net Core 使用PDF模板文件生成PDF文件,代替WEB打印控件!
这几天找WEB打印控件,要么收费的,要么免费的只能在IE里用! 我只想简单的打个标签纸!百度2天,看到一老兄说可以用PDF,然后又开始百度..找到了一篇文章 http://www.jianshu.co ...
- 分享一个无水印的web打印组件
转自张善友大牛的博客http://www.cnblogs.com/shanyou/p/3185111.html 应用web化,不论对开发商,还是对用户来说,实在是一种很经济的选择,因为基于web的应用 ...
- 分享一个为js生成PDF添加水印的小技巧
分享一个为js生成PDF添加水印的小技巧 程序员工作中有时我们会遇到这样的情况--客户为了生成档案的版权问题,要为生成的文本 或者页面添加版权水印,以HTML代码页面生成PDF文件为例,介绍一下添加水 ...
最新文章
- 关于Linux的inode和dentry的一组文章
- 责任链模式 mashibing代码
- 澎思科技马原:AI为基,IoT为翼,加速人工智能普惠丨MEET2021
- 51nod 1087 1 10 100 1000
- 8.2.5: Spring3.0新增的@DependsOn和@Lazy
- 某聊天工具消息记录数据库文件解密逆向分析
- 开启SAP CDS view DCL前后的读取性能对比
- Linux 中断处理浅析
- hadoop伪分布式搭建 java_hadoop2.2.0伪分布式搭建
- 【APUE】孤儿进程与僵死进程
- vba 指定列后插入列_Excle中的VBA介绍分享
- C++ STL容器之string--常用接口
- php状态机,有限状态机FSM的原理与GO的实现
- 7-27 Codeforces Round #499 (Div. 2)
- UVA11991 Easy Problem from Rujia Liu?题解
- 搜狗输入法精简_搜狗输入法10.10去图标精简版+9.4.21小米定制版
- 稳压管Ir、Izt、Izk、Izm释义
- java 对接第三方接口
- vue 指定元素滚动到页面可视区域
- Tiny 4412 lcd 驱动分析