用Printer对象打印表格,出现问题。头疼,帮帮忙,大家!

yeman 2003-11-12 12:19:26
Private Sub Label1_Click()
With Printer
.Orientation = 2 '横向打印
.ScaleMode = 6
.Height = 420
.Width = 297
.ScaleWidth = 297
.ScaleHeight = 420
.ScaleLeft = 0
.ScaleTop = -10
usew = .ScaleWidth
useh = .ScaleHeight
'.Zoom = 70
.FontName = "黑体"
.FontSize = 16
.CurrentX = (usew - Printer.TextWidth("现金支出表")) / 2
.CurrentY = 0
End With
Printer.Print frmmain.Label1.Caption
Printer.Print
Dim Y As Integer
Y = Printer.CurrentY

Printer.CurrentX = 10
Printer.Print "部门:" + frmmain.bum
Printer.CurrentX = 180
Printer.CurrentY = Y
Printer.Print frmmain.Label3.Caption
Printer.FontBold = False
Printer.FontName = "宋体"
Printer.CurrentX = 0
If frmmain.bx = 1 Or frmmain.bx = 2 Then
Printer.FontSize = 10
Printer.Print "┏━━┯━━━━━━┯━━━━━━┯━━━━━━┯━━━━━━┯━━━━━━┯━━━━━━┯━━━━━━┯━━━━━━┯━━━━━━┯━━━━━━┯━━━━━━┯━━━━━━┓"
Printer.Print "┃ │ 一月 │ 二月 │ 三月 │ 四月 │ 五月 │ 六月 │ 七月 │ 八月 │ 九月 │ 十月 │ 十一月 │ 十二月 ┃"
For a = 1 To 31
Printer.Print "┠──┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┨"

s = "┃" + Right(" " + Trim(CStr(a)), 2) + "日"
For b = 1 To 12
s = s + "│" + Right(Space(12) + Trim(frmmain.MSG.TextMatrix(b, a)), 12)
Next b
s = s + "┃"
Printer.Print s
Next a
Printer.Print "┠──┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┨"
s = "┃合计"
For b = 1 To 12
s = s + "│" + Right(Space(12) + Trim(frmmain.MSG.TextMatrix(b, 32)), 12)
Next b
s = s + "┃"
Printer.Print s
Printer.Print "┗━━┷━━━━━━┷━━━━━━┷━━━━━━┷━━━━━━┷━━━━━━┷━━━━━━┷━━━━━━┷━━━━━━┷━━━━━━┷━━━━━━┷━━━━━━┷━━━━━━┛"
Printer.EndDoc
End If

If frmmain.bx = 3 Then
Printer.FontSize = 12
Printer.Print "┏━━━┯━━━━━━┯━━━━━━┯━━━━━━┯━━━━━━┯━━━━━━┯━━━━━━┯━━━━━━┓"
Printer.Print "┃ │ 期 初 数 │ 补助收入 │ 上级收入 │ 预算外收入 │ 其它收入 │ 支 出 │ 结 余 ┃"

For a = 1 To 12
Printer.Print "┠───┼──────┼──────┼──────┼──────┼──────┼──────┼──────┨"

s = "┃" + Right(" " + Trim(CStr(a)), 3) + "月 "
For b = 1 To 7
s = s + "│" + Right(Space(12) + Trim(frmmain.MSG.TextMatrix(a, b)), 12)
Next b
s = s + "┃"
Printer.Print s
Next a
Printer.Print "┗━━━┷━━━━━━┷━━━━━━┷━━━━━━┷━━━━━━┷━━━━━━┷━━━━━━┷━━━━━━┛"

Printer.EndDoc
End If

End Sub

=============================================
问题
==============================================
.ScaleMode = 6 ‘设置为以mm为单位,在那个针式打印机上不起作用,
.Zoom = 70 ‘同样不起作用
Printer.FontSize = 10 字体大小为10或者12时表格才能显示正常,但是A3纸打印不下
如果选择其他字体大小的话,表线和下面有数字的行会产生一点偏差,效果如下:

┏━━━┯━━━━━━┯━━━━━━┯━━━━━━┯
┃ │ 一月 │ 二月 │ 三月 │
一开始偏差很小很小(不到一毫米),越向右偏差越来越大。不知道这点偏差是因为什么引起的。在几个打印机上都是如此。

