如何控制针式打印机多页打印

w_xxxbbb 2017-06-02 08:14:42
需求是这样的,有一个证书,包含多页,证书内容存储在数据库中,每个证书打印的内容不一样,有的页数多,有的页数少,现在有个问题就是如何控制针式打印机打印完一页后,吐出证书。保证把其它N页继续打完,打完后释放打印资源。
...全文
380 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
浪子-无悔 2017-06-02
  • 打赏
  • 举报
回复
不懂你的意思,友情帮顶下吧!! 打印一般都是按照一个打印文档执行的吧~~
1 打印、一体机分类与维修 式、一体机培训资料全文共34页,当前为第1页。 打印 式、一体机培训资料全文共34页,当前为第2页。 打印工作原理 打印(简称打)是利用电路驱动和机械原理,使打印撞击色带和打印介质,进而打印出点阵,再由点阵组成字符或图形来完成打印任务的。 式、一体机培训资料全文共34页,当前为第3页。 打印仿真语言 计算机通过打印控制语言,以软件命令的方法来控制打印机操作,解释执行打印数据,获得打印结果。常见的打印仿真语言为:EPSON、OKI及IBM仿真语言,EPSON仿真语言通用Epson lq-1600k驱动;OKI仿真语言通用OKI 5530SP驱动,都是操作系统自带的,IBM仿真语言使用较少。 式、一体机培训资料全文共34页,当前为第4页。 打印基础知识 不同类型的打印 微型打印: 主要用于POS机、ATM机等设备上。 通用打印: 主要用于普通办公和财务机构。 票据打印: 平推式走纸、具备自动纠偏技术、能够处理超厚纸张,专门用于银行、邮电、保险等服务部门的柜台业务,这类打印机专门发展出了一种存折打印机,还具备磁条读写等特殊功能。 式、一体机培训资料全文共34页,当前为第5页。 打印基础知识 打印各部分名称和功能(平推式) 式、一体机培训资料全文共34页,当前为第6页。 打印基础知识 a.打印纸导纸器b.导轨c.过纸控制杆d.控制面板e.电源转换开关f.前部导纸器g.前盖h.打印机盖i.打印纸导纸器盖 打印各部分名称和功能(通用式) 式、一体机培训资料全文共34页,当前为第7页。 打印基础知识 打印主要技术指标 拷贝能力:也叫复印能力或复写能力,是指打印能够在复写式打印纸上最多打出"几联"内容的能力。目前票据打印机的复写能力一般用"1+N"的方式来标识,1表示打印原件,N表示拷贝(复写)件数,比如"1+6"就代表产品可以最多打印在7层的复写式票据上全部打印出内容来。 接口类型:接口类型指的是打印与电脑系统采用何种方式进行连接。目前票据打印机常见的有并口 (也有称之为IEEE 1284, Centronics)、串口 (也有称之为RS-232接口的)和USB接口。 供纸方式:根据打印供纸的原因,可以把它分为两大类:使用齿轮拖拉的方式供应连续纸和通过摩擦原理供应单页纸。目前绝大多数的打印都具备了这两种供纸的方式,在描述供纸方式时经常是根据连续纸和单页纸的进纸位置加以描述,比如前部、后部、底部。 式、一体机培训资料全文共34页,当前为第8页。 优点 -可在不同类型的纸张上进行打印。 -如多层的无碳复写纸 -多种的进纸通道。-可打印单页纸、连续纸 -打印成本低,-耗材,纸张 缺点 -打印时的噪音较大 -不适宜高质量打印。如照片、图片打印 -打印速度受打印头及线圈响应限制。 -为避免打印头因出的摩擦过热,不得不限制打印速度 ---------或在打印过程中强制暂停。 -速度受限 打印优缺点 式、一体机培训资料全文共34页,当前为第9页。 常见故障及解决方法(1) 出错提示信息: 电源指示灯闪、联机灯灭,表示缺纸或卡纸; 电源指示灯和联机灯同时闪,表示纸斜; 电源指示灯和联机灯交替闪烁,表示选纸杆位置出错; 电源指示灯和联机灯交替快速闪烁,表示回位出错; 电源指示灯亮、联机灯闪,表示打印头过热。 式、一体机培训资料全文共34页,当前为第10页。 常见故障及解决方法(2) 打印发票后面几联不清晰: (1)根据纸张厚度,将纸张厚度调整杆调到适当位置。 (2)检查打印头,可能是磨损严重,需要更换打印头。 打印缺笔划: (1)由于打印头头缆九十度折角处与字车架长久擦,头缆破损,几根导线处相碰短路引起主板,打印头,头缆损坏。用透明胶布将打印头头缆固定在字车架上。 (2)检查打印头,可能是断,需要换。 (3)检查打印头档片是否对位,重新安装到正确位置。 式、一体机培训资料全文共34页,当前为第11页。 打印缺笔画样张 缺划 式、一体机培训资料全文共34页,当前为第12页。 打印打印: 1、检查打印机有没有脱机或者暂停; 2、检查打印机驱动程序端口是否正确; 3、检查打印机数据线有没有故障; 4、检查打印机的并口,或者电脑并口是否有故障(可以通过更换电脑来测试故障位置); 常见故障及解决方法(3) 式、一体机培训资料全文共34页,当前为第13页。 打印出文字乱码: 1、检查打印作业,是不是有未打完的作业,如果有,清楚所有打印作业,并关闭打印机,重开打印机测试。 2、检查打印机的仿真语言是否与所安装驱动相对应; 3、更改电脑主板并口模式,一般在主板BIO
功能更加强劲,增加多行表头的功能,新增更多事件,加强了打印期间对报表样式 的控制,可随意改变打印内容。 reprint 使用说明 本控件可打印 datasource,dbgrid,stringgrid. 一 、控件属性: 1、colstitle 设置报表的列标题属性 (1) Print:boolean;;是否打印 (2) Font:tfont;;字体 (3) Rowsline:tpen;;横线样式 (4) Colsline:tpen;;竖线样式 (5) Alignment:talignment;;对齐方式 (6) Rowspace:integer;;行间距 (7) EveryPage:boolean;;是否每页打印 (8) EveryRow:boolean;;是否每行打印 (9) titlearray:tstrings;;怎加标题组 (使用方法见附带demo) (10) rows:integer;;设置默认列标题打印行数 2、datasource 绑定 datasource 3、dbgrid 绑定 dbgrid 4、stringgrid 绑定 stringgrid PrintObject 选择打印的对象(datasource 、dbgrid、 stringgrid ) 5、pagefooter 页脚 pageheader 页眉 (1) Text:string;;内容 (2) Font:tfont;;字体 (3) Print:boolean;;是否打印 (4) Alignment:talignment;;对齐方式 6、detail 设置要打印的明细数据属性 (1)arrange 设置明细字段排列方向 Horizontal 横向打印(默认的一般打印) Vertical 竖向打印(字段竖向排列适合打印字段内容较长的报表如“会议纪录”) (2)aotureturn 打印明细字段时,如果字段超过列的宽度是否允许自动换行 (3)colsline 设置竖线属性引用tpen类 (4)footer 设置明细尾 (设置同pagefooter 页脚 pageheader 页眉) (5)frame 设置明细边框属性引用tpen类 (6)head 设置明细头(设置同pagefooter 页脚 pageheader 页眉) (7)rowsline 设置横线属性引用tpen类 (8)rowspace 设置明细行的高度 (9)top 明细与标题的距离 (10)Alignment对齐方式 7、page 设置纸张 (1) leftmargin:real;;左边距 (2) rightmargin:real;;右边距 (3) topmargin:real;;顶边距 (4) bottommargin:real;;底边距 (5) pagesize:TPageSize;;纸张类型 (6) Height:real;;高度 (7) width:real;;宽度 (8) Orientation:TPrinterOrientation;;打印方向 注意:设置纸张的宽度和高度需把pagesize设为Custom 8、title 设置标题 (1) Print:boolean;; 是否打印 (2) Text:tstrings;; 内容可设置多行 (3) Font:tfont;;字体 (4) Alignment:talignment;;对齐方式 (5) top:integer;; 距纸张顶部距离 (6) Rowspace:integer;;行距 (7) EveryPage:boolean;;是否每页打印 二 、控件方法: (1) preview 预览 (2) print 打印 (3) SaveToFile() 保存为报表文件 (4) SaveToStream() 保存为流(然后就可把整个报表存到数据库了很方便哦! ~_~) (5) PrintFile() 打印报表文件 (6) PrintStream() 打印流(流的数据库存取就不用多说了吧) (7) PreviewFile() 预览文件 (8) PreviewStream() 预览流 (9) OptionToStream() 报表的属性保存为流 (10) OptionFromStream() 从流中得到报表属性 (11) OptionPost()在打印期间改变了报表属性,要想立即生效调用此方法。 (12) PaintText(Text:string) 覆盖原有打印的字符,一般在能返回当前打印的内容的事件中使用。(见控件事件) 三、 控件事件: (1) AfterPrint 打印后 (2) BeforePrint 打印前 (3) OnPrintDetail(RecordNumber: Integer)在打印每一栏明细前触发此事件, 返回参数:RecordNumber返回当前打印行数。 (4) OnPrintDetailField(RecordNumber,FieldIndex: Integer;; FieldText: String);; 在打印明细的每个字段都会触发此事件。 返回参数:RecordNumber返回当前打印行数。 FieldIndex 字段索引 FieldText字段内容 (5) OnPrintTitle(Row: Integer;; Text: String)打印每行标题都会触发此事件。 返回参数:row当前打印的行 Text当前打印的内容 (6) OnPrintColsTitleField(Row, FieldIndex: Integer;; FieldName: String);; 打印列标题字段时触发此事件 返回参数:row当前打印的行 FieldIndex当前打印的字段索引 FieldName当前打印的字段名称 (7) OnPrintColsTitle(Row: Integer) 打印每行列标题时触发此事件 返回参数:row当前打印的行 四、注意事项 (1) text 属性,输入“¦#¦”打印页码值,如果想打印页码可输入“第¦#¦页” 输入“¦RecordCount¦”打印 记录数 (2) 不同的打印机,打印和预览效果可能有一点点不同(保证数据打印完全正确一致)。本人用一台式和一台激光打印机做测试, 开始差别较大后经过调试基本一致,不知其他打印机如何。 (3) 纸张大小以及横向、竖向自动适应系统默认也可设置。 (4) 各列的宽度按比例,适应纸张宽度打印。 程序设计:吴进昊 E-mail :jinhaowu@hotmail.com qq :54254770 2003.01.03
reprint 使用说明 本人长期使用delphi做数据库的开发,报表控件使用Quickrpt,在打印上经常遇到一些问题,于是自己经常编写一部分打印的程序,经过总结开发了这个控件。 本控件可打印 datasource,dbgrid,stringgrid. 一 、控件属性: 1、colstitle 设置报表的列标题属性 (1)alignment 列标题对齐方式。 (2)font 列标题字体 (3)print 设置是否打印列标题 (4)rowspace 列标题行的高度 2、datasource 选择要打印的datasource 3、dbgrid 选择要打印的dbgrid 4、stringgrid 选择要打印的stringgrid 5、detail 设置要打印的明细数据属性 (1)arrange 设置明细字段排列方向 Horizontal 横向打印(默认的一般打印) Vertical 竖向打印(字段竖向排列适合打印字段内容较长的报表如“会议纪录”) (2)aotureturn 打印明细字段时,如果字段超过列的宽度是否允许自动换行 (3)colsline 设置竖线属性引用tpen类 (4)footer 设置明细尾 (5)frame 设置明细边框属性引用tpen类 (6)head 设置明细头同footer (7)rowsline 设置横线属性引用tpen类 (8)rowspace 设置明细行的高度 (9)top 明细与标题的距离 6、page 设置纸张的上下左右边距 7、pagefooter 设置页脚同明细尾 8、pageheader 设置页眉同页脚 9、printobject 选择要打印的对象 (datasource 、dbgrid、 stringgrid ) 10、title 设置标题类页眉、页脚 二 、控件方法: (1) preview 预览 (2) print 打印 (3) SaveToFile() 保存为报表文件 (4) SaveToStream() 保存为流(然后就可把整个报表存到数据库了很方便哦! ~_~) (5) PrintFile() 打印报表文件 (6) PrintStream() 打印流(流的数据库存取就不用多说了吧) (7) PreviewFile() 预览文件 (8) PreviewStream() 预览流 (9) OptionToStream() 报表的属性保存为流 (10) OptionFromStream() 从流中得到报表属性 三、 控件事件: AfterPrint 打印后 BeforePrint 打印前 (本来很多事件,但没有预览,后来加上预览以及一些方法后实现很困难就去掉了!) 四、注意事项 (1) text 属性,输入“¦;;;;;;;#¦;;;;;;;”打印页码值,如果想打印页码可输入“第¦;;;;;;;#¦;;;;;;;页” 输入“¦;;;;;;;RecordCount¦;;;;;;;”打印 记录数 (2) 不同的打印机,打印和预览效果可能有一点点不同(保证数据打印完全正确一致)。本人用一台式和一台激光打印机做测试,开始差别较大后经过调试基本一致,不知其他打印机如何。 就这些个吧基本满足了我的软件开发需要,解决了很多问题,关键是做报表省了很大力气,当然了很复杂的报表还是要其它报表控件来解决。如果有其他问题或好的建议可与我联系。 程序设计:吴进昊 E-mail :jinhaowu@hotmail.com qq :54254770 2003.01.03

110,537

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