實(shí)現(xiàn)代碼如下:
成都創(chuàng)新互聯(lián)公司作為成都網(wǎng)站建設(shè)公司,專注重慶網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì),有關(guān)成都企業(yè)網(wǎng)站建設(shè)方案、改版、費(fèi)用等問(wèn)題,行業(yè)涉及成都攪拌罐車等多個(gè)領(lǐng)域,已為上千家企業(yè)服務(wù),得到了客戶的尊重與認(rèn)可。
Dim img As Image = Image.FromFile("D:\Image\tstImage.jpg") 'tstImage是原先的圖片
Dim grfx As Graphics = Me.CreateGraphics
grfx.DrawImage(img, 0, 0, img.Width * 3, img.Height * 3) '在Form里顯示
Dim imgnew As New System.Drawing.Bitmap(img, img.Height * 3, img.Width * 3) '新建一個(gè)放大的圖片
imgnew.Save("D:\Image\tstNewImage.jpg", System.Drawing.Imaging.ImageFormat.Jpeg) '保存放大后圖片
你可以建一個(gè)Form,然后在Form里拖進(jìn)一個(gè)Button,把上面的代碼放在Button_Click事件里面,執(zhí)行就行了。
對(duì)上面代碼的解釋:
1.要獲取Graphics對(duì)象只能從某一事件的參數(shù)中獲取或者使用窗體和控件對(duì)象的CreateGraphics方法來(lái)獲取-----上面代碼使用Me.CreateGraphics來(lái)引用這個(gè)對(duì)象。
2.加載一個(gè)圖片用Image類的FromFile或者FromStream方法
3.用DrawImage來(lái)顯示一個(gè)圖片,該方法有30多個(gè)重載方法,可以查MSDN了解細(xì)節(jié)。
4.保存時(shí)的一個(gè)問(wèn)題:我們必須先建一個(gè)對(duì)象,用于存縮放圖像。
PictureBox.SizeMode
屬性
默認(rèn)情況下,在
Normal
模式中,Image
置于
PictureBox
的左上角,凡是因過(guò)大而不適合
PictureBox
的任何圖像部分都將被剪裁掉。
使用
StretchImage
值會(huì)使圖像拉伸或收縮,以便適合
PictureBox。
使用
Zoom
的值可以使圖像被拉伸或收縮以適應(yīng)
PictureBox;但是仍然保持原始縱橫比。
使用
AutoSize
值會(huì)使控件調(diào)整大小,以便總是適合圖像的大小。
使用
CenterImage
值會(huì)使圖像居于工作區(qū)的中心。
Pegasus的ImagXpress 8.0控件,支持各種格式文件的加載??丶庋b了右鍵局部區(qū)域放大的功能,要實(shí)現(xiàn)圖片的縮放,把AutoResize屬性設(shè)置為PegasusImaging.WinForms.ImagXpress8.AutoResizeType.CropImage,修改 ZoomFactor的值就可以了。
Sub 圖片縮放()
Dim SngPer As Single = 1 '放大或縮小的比例 放大2倍時(shí)SngPer=2,縮小3倍時(shí) SngPer=1/3
Dim PicOld As Image = Image.FromFile("原圖片路徑")
Dim PicNew As New System.Drawing.Bitmap(PicOld, PicOld.Width * SngPer, PicOld.Height * SngPer)
PicNew.Save("新圖片路徑", Drawing.Imaging.ImageFormat.Jpeg)
End Sub
'初始化的時(shí)候添加事件
Private Sub Main_Load(....) Handles MyBase.Load
AddHandler pic_10.Click, New EventHandler(AddressOf Pic_Click)'pic_10為你自創(chuàng)建圖片的需放大的圖片名稱
End Sub
'自定義控件處理函數(shù)(注意TabIndex的編號(hào))
Protected Sub Pic_10Click(ByVal sender As Object, ByVal e As EventArgs)
'在這放大圖片
pic_10.Width+=20
pic_10.Height+=20
End Sub