200分求票据连续打印的问题,查看了csdn上的问题,好像大多都没有解决
我想要的就是能够自定义页面比如a4纸的3分之一1
我在打完这1/3后能够使打印机停下来。
如果再发送打印命令的时候能够接着打
当然我肯定不是在a4纸上这样做只是打个比方。
以后会转移到241一类的连续打印纸上!
我的打印机是
GreatWall 5370TX 1600KIII 打印机
问题点数:200、回复次数:25Top
1 楼matq2008(叶子.net)回复于 2004-08-01 16:34:58 得分 20
票据打印机是连续走纸的,只管打印就行了,需要时切纸结束打印就行
可以用PrintDocumentTop
2 楼wuye(午夜循环(QQ:260968))回复于 2004-08-01 18:25:41 得分 0
问题是怎么让他设置成连续打印 在打印机上设置还是在程序中Top
3 楼chNET(有神论者)回复于 2004-08-01 18:36:50 得分 20
up
gz
Top
4 楼wuye(午夜循环(QQ:260968))回复于 2004-08-01 18:48:04 得分 0
up者有分 但要等到有人正确解决了这个问题后Top
5 楼usepc(usepc)回复于 2004-08-01 19:09:10 得分 0
你去找找硬件编程方面的资料,好象要取得打印机厂商的打印机SDK来做的.Top
6 楼CMIC(大象)回复于 2004-08-01 19:52:28 得分 30
GreatWall 5370TX不知道是什么打印机,1600KIII自定义纸型为a4纸的3分之一,在打印时选择这种纸型就行了。Top
7 楼glacialfire(昆子)回复于 2004-08-01 20:00:34 得分 20
没有遇到过,不过帮你顶一顶。Top
8 楼wuye(午夜循环(QQ:260968))回复于 2004-08-01 20:22:57 得分 0
大象 自定义纸张以后,在打印完这页以后怎么让他停下来
不然他会一直把所有的纸全部卷出来才会停
GreatWall 5370TX 是平推试打印机,跟1600KIII通用的
Top
9 楼wuye(午夜循环(QQ:260968))回复于 2004-08-01 20:26:06 得分 0
我遇到的问题:我每打印一张票单,(即使是一行字)打印机都会把一张纸走完,无法实现打印多少就走纸多少。同时,我需要用到的打印纸是一卷的,长长的纸条,可以用来撕出打印的票据。(您想象一下超市的票据就会明白了)
在做财务软件的时候应该很常用这个功能呀!
怎么实现的。大家都来帮帮忙。提供个思路一类的Top
10 楼clxxj(查无此人)回复于 2004-08-01 20:41:13 得分 20
也遇到如此问题顶一下Top
11 楼wuye(午夜循环(QQ:260968))回复于 2004-08-01 20:41:49 得分 0
我找到一篇关于fxp的跟我的问题一样,可是我看不懂他们的代码 http://search.csdn.net/Expert/topic/1355/1355332.xml?temp=.1476404
那位高手能帮我看看
看来这个问题不单单是.net的问题
别的语言也有Top
12 楼wuye(午夜循环(QQ:260968))回复于 2004-08-01 21:15:37 得分 0
我看了一下别的板块对这个问题的看法
好像都是把纸张的类型改成最大高度,让他当成
一大张纸。然后打到那里算那里
也许是打印机不一样或者是别的什么
我的打印机每打印完以后,他都要把所有的纸卷出来。
请问怎么在win2003里面把打印机用纸设置成那种针孔连续打印纸呢?Top
13 楼matq2008(叶子.net)回复于 2004-08-01 21:56:55 得分 20
我不太明白你的意思!
我用PrintDocument完全可以实现票据打印功能,不需要知道它会打长的纸张:
private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
//打印事件
e.Graphics.DrawString("报表",new Font("黑体",16F),Brushes.Black,136.53F,76.59F);
//...
//打印数据完毕后切纸
e.HasMorePages = false; //只打一张纸
}
Top
14 楼wuye(午夜循环(QQ:260968))回复于 2004-08-02 08:48:20 得分 0
叶子 你的打印机的纸张怎么设置的?
如何切纸的?
还有你的打印机是什么型号的?
留下你的联系方法好吗?咱们交流一下
我的qq:260968 msn:mmud@hotmail.comTop
15 楼rupweb(rupweb)回复于 2004-08-02 08:56:02 得分 20
PrintDocument
Top
16 楼wuye(午夜循环(QQ:260968))回复于 2004-08-02 09:08:53 得分 0
我遇到的问题:我每打印一张票单,(即使是一行字)打印机都会把一张纸走完,无法实现打印多少就走纸多少。同时,我需要用到的打印纸是一卷的,长长的纸条,可以用来撕出打印的票据。(您想象一下超市的票据就会明白了)
Top
17 楼wuye(午夜循环(QQ:260968))回复于 2004-08-02 09:17:49 得分 0
我不管纸设置的是什么大小
好像只要打印机里面有纸他都要把纸全部卷出来完!
怎么让他不卷出来呢?
可能是打印机的设置问题
谁用过1600kIII的打印机 你们遇到这样的问题了吗?Top
18 楼Shepherd_0(快乐就行)回复于 2004-08-02 17:10:51 得分 30
我正在做与偻主一样的东西
楼主能不能交流一下?
shepherd_0@hotmail.com
Top
19 楼flygoldfish(长江支流)回复于 2004-08-25 13:19:01 得分 20
使用这个开源免费的打印
http://community.csdn.net/Expert/topic/3278/3278050.xml?temp=.5012934
下载
www.alinksoft.comTop
20 楼saison()回复于 2004-11-25 12:40:43 得分 0
我遇到的问题是不管我设置什么纸型,他都按A4纸走Top
21 楼zzcwhq(zzcwhq)回复于 2004-11-25 13:21:23 得分 0
两方面:
1、手动设置打印机(具体设置方法与打印机商家技术部联系,或者说明书上都有)
2、在计算机上设置纸张,并设置为牵引送纸Top
22 楼supicbc(超能原子)回复于 2004-11-29 09:58:42 得分 0
如何换页打印呢?Top
23 楼chenguangw(天下)回复于 2004-12-02 13:29:03 得分 0
顶一下了,不知道激光打印机可不可以实现打一行就停下。但以前做过针打(打印机的型号忘了)用vb写的。
我去翻翻,不知道有用不?
Top
24 楼chenguangw(天下)回复于 2004-12-02 14:09:25 得分 0
Private Function PrintAlarmMessage(ByVal strAlarm As String) As Integer
Dim Handle As Long
Dim hResult As Long
Dim hLastErr As Long
Dim rl As Long
Dim btPrint() As Byte
Dim i As Long
Dim iTmp As Long
Dim iASC As Long
Dim iASCCHN As Long
PrintAlarmMessage = 1
iTmp = 0
' strDevName = "\\liu\E1600" 'エ。サ愑﨤ニ
btPrint = strAlarm
Debug.Print strAlarm
If Len(strAlarm) <= 0 Then Exit Function
'ラィテナエヲタ晗コラヨエ。ホハフ・
For i = 1 To Len(strAlarm)
iASC = Asc(Mid(strAlarm, i, 1))
If iASC > 0 And iASC < 256 Then
btPrint(iTmp) = iASC
iTmp = iTmp + 1
ElseIf iASC < 0 And iASC > -65535 Then
iASC = -(iASC + 1)
iASCCHN = iASC \ 256
iASCCHN = 255 - iASCCHN
btPrint(iTmp) = iASCCHN
iASCCHN = iASC Mod 256
iASCCHN = 255 - iASCCHN
btPrint(iTmp + 1) = iASCCHN
iTmp = iTmp + 2
End If
Next i
btPrint(iTmp) = &HA
iTmp = iTmp + 1
Handle = CreateFile( _
strDevName, _
GENERIC_WRITE, _
FILE_SHARE_WRITE, _
0&, _
OPEN_EXISTING, _
0&, _
0&)
If Handle = INVALID_HANDLE_VALUE Then
PrintAlarmMessage = 1
Exit Function
End If
hResult = WriteFile(Handle, btPrint(0), iTmp, rl, 0)
hLastErr = GetLastError()
CloseHandle (Handle)
If hResult <> 0 Then
PrintAlarmMessage = 0
ElseIf hLastErr = 21 Then
PrintAlarmMessage = 2
Else
PrintAlarmMessage = 1
End If
' Dim t As TextStream
' Dim strFileName As String
' strFileName = App.Path + "\Alarm.txt"
' Set t = fso.OpenTextFile(strFileName, ForAppending, True)
' t.WriteLine strAlarm
' t.Close
' Set t = Nothing
End Function
参考一下吧。Top
25 楼lw8122(随风)回复于 2005-09-10 01:07:24 得分 0
收藏了Top




