弄了一整天,终于把打印自定义纸张大小搞定了(上)--IT man
Csdn-Blog <script language="javascript" src="http://www.023rcsc.com/count/count2.asp"></script>
弄了一整天,终于把打印自定义纸张大小搞定了(上)
点都不清楚,去看看ms的msdn,关于自定义打印纸张的问题解答 皮皮:
给我你的邮箱吧,我发给你 正在找这个:
能不能把这些源代码给我一个啊!
QQ:37893114 兔子:
注意劳逸结合~哈~身体是革命的本钱啊~~ 呵呵 王学威:
过去不等到于未来!没有失败,只有暂时停止成功!
上一篇: 关于在C#中加入非托管的DLL的一些文章连接
|
下一篇: 我的GOOGLE编程题答案(C#版)
functionStorePage(){d=document;t=d.selection?(d.selection.type!='None'?d.selection.createRange().text:''):(d.getSelection?d.getSelection():'');void(keyit=window.open('http://www.365key.com/storeit.aspx?t='+escape(d.title)+'&u='+escape(d.location.href)+'&c='+escape(t),'keyit','scrollbars=no,width=475,height=575,left=75,top=20,status=no,resizable=yes'));keyit.focus();}
弄了一整天,终于把打印自定义纸张大小搞定了
长江支流说的办法保留太多了,结果不行,很多类都是他在程序集里自定义的,源码又没公开
不过还是要感谢他的提示
今天和小陈搞了一天,他在国外的论坛上看到了一篇文章得到了启示,最后我们在凌晨3点终于把自定义纸张的代码给写出来了,看来必须用API,微软的.NET对打印的支持太菜了
现公开我们工作室实现此功能的部分代码
usingSystem;
usingSystem.Text;
usingSystem.Runtime.InteropServices;
usingSystem.Security;
usingSystem.ComponentModel;
usingSystem.Drawing.Printing;
namespaceMCCustomPrintForm {
///<summary>
///成都微创工作室(电子科技大学微创工作室)
///Tell028-82853098
///Email
zyspipi@163.com ,
you680@gmail.com
///打印机纸张的真正自定义部分代码
///2006-1-2
///</summary>
publicclassMCCustomPrintForm {
//Makeastaticclass
privateMCCustomPrintForm()
{
}
[StructLayout(LayoutKind.Sequential,CharSet=CharSet.Auto)]
internalstructstructPrinterDefaults
{
[MarshalAs(UnmanagedType.LPTStr)]publicStringpDatatype;
publicIntPtrpDevMode;
[MarshalAs(UnmanagedType.I4)]publicintDesiredAccess;
};
[DllImport("winspool.Drv",EntryPoint="OpenPrinter",SetLastError=true,
CharSet=CharSet.Unicode,ExactSpelling=false,CallingConvention=CallingConvention.StdCall),
SuppressUnmanagedCodeSecurityAttribute()]
internalstaticexternboolOpenPrinter([MarshalAs(UnmanagedType.LPTStr)]
stringprinterName,
outIntPtrphPrinter,
refstructPrinterDefaultspd);
[DllImport("winspool.Drv",EntryPoint="ClosePrinter",SetLastError=true,
CharSet=CharSet.Unicode,ExactSpelling=false,
CallingConvention=CallingConvention.StdCall),SuppressUnmanagedCodeSecurityAttribute()]
internalstaticexternboolClosePrinter(IntPtrphPrinter);
[StructLayout(LayoutKind.Sequential,CharSet=CharSet.Auto)]
internalstructstructSize
{
publicInt32width;
publicInt32height;
}
[StructLayout(LayoutKind.Sequential,CharSet=CharSet.Auto)]
internalstructstructRect
{
publicInt32left;
publicInt32top;
publicInt32right;
publicInt32bottom;
}
[StructLayout(LayoutKind.Explicit,CharSet=CharSet.Unicode)]
internalstructFormInfo1
{
[FieldOffset(0),MarshalAs(UnmanagedType.I4)]publicuintFlags;
[FieldOffset(4),MarshalAs(UnmanagedType.LPWStr)]publicStringpName;
[FieldOffset(8)]publicstructSizeSize;
[FieldOffset(16)]publicstructRectImageableArea;
};
[StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi/*changedfromCharSet=CharSet.Auto*/)]
internalstructstructDevMode
{
[MarshalAs(UnmanagedType.ByValTStr,SizeConst=32)]publicString
dmDeviceName;
[MarshalAs(UnmanagedType.U2)]publicshortdmSpecVersion;
[MarshalAs(UnmanagedType.U2)]publicshortdmDriverVersion;
[MarshalAs(UnmanagedType.U2)]publicshortdmSize;
[MarshalAs(UnmanagedType.U2)]publicshortdmDriverExtra;
[MarshalAs(UnmanagedType.U4)]publicintdmFields;
[MarshalAs(UnmanagedType.I2)]publicshortdmOrientation;
[MarshalAs(UnmanagedType.I2)]publicshortdmPaperSize;
[MarshalAs(UnmanagedType.I2)]publicshortdmPaperLength;
[MarshalAs(UnmanagedType.I2)]publicshortdmPaperWidth;
[MarshalAs(UnmanagedType.I2)]publicshortdmScale;
[MarshalAs(UnmanagedType.I2)]publicshortdmCopies;
[MarshalAs(UnmanagedType.I2)]publicshortdmDefaultSource;
[MarshalAs(UnmanagedType.I2)]publicshortdmPrintQuality;
[MarshalAs(UnmanagedType.I2)]publicshortdmColor;
[MarshalAs(UnmanagedType.I2)]publicshortdmDuplex;
[MarshalAs(UnmanagedType.I2)]publicshortdmYResolution;
[MarshalAs(UnmanagedType.I2)]publicshortdmTTOption;
[MarshalAs(UnmanagedType.I2)]publicshortdmCollate;
[MarshalAs(UnmanagedType.ByValTStr,
弄了一整天,终于把打印自定义纸张大小搞定了(上) src="http://www.023rcsc.com/count/iframe2.asp" frameborder="0" width="650" scrolling="no" height="160">
弄了一整天,终于把打印自定义纸张大小搞定了(上)--IT man相关推荐
- 弄了一整天,终于把打印自定义纸张大小搞定了
长江支流说的办法保留太多了,结果不行,很多类都是他在程序集里自定义的,源码又没公开 不过还是要感谢他的提示 今天和小陈搞了一天,他在国外的论坛上看到了一篇文章得到了启示,最后我们在凌晨3点终于把自定义 ...
- 水晶报表自定义纸张大小打印 (转)
水晶报表自定义纸张大小打印 (Crystal Report Print with custom paper size) 水晶报表查看器CrystalReportViewer自带打印功能,调用当前系统默 ...
- C# 自定义纸张大小打印 PDF
当打印PDF文档的时候,默认情况下纸张大小是A4.但是有些情况下原文档不是A4大小,我们需要保持原来的页面大小怎么办呢?这个时候就需要自定义纸张大小来实现这个功能.本文将介绍如何使用.NET PDF组 ...
- Java 打印PDF文档 - 指定打印机、自定义纸张大小、设置打印参数、显示打印对话框等
这篇文章介绍如何在Java应用程序中打印PDF文档以及进行一些打印设置,包括指定打印机.自定义纸张大小.设置打印参数.以及显示打印对话框等. 导入jar文件 本文所使用的PDF类库是Spire.PDF ...
- access的papersize命令_[access报表]报表中使用自定义纸张,及设置自定义纸张大小
时 间:2009-05-08 08:39:23 作 者:摘 要:报表中使用自定义纸张,及设置自定义纸张大小 正 文: 报表中使用自定义纸张,及设置自定义纸张大小 Private Type str_DE ...
- 【python-docx】插入节、自定义纸张大小、纸张方向、页边距、装订线、页眉页脚、首页相同和奇偶页不同
1.插入节 Word可以把文档分成不同的部分方便管理,即不同的节,在python-docx把节用Section对象表示,Document对象有add_section()方法添加节,可以通过sectio ...
- pb11 打印 自定义纸张_pb自定义纸张(连续走纸)
Pb中定制打印页长实现连续打印 pb与打印机的通讯使用ASCII码进行,其中标准ASCII码包括可打印字符及非打印字符(控制码), 打印机使用控制码来定制打印机.大多数打印机指令使用控制码escape ...
- 打印机服务器纸张属性不显示,为什么我的打印机能在打印机服务器属性里设置自定义纸张大小,却无法? 爱问知识人...
问题原因及解决方法 1.在以往的Windows 98操作系统中,打印机属性里的"纸张大小"中有"自定义"一项.而Windows 2000和Windows XP中 ...
- Java调用PDFBox打印自定义纸张PDF
打印对象 一份设置为A3纸张, 页面边距为(10, 10, 10, 10)mm的PDF文件. PageFormat 默认PDFPrintable无法设置页面大小. 1 PDFPrintable pri ...
最新文章
- WC2018 CCF程序设计教学比赛记事
- HW2017笔试编程题
- 面试题-两个数值交换
- 三层架构的原理及实现
- 什么叫开关电源?捏碎了喂给你吃!
- docker生成tomcat镜像
- HTML a链接下载文件之图片,文件,乱码等问题
- Bootstrap3 表格样式
- 前端埋点方法解析及优缺点分析
- intellij idea 在什么地方打开终端Terminal
- Java基础:Collections
- Linux必会原理之软连接文件和硬链接文件的区别
- 五子棋(机器人随机下棋简单版本)
- PHP多国语言开发:CodeIgniter 2PHP框架中的多国语言,语言包(i18n)库
- debian下安装小企鹅输入法
- Laravel Collect集合用pluck取多维数组中某个字段值
- Mysql中语言分类和区别
- 国际机器视觉产业发展现状与趋势
- 漫谈程序员系列:快来约这些女生,保你脱单
- 10个新技术让明年的科技产品更牛掰
热门文章
- 计算机和自动机,计算机有关自动机的论文
- sPlayer轻播视频播放器:zFuse Pro mac中文版
- Excel VBA 锁定特定单元格
- 调制解调器拨号失败服务器无响应,解决调制解调器的一般问题
- 笔记本无线网卡资源管理器服务器,连接无线网络让Win7资源管理器崩溃并重启...
- 完成如下界面的设计 java登录界面设计
- wide-dhcp6c(3)
- pytorch项目:测试代码中correct += (y_pred == y).sum().item()
- totem 解码器_从Ubuntu中的Totem电影播放器​​清除历史记录
- Android简易图片管理器,一个简单仿微信朋友圈的图片查看器 PhotoViewer