如果用Image控件,需要改变Image控件的位置和大小。
以下是用Picture1缩放图片的代码:
Set sp = LoadPicture("E:\a.jpg") '加载图片
w0 = Round(sp.Width / 2540 * 1440) '图片宽度(单位twip)
h0 = Round(sp.Height / 2540 * 1440) '图片高度(单位twip)
With Picture1
.ScaleMode = 1 '坐标单位twip
.AutoRedraw = True
If w0 < .ScaleWidth And h0 < .ScaleHeight Then '图片小于Picture1
.PaintPicture sp, (.ScaleWidth - w0) / 2, (.ScaleHeight - h0) / 2 '图片居中
Else
If w0 / h0 > .ScaleWidth / .ScaleHeight Then '上下留空白
w1 = .ScaleWidth
h1 = h0 * w1 / w0
Else '左右留空白
h1 = .ScaleHeight
w1 = w0 * h1 / h0
End If
'显示缩放的图片
.PaintPicture sp, (.ScaleWidth - w1) / 2, (.ScaleHeight - h1) / 2, w1, h1
End If
End With