还有一些奇怪的问题。一个很简单的打印让我头疼,不知道该怎么办。

那个打印机是那种一次送一张纸,打完自动退出来的那种。打票据的。

用Printer对象打印的效果在不同的打印机效果会不同吗?

求救~!!!。

...全文
72 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
bingxuehuiren 2003-11-30
  • 打赏
  • 举报
回复
对了,如果楼主解决了问题能不能说一下,你的这些线是怎么画的.我刚学打印.
bingxuehuiren 2003-11-30
  • 打赏
  • 举报
回复
对了你不如把画线变成画方块呢
bingxuehuiren 2003-11-30
  • 打赏
  • 举报
回复
关注
victorycyz 2003-11-12
  • 打赏
  • 举报
回复
把打印表格的字符都换成line,就可精确控制。
yxgsb 2003-11-12
  • 打赏
  • 举报
回复
用Printer对象打印的效果在不同的打印机效果会不同吗?
肯定不同!!!
最好放到窗体或图片框中,用窗体或图片框的Print
内容概要:本文围绕基于Rao-Blackwellized粒子滤波(RBPF)的混合线性、非线性状态估计方法展开研究,重点探讨其在复杂动态系统中的应用,尤其针对同时包含线性与非线性特征的状态估计问题。研究提出将RBPF与全阶扩展卡尔曼滤波(EKF)相结合,并引入传感器融合策略,以提升双自动驾驶车辆协同SLAM(同步定位与建图)系统的精度与鲁棒性,有效应对测距测角、纯方位测量及数据关联等关键技术挑战。通过Matlab代码实现,验证了该方法在状态估计与SLAM任务中的有效性与优越性,充分展现了其在信号处理、机器人导航、智能交通等前沿领域的应用潜力。; 适合人群:具备一定Matlab编程基础和信号处理、状态估计理论背景的研究生、科研人员及工程技术人员,尤其适用于从事机器人导航、自动驾驶、传感器融合或非线性系统建模与估计等相关领域研究的专业人士。; 使用场景及目标:① 学习和掌握Rao-Blackwellized粒子滤波的基本原理及其在混合线性/非线性系统中的具体实现方法;② 探索并实践RBPF与EKF等先进滤波器的融合策略,以提升多传感器协同SLAM的性能;③ 将文中提供的Matlab代码作为基础,进行算法复现、性能对比和二次开发,服务于自身的科研项目或工程应用。; 阅读建议:此资源以Matlab代码实现为核心,紧密围绕前沿算法研究。建议读者在阅读时,不仅要关注代码细节,更要结合相关理论知识,深入理解RBPF与EKF融合的数学原理和设计思想。通过动手调试代码、修改参数并观察实验结果,可以更深刻地掌握算法精髓,从而达到学以致用的目的。
内容概要:本文围绕基于LPC(线性预测编码)算法的语音基频检测系统展开,详细阐述了从算法原理到系统仿真的完整设计与验证过程。系统通过采样、FIR带通滤波、LPC分析、残差计算、FFT频谱分析及局部最值搜索等步骤,实现对语音信号基频的估计。重点在于利用LPC模型提取声道参数,分离激励信号,并通过残差频谱检测基频。文章完成了组件级(FIR、FFT)、模块级(LPC、残差)、系统级的仿真验证,确保DSP浮点实现与MATLAB参考结果高度一致,误差控制在可接受范围内,为后续硬件实现奠定基础。; 适合人群:具备数字信号处理基础,熟悉MATLAB与DSP开发,从事语音信号处理相关工作的研究人员或工程师,尤其适合有一定算法仿真与嵌入式开发经验的高年级本科生或研究生。; 使用场景及目标:①掌握LPC算法在语音基频检测中的应用原理与实现路径;②学习从组件到系统的分层仿真方法,理解定点与浮点实现差异;③为基于TMS320C6713等DSP平台的语音处理系统开发提供技术参考与调试思路。; 阅读建议:此资源强调理论与实践结合,建议读者结合MATLAB与C语言环境复现各组件与模块,重点关注量化误差、数值稳定性及边界条件处理问题,在仿真中逐步排查与修正错误,深入理解算法鲁棒性设计要点。

807

社区成员

发帖
与我相关
我的任务
社区描述
VB 多媒体
社区管理员
  • 多媒体
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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