我需要它,以便在我的代码中,如果某些评估结果为真,则会更改图像的位置和大小。
到目前为止,这是我的代码:
With picValueTwentySix
.Location = New Point(302, 134)
.Size = New System.Drawing.Size(169, 40)
.SizeMode = PictureBoxSizeMode.Zoom
End With
有人知道为什么不调整大小吗?
谢谢!
正如大家已经提到的,您需要处理图像。这是我为简化易用性而编写的功能。
Public Function ResizeImage(ByVal image As Image, ByVal size As Size, Optional ByVal preserveAspectRatio As Boolean = True) As Image
Try
Dim newWidth As Integer
Dim newHeight As Integer
If preserveAspectRatio Then
Dim originalWidth As Integer = image.Width
Dim originalHeight As Integer = image.Height
Dim percentWidth As Single = CSng(size.Width) / CSng(originalWidth)
Dim percentHeight As Single = CSng(size.Height) / CSng(originalHeight)
Dim percent As Single = IIf(percentHeight < percentWidth, percentHeight, percentWidth)
newWidth = CInt(originalWidth * percent)
newHeight = CInt(originalHeight * percent)
Else
newWidth = size.Width
newHeight = size.Height
End If
Dim newImage As Image = New Bitmap(newWidth, newHeight)
Using graphicsHandle As Graphics = Graphics.FromImage(newImage)
graphicsHandle.InterpolationMode = InterpolationMode.HighQualityBicubic
graphicsHandle.DrawImage(image, 0, 0, newWidth, newHeight)
End Using
Return newImage
Catch ex As Exception
Return image
End Try
End Function
基本上,它会按照您要求的尺寸创建一个新的空白图形,然后将原始图像复制到该图像上,同时缩放它以适合它。我认为,如果您一次踩到一条线,您应该会自我解释,但请问您是否有问题...
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句