標題:
.net 上傳圖片裁圖
發問:
我想請問各位大大 我要用ASP.NET作上傳圖片 並且檔案上傳時存成我所要的圖片大小 EX:1024*768的圖片或800*600德圖片上傳後我都要存成640*480 的大小 有參考資料 或著範例 越詳細越好 我是用VB的 更新: 更新 2: 酷兒 大大妳可以給我你的email嗎 我本想把程式貼上來 但有字數限制 我可以寄給你然後幫我看看嗎 更新 3: 要是我不上傳 但我資料庫有存A.jpg的圖檔 然後我抓出檔名可以在存成我所要的圖片大小 EX:1024*768的圖片或800*600的圖片上傳後我都要存成640*480 的大小
最佳解答:
如果是用 ASP.NET with VB.NET,作法如下: 引用2個函式庫 Imports System.Drawing Imports System.Drawing.Imaging Private Sub btnUpload(ByVal sender As Object, ByVal e As System.EventArgs) Dim sourceFile as String = Server.MapPath(FileUpload1.FileName)<=取得上傳圖檔名稱 Dim newFile as String = Server.MapPath(”NEW” & FileUpload1.FileName)<=轉換後的新圖檔名稱 FileUpload1.SaveAs(sourceFile)<=將上傳圖檔先儲存到伺服器上 Dim bitSource As Bitmap = New Bitmap(640, 480) Dim imgSource As Image = Image.FromFile(sourceFile) Dim gSource As Graphics = Graphics.FromImage(bitSource) gSource.DrawImage(imgSource, New Rectangle(0, 0, 640, 480)) bitSource.Save(newFile , ImageFormat.Jpeg)<=輸出成640*480圖檔 imgSource.Dispose() gSource.Dispose() bitSource.Dispose() End Sub 2008-06-07 16:40:01 補充: 如果圖片在資料庫內, 可將圖片資料轉成 MemoryStream, 透過FormStream將資料轉換成Imge物件 myTable : 是已經查詢後得到的 DataTable Dim btImage() As Byte = mytable.Rows(0)(圖片欄位名稱) Dim MStream As New System.IO.MemoryStream(btImage) Dim imgSource As Image = Image.FromStream(MStream )
其他解答:
建議用AJAX技術,先在前端處理完圖片縮放的動作,再上傳到伺服器,但伺服器端要檢查上傳檔案的大小或是圖片的長寬。
- 我愛一個人整麼夢到她或愛上我
- ADSL速率&價錢
- 如果是搭統聯客運的價格?
- 山葉GTR可否改裝G4或R1的後腳踏板?
- 名偵探柯南的問題_1
- 我想知道高雄有那幾間有名的婦產科@1@
- 台北哪裡有在賣釣魚線
- 嶺東科技大學 分數
- 2011.7.26 哪一家的 ADSL 好用呢-
- 安裝底版驅動程式個時出現左問題!!!!
此文章來自奇摩知識+如有不便請留言告知
6FE6251C5F3F8A0F