上传图片并生成缩略图(ASP.NET+VB.NET)

王朝asp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

Sub upimages()

Dim iname As String

If Not (fileup.PostedFile Is Nothing) Then

Dim namestr1 As String = (fileup.PostedFile.FileName)

If LCase(fileup.PostedFile.ContentType.ToString()) = "image/pjpeg" Or LCase(fileup.PostedFile.ContentType.ToString()) = "image/jpg" Then

Dim j As Integer = namestr1.LastIndexOf(".")

Dim newname As String = namestr1.Substring(j) '圖片得到後輟名

iname = CStr(Now.ToFileTimeUtc) '隨機的文件名(不會重復)

Dim newnames As String = iname + newname '重新組合文件名

Dim i As Integer = namestr1.LastIndexOf("\") + 1

Dim namestr As String = namestr1.Substring(i)

fileup.PostedFile.SaveAs(Server.MapPath(imagelocal) + "\" + newnames) '保存文件到imagelocal文件夾

'生成縮略圖()

Dim image, sImage As System.Drawing.Image

image = System.Drawing.Image.FromStream(fileup.PostedFile.InputStream)'得到原图

Dim width As Decimal = image.Width过且过'得到原图的宽

Dim height As Decimal = image.Height'得到原图的高

Dim newwidth, newheight As Integer

'设置缩略图的高和宽

If (width > height) Then

newwidth = 150

newheight = CInt(height / width * 150)

Else

newheight = 150

newwidth = CInt(width / height * 150)

End If

sImage = image.GetThumbnailImage(newwidth, newheight, Nothing, IntPtr.Zero)

Dim x As Integer = sImage.Width / 2 - 30

Dim y As Integer = sImage.Height - 20

Dim output As Bitmap = New Bitmap(sImage)

Dim g As Graphics = Graphics.FromImage(output)

' 給縮略圖加上版權信息()

Dim fonts As New Font("Courier New", 9)

g.DrawString("版權信息", fonts, New SolidBrush(Color.Red), x, y)

output.Save(Server.MapPath("Simagelocal") + "\s_" + newnames, System.Drawing.Imaging.ImageFormat.Jpeg)

'保存縮略圖到Simagelocal文件夾

Image1.Visible=true;

Image1.ImageUrl = "Simagelocal" + "\s_" + newnames

Else

Label1.Text = "請選擇jpg類型的圖片"

End If

End If

End Sub

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航