在VB中如何更改picturebox中图片的尺寸,并保存更改后的图片?

可以将图片在picturebox1中打开,将图片的尺寸更改成固定值,并在picturebox2中输出,而且可继续保存在电脑中。
求更改图片尺寸的代码,以及保存picturebox2中更改后的图片的代码,谢谢啦~!
比如100*100的照片如何修改成110*140的照片,单位为像素。
还有就是如何得到picturebox里显示的图片的像素?

VB6.0中可使用PaintPicture 方法在 Form, PictureBox 或 Printer 上绘制图形文件时设置参数更改图片的尺寸。使用SavePicture 语句,从对象或控件(如果有一个与其相关)的 Picture 或 Image 属性中将图形保存到文件中。

    PaintPicture 方法,用以在 Form, PictureBox 或 Printer
    上绘制图形文件(.bmp、.wmf、.emf、.cur、.ico或 .dib)的内容。不支持命名参数。

    语法

    SavePicture 语句,从对象或控件(如果有一个与其相关)的 Picture 或 Image 属性中将图形保存到文件中。

    代码实例:

    Private Sub Command1_Click()

        Picture2.PaintPicture Picture1.Picture, 0, 0, 4000, 3200

    End Sub


    Private Sub Command2_Click()

        SavePicture Picture2.Image, "D:\Pic.bmp"

    End Sub


    Private Sub Form_Load()

        Picture2.AutoRedraw = True

        Picture1.Picture = LoadPicture("D:\p1.jpg")

    End Sub

温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-01-27
这个比较麻烦,可以用二次线形插值的方法来做,但最好还是用外部程序如PS或ACDSEE来完成!
第2个回答  2010-01-27
你是要VB2008的代码?还是VB6的代码呢?不一样的

VB6里PictureBox不具备修改图片尺寸的功能,但设Image控件的Stretch属性为true后就可以了。所以你可以把Image控件放到Picturebox里。

LoadPicture PictureBox1.Picture,"c:\test1.bmp"

Image1.Stretch = True
Image1.Image = PictureBox1.Image
Image1.Width = 200
Image1.Height = 100
SavePicture Image1.Image,"c:\test2.bmp"

VB2008里直接用PictureBox控件就可以搞定。把PictureBox2的SizeMode属性设为StretchImage
PictureBox1.Load("c:\test1.bmp")
PictureBox2.Image = PictureBox1.Image
PictureBox1.Image.Save("C:\test2.bmp")
第3个回答  推荐于2016-04-28
更改尺寸:
Picture2.AutoRedraw = True
Picture2.PaintPicture Picture1.Picture, 0, 0, Picture2.Width, Picture2.Height

保存:
SavePicture Picture2.Image, "e:\tmp\mypicture.bmp"本回答被提问者和网友采纳
相似回答