Mã: Private Shared Function FixedSize(ByVal imgPhoto As Image, ByVal Width As Integer, ByVal Height As Integer) As Image Dim sourceWidth As Integer = imgPhoto.Width Dim sourceHeight As Integer = imgPhoto.Height Dim sourceX As Integer = 0 Dim sourceY As Integer = 0 Dim destX As Integer = 0 Dim destY As Integer = 0 Dim nPercent As Single = 0 Dim nPercentW As Single = 0 Dim nPercentH As Single = 0 nPercentW = (CSng(Width) / CSng(sourceWidth)) nPercentH = (CSng(Height) / CSng(sourceHeight)) 'if we have to pad the height pad both the top and the bottom 'with the difference between the scaled height and the desired height If nPercentH < nPercentW Then nPercent = nPercentH destX = CInt(Math.Truncate((Width - (sourceWidth * nPercent)) / 2)) Else nPercent = nPercentW destY = CInt(Math.Truncate((Height - (sourceHeight * nPercent)) / 2)) End If Dim destWidth As Integer = CInt(Math.Truncate(sourceWidth * nPercent)) Dim destHeight As Integer = CInt(Math.Truncate(sourceHeight * nPercent)) Dim bmPhoto As New Bitmap(Width, Height, PixelFormat.Format24bppRgb) bmPhoto.SetResolution(imgPhoto.HorizontalResolution, imgPhoto.VerticalResolution) Dim grPhoto As Graphics = Graphics.FromImage(bmPhoto) grPhoto.Clear(Color.Linen) grPhoto.InterpolationMode = InterpolationMode.HighQualityBicubic grPhoto.DrawImage(imgPhoto, New Rectangle(destX, destY, destWidth, destHeight), New Rectangle(sourceX, sourceY, sourceWidth, sourceHeight), GraphicsUnit.Pixel) grPhoto.Dispose() Return bmPhoto End Function Gọi hàm: Mã: Dim resized = FixedSize(imgPath, 200, 200) resized.Save(NewCopy, ImageFormat.Jpeg) resized.Dispose()