vb image picture 如何按比例改变图片的大小

在vb中,如果用picture控件打开一张电脑中的图片后,如何实现图片按比例缩小至picture控件的大小,而非裁切,只是缩小,谢谢各位了在上述程序的基础上,如果再将图片... 在vb中,如果用picture控件打开一张电脑中的图片后,如何实现图片按比例缩小至picture控件的大小,而非裁切,只是缩小,谢谢各位了
在上述程序的基础上,如果再将图片灰度化,又如何让picture控件中显示的是缩小了的而又灰度化的图片呢
展开
 我来答
lshhjx
2010-05-13 · TA获得超过461个赞
知道小有建树答主
回答量:151
采纳率:100%
帮助的人:153万
展开全部
要用PictureBox控件实现图片缩放功能,必须自己编写代码。
PictureBox控件有一个PaintPicture方法,可以对图片进行诸如缩放,复制等操作。
这个方法比较复杂,其格式为:
DestPic.PaintPicture SrcPic.Picture,DestX,DestY[,DestWidth] _
[,DestHeight][,srcX][,srcY][,srcWidth][,srcHeight][,Opcode]
其中,DestPic为目标图形;SrcPic为源图形;DestX,DestY为目标图形的原点;DestWidth,DestHeight为可选的,分别为目标图形的宽度和高度;srcX,srcY为可选的,为原图形的原点;srcWidth,srcHeight为可选的,分别为原图形的宽度和高度;Opcode也为可选的,用于将按位操作传递到位图,一般省略。
下面举个例子。
在窗体上放两个PictureBox控件Picture1和Picture2,通过Picture1的Picture属性为Picture1加载一幅图片,并且将Picture1的AutoSize属性设为True,这样Picture1的大小就和加载的图形大小相同了,便于比较缩放后的效果。现在我们将Picture1的图片缩小成刚好和Picture2控件的大小一样,代码如下:
Dim x1 As Integer
Dim y1 As Integer
x1=0
y1=0
Picture2.PaintPicture _
Picture1.Picture,x1,y1,Picture2.ScaleWidth,Picture2.ScaleHeight,x1, _
y1,Picture1.ScaleWidth,Picture1.ScaleHeight
上面代码中Picture1为源图形,Picture2为目标图形,x1,y1为源和目标图形的原点,这里都设为0。
p5q5o5w5
2010-05-07 · TA获得超过496个赞
知道大有可为答主
回答量:2546
采纳率:0%
帮助的人:450万
展开全部
Option Explicit
Private Sub Command1_Click()
'里面的是图片的路径改自己的
Picture1 = LoadPicture("d:\wy.bmp")
Picture1.Cls
Picture1.AutoRedraw = True
Picture1.PaintPicture Picture1.Picture, 0, 0, 2000, 3000, , , , , vbSrcCopy
Picture1.Refresh
End Sub
上面这段代码,前提是你确定好Picture1控件的宽和高,这里的宽式2000,高是3000,如果修改Picture1控件的宽和高就相应的修改
Picture1.PaintPicture Picture1.Picture, 0, 0, 2000, 3000, , , , , vbSrcCopy这句的2000和3000的地方就可以了。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
646158013
2010-05-07 · TA获得超过277个赞
知道小有建树答主
回答量:169
采纳率:0%
帮助的人:104万
展开全部
在属性狂找Strech 改为ture 即可。图片自动缩放
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友740e59274
2010-05-07 · TA获得超过783个赞
知道小有建树答主
回答量:549
采纳率:0%
帮助的人:0
展开全部
Private Sub Form_Load()
Dim picW&, picH&
picW = Picture1.Width
picH = Picture1.Height
Picture1.Visible = False
AutoRedraw = True
Picture1.AutoSize = True
PaintPicture Picture1, 0, 0, picW, picH, 0, 0
Picture1.Picture = Me.Image
Picture1.Width = picW
Picture1.Height = picH
Cls
Picture1.Visible = True
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式