2014-11-06 4 views

답변

0

이것은 이미지 축소판을 다시 조정하는 방법의 예이지만 축소판 그림이 아닌 전체 그림을 검색하도록 수정할 수 있습니다.

Public Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest 
     Dim ID As String = HttpContext.Current.Request.QueryString("HotelCode") 
     Dim con As String = ConfigurationManager.ConnectionStrings("hotelbedsConnectionString").ConnectionString 
     Dim logCon As New SqlConnection(con) 
     Dim cmd As New SqlCommand("Select ImagePath From HOTEL_IMAGES WHERE HotelCode = @HotelCode AND Order_='1'", logCon) 
     cmd.CommandType = CommandType.Text 
     cmd.Parameters.Add("HotelCode", SqlDbType.Int, 0).Value = ID 
     logCon.Open() 
     Dim MyData() As Byte 
     Dim wc = New WebClient 
     Dim path As String = cmd.ExecuteScalar() 
     If path Is Nothing Then 
      MyData = wc.DownloadData("http://www.blogasp.net/Images/nopic.jpg") 
     Else 
      MyData = wc.DownloadData("http://www.hotelbeds.com/giata/" & path) 
     End If 
     Dim ms As System.IO.MemoryStream = New System.IO.MemoryStream(MyData) 
     Dim img As System.Drawing.Image = Image.FromStream(ms) 
     Dim w As Integer = 100 '*** Fix Width ***' 
     Dim ratio As Double = img.Height/img.Width 
     Dim h As Integer = ratio * w 
     Dim thumbnail As Image = New Bitmap(w, h) 
     Dim graphics__2 As Graphics = Graphics.FromImage(thumbnail) 
     graphics__2.InterpolationMode = InterpolationMode.HighQualityBicubic 
     graphics__2.SmoothingMode = SmoothingMode.HighQuality 
     graphics__2.PixelOffsetMode = PixelOffsetMode.HighQuality 
     graphics__2.CompositingQuality = CompositingQuality.HighQuality 
     graphics__2.DrawImage(img, 0, 0, w, h) 
     Dim info As ImageCodecInfo() = ImageCodecInfo.GetImageEncoders() 
     Dim encoderParameters As EncoderParameters 
     encoderParameters = New EncoderParameters(1) 
     encoderParameters.Param(0) = New EncoderParameter(Encoder.Quality, 100L) 
     thumbnail.Save(HttpContext.Current.Response.OutputStream, info(1), encoderParameters) 
     logCon.Close() 
     Finalize() 
    End Sub