.net上传图片并按照宽度高度比例缩小显示
2010-09-08 14:22
585 查看
Try
Open1.Filter = "位图 文件 (*.bmp),jpg 文件 (*.jpg)|*.bmp;*.jpg"
If Open1.ShowDialog() = Windows.Forms.DialogResult.OK Then
If Open1.CheckFileExists Then
'PictureBox2.Image = Image.FromFile(Open1.FileName)
'
Dim simage As Image
simage = Image.FromFile(Open1.FileName)
Dim width As Decimal = simage.Width '得到原图的宽
Dim height As Decimal = simage.Height '得到原图的高
Dim newwidth, newheight As Integer
'设置缩略图的高和宽
If width < 800 And height < 500 Then
newwidth = width
newheight = height
Else
If (width > height) Then
newwidth = 700
newheight = CInt(height / width * 700)
Else
newheight = 500
newwidth = CInt(width / height * 500)
End If
End If
Dim bmp As New Bitmap(newwidth, newheight)
Dim g As Graphics = Graphics.FromImage(bmp)
g.InterpolationMode = Drawing2D.InterpolationMode.High
g.SmoothingMode = Drawing2D.SmoothingMode.HighQuality
' g.Clear(Color.Blue)
'simage = simage.GetThumbnailImage(newwidth, newheight, Nothing, IntPtr.Zero)
g.DrawImage(simage, New Rectangle(0, 0, newwidth, newheight), New Rectangle(0, 0, width, height), GraphicsUnit.Pixel)
PictureBox2.Image = bmp
GroupBox3.Width = PictureBox2.Width + 30
Else
MsgBox("您所选择的文件无效!", MsgBoxStyle.Information, "无效文件")
Exit Sub
End If
End If
Catch ex As Exception
MsgBox("发生错误,错误原因:" & ex.ToString)
End Try
Open1.Filter = "位图 文件 (*.bmp),jpg 文件 (*.jpg)|*.bmp;*.jpg"
If Open1.ShowDialog() = Windows.Forms.DialogResult.OK Then
If Open1.CheckFileExists Then
'PictureBox2.Image = Image.FromFile(Open1.FileName)
'
Dim simage As Image
simage = Image.FromFile(Open1.FileName)
Dim width As Decimal = simage.Width '得到原图的宽
Dim height As Decimal = simage.Height '得到原图的高
Dim newwidth, newheight As Integer
'设置缩略图的高和宽
If width < 800 And height < 500 Then
newwidth = width
newheight = height
Else
If (width > height) Then
newwidth = 700
newheight = CInt(height / width * 700)
Else
newheight = 500
newwidth = CInt(width / height * 500)
End If
End If
Dim bmp As New Bitmap(newwidth, newheight)
Dim g As Graphics = Graphics.FromImage(bmp)
g.InterpolationMode = Drawing2D.InterpolationMode.High
g.SmoothingMode = Drawing2D.SmoothingMode.HighQuality
' g.Clear(Color.Blue)
'simage = simage.GetThumbnailImage(newwidth, newheight, Nothing, IntPtr.Zero)
g.DrawImage(simage, New Rectangle(0, 0, newwidth, newheight), New Rectangle(0, 0, width, height), GraphicsUnit.Pixel)
PictureBox2.Image = bmp
GroupBox3.Width = PictureBox2.Width + 30
Else
MsgBox("您所选择的文件无效!", MsgBoxStyle.Information, "无效文件")
Exit Sub
End If
End If
Catch ex As Exception
MsgBox("发生错误,错误原因:" & ex.ToString)
End Try
相关文章推荐
- 一个可以使得上传的图片大小按照指定的宽度,高度自动按比例进行缩放的函数(C#)
- 如何让FLEX Image控件的高度和宽度不按照比例缩小?
- .Net上传图片按比例自动缩小或放大
- .Net中上传图片按比例自动缩小或放大
- .Net中上传图片按比例自动缩小或放大
- 网页图片变形解决方法-固定宽度高度按比例自动缩小CSS
- .Net实现上传图片按比例自动缩小或放大的方法
- 图片不变形,按照等比例缩小或扩大显示
- 图片宽度全屏显示 高度按比例显示()
- 按比例缩小图片(高度按缩小按宽度的缩小比例缩小)
- .net上传图片按比例自动缩小或放大
- .Net实现上传图片按比例自动缩小或放大的方法
- 微信小程序实现image组件图片自适应宽度比例显示的方法
- Jquery控制图片宽度及高度 ,做到等比例缩放
- PHP多图片上传并按照比例修改像素
- Javascript按比例压缩图片,解决onload无法读取图片的高度和宽度问题
- 动态获取缩放图片的长度、宽度和显示比例
- Picasso处理图片,按照设置的宽度比例来缩放
- JAVASCRIPT 等比例缩放图片 限定最大宽度和最大高度
- js比例缩小显示图片