我有一个图片框,并在其中打印内容。我想知道以毫米为单位的确切文本宽度。但是我得到了错误的价值。这是我的代码
me.scalemode = vbmillimeters
picturebox.scalemode = vbmillimeters
picturebox.fontname = "Arial"
picturebox.fontsize = 12
debug.print textwidth("AB.C.D.E. FGHIJKLMN")
当我在纸张打印输出中进行测量时,它是48毫米
但显示32.97毫米
请帮我哪里错了。
提前致谢
最佳答案
如果需要在图片框上打印文本的宽度,请使用:PictureBox.textwidth("AB.C.D.E. FGHIJKLMN")
您实际上在做什么:textwidth("AB.C.D.E. FGHIJKLMN")
正在测量打印到窗体(Me
)的相同文本。
这样可以减少错误的发生:
Dim TextWidth as Single
With PictureBox
.ScaleMode = vbMillimeters
.FontName = "Arial"
.FontSize = 12
TextWidth = .TextWidth("AB.C.D.E. FGHIJKLMN")
End With
因为如果您随后要切换到纸张,则还可以轻松切换上下文:
With SelectedPrinter....
关于vb6 - 无法以毫米为单位正确显示textwidth vb6,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43422853/