谁能解决我的问题,急急急。
本人用了EPSON TM-U220 打印机打印发票。发现打出来的发票上下页边距太大,客户不满意,要求缩小上下边距,但我打电话问了EPSON公司的高级工程师,他回答要在VB中设置上面页边距,本人是初学者,不懂,请高手指点。谢谢。是上下边距,不是左右边距。 --------------------编程问答-------------------- 贴出代码,让大家帮你改下。 --------------------编程问答-------------------- 用VB的Printer对象直接写打印代码 --------------------编程问答-------------------- 对,贴出代码。 --------------------编程问答-------------------- Printer.Height = 100 * 56.7Printer.Width = 76 * 56.7
Printer.ScaleMode = vbPoints
Printer.ScaleLeft = -12.5
Printer.FontSize = 9.5
Printer.FontName = "Fontb11"
Printer.Print ""
Printer.Print "购气日期:"; Now
Printer.Print ""
Printer.Print "用户名称:中华"
Printer.Print "用户卡号:"
Printer.Print ""
Printer.Print "购 气 量:"
Printer.Print "购气金额:"
Printer.Print ""
Printer.Print "收 款 员:"
Printer.Print "收款单位:"
Printer.Print ""
Printer.Print "服务电话:027-87027321"
Printer.NewPage
Printer.EndDoc
Printer.KillDoc --------------------编程问答-------------------- 没人来帮我吗?
--------------------编程问答-------------------- 不知道是不是你想要的:
以下摘自MSDN:
ScaleLeft、ScaleTop 属性
当使用图形方法或调整控件位置时,返回或设置一个对象左边和上边水平 (ScaleLeft) 和垂直 (ScaleTop) 的坐标。
语法
object.ScaleLeft [= value]
object.ScaleTop [= value]
ScaleLeft 和 ScaleTop 属性的语法包含下面部分:
部分 描述
Object 对象表达式,其值是“应用于”列表中的一个对象。
Value 一个用来指定水平或垂直坐标的数值表达式。缺省设置值为 0。
说明
这些属性和相关的 ScaleHeight 与 ScaleWidth 属性的使用,可以建立起一个完全的带有正、负坐标的坐标系统。这四个 Scale 属性与 ScaleMode 属性按下面的方式进行交互作用:
把其它任何 Scale 属性设置为任何值都将使 ScaleMode 自动地设置为 0。ScaleMode 等于 0 是用户定义。
把 ScaleMode 设置为一个大于 0 的数,将使 ScaleHeight 和 ScaleWidth 的度量单位发生改变,并将 ScaleLeft 和 ScaleTop 设置为 0。另外,CurrentX 和 CurrentY 的设置值将发生改变以反映当前点的新坐标。
也可以在语句中使用 Scale 方法设置 ScaleHeight、ScaleWidth、ScaleLeft 和 ScaleTop 属性。
注意 ScaleLeft 和 ScaleTop 属性与 Left 和 Top 属性是不一样的。
ScaleLeft、ScaleTop 属性示例
本例在 PictureBox 控件中创建一个网格,并将左上角的坐标设置为 -1, -1 以代替 0, 0。每隔 0.25 秒,从左上角到右下角随机地画些点。要试用此例,先将下面的代码粘贴到包含一个大的 PictureBox 和 Timer 控件的窗体的声明部分中,然后按 F5 键。
Private Sub Form_Load ()
Timer1.Interval = 250 ' 设置计时器的间隔。
Picture1.ScaleTop = -1 ' 为网格的顶部设置刻度。
Picture1.ScaleLeft = -1 ' 为网格的左部设置刻度。
Picture1.ScaleWidth = 2 ' 设置刻度范围 (-1 到1)。
Picture1.ScaleHeight = 2
Picture1.Line (-1, 0)-(1, 0) ' 画水平线。
Picture1.Line (0, -1)-(0, 1) ' 画垂直线。
End Sub
Private Sub Timer1_Timer ()
Dim I ' 声明变量。
' 在一个范围内随机地画些点。
For I = -1 To 1 Step .05
Picture1.PSet (I * Rnd, I * Rnd) ' 画一个点。
Next I
End Sub
--------------------编程问答-------------------- 发票打印,一般都是用的现成印刷好的多联发票纸+针式打印机打印+复写,基本上都是一个萝卜一个坑,往固定位置上打印对应内容即可,何来上下边距之说? 难道你的发票是用完全空白纸打印出来的??
补充:VB , 数据库(包含打印,安装,报表)