VB改变图片大小的函数

小歆14年前软件源码05307
   Public Function ResizePicture(ByVal sourceImage As Bitmap, _
                ByVal newSize As Size) As Bitmap '调整图片大小(图片源,新尺寸)

        Dim Result_image As New Bitmap(sourceImage, newSize.Width, newSize.Height)
        Dim Gr As Graphics

        Gr = Graphics.FromImage(Result_image)
        Gr.DrawImage(Result_image, 0, 0, newSize.Width, newSize.Height)
        Gr.Save()

        Return Result_image
    End Function

    Public Function CropBitmap(ByVal inputBmp As Bitmap, _
                ByVal cropRectangle As Rectangle) As Bitmap '裁剪位图(输出,矩形)
        '创建一个新的位图对象根据输入的
        Dim newBmp As New Bitmap(cropRectangle.Width, _
                 cropRectangle.Height, _
                 System.Drawing.Imaging.PixelFormat.Format24bppRgb) 'Graphics.FromImage 
                                                'doesn't like Indexed pixel format

        '创建一个图形对象,并将其附加的位图
        Dim newBmpGraphics As Graphics = Graphics.FromImage(newBmp)

        '对输入图像中裁剪矩形绘制的部分
        '图形对象
        newBmpGraphics.DrawImage(inputBmp, _
              New Rectangle(0, 0, cropRectangle.Width, cropRectangle.Height), _
                cropRectangle, _
                GraphicsUnit.Pixel)

        'Return the bitmap
        newBmpGraphics.Dispose()

        'newBmp will have a RawFormat of MemoryBmp because it was created
        'from scratch instead of being based on inputBmp.  Since it is inconvenient
        'for the returned version of a bitmap to be of a different format, now convert
        'the scaled bitmap to the format of the source bitmap
        Return newBmp
    End Function        

相关文章

PCB布线的地线干扰与抑制方法

1.地线的定义 什么是地线?大家在教科书上学的地线定义是:地线是作为电路电位基准点的等电位体。这个定义是不符合实际情况的。实际地线上的电位并不是恒定的。如果用仪表测量一下地线上各点之间的电位,会发现...

C51单片机及C语言知识点必备秘籍

C51单片机及C语言知识点必备秘籍

C51单片机及C语言知识点必备秘籍2 `: }( _# B# m% p+ _6 t, B* k 5 W' z" b2 T. Z: s' m! Q" T ; s0 w2 E& a&nbs...

云流Bt资源搜索3.2,查看资源预览图+列表/超强引擎!

云流Bt资源搜索3.2,查看资源预览图+列表/超强引擎!

云流Bt资源搜索V3.2 软件说明:8 r4 F6 l' n; H6 W& o6 J7 H 1.可查看资源预览图+文件列表。: y! i2 P4 N1 X&...

用VB快速读取TextBox第N行的数据

TextBox 是以 vbCr+vbLf 为分行符号, 如果我们要逐一读取 TextBox 每一行, 无非是寻找 vbCr+vbLf 的所在位置, 然后取出每一行的字串, 不过这个方法不快,而且...

vb导出其他文件资源

vb导出其他文件资源 Dim TempData() As Byte TempDataPath = "C:\...

[DOC]全国计算机二级C语言(完整复习资料)

National Computer Rank Examination 全国计算机等级考试 (2012年9月串讲...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。