Thursday, May 7, 2009

Resize an Image having its source set to URL on Web

Call to function:


bool iscreated = this.getImageByUrl(result.Url, imgdirectory + @"\"+ Myimage.Title);
if (iscreated == true)
{
//-------------------
try
{
string CPath = imgdirectory + @"\" + Myimage.Title;
FileStream s = File.Open(CPath, FileMode.Open, FileAccess.Read);
Image temp = Image.FromStream(s);
Image resizedimage = temp.GetThumbnailImage(110, 90, new
System.Drawing.Image.GetThumbnailImageAbort(ThumbnailCallback), System.IntPtr.Zero);
s.Close();
pictureBoxGoogleImage.Image = resizedimage;
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}

}

public bool ThumbnailCallback()
{
return true;
}

public bool getImageByUrl(string url, string filename)
{

WebResponse response = null;
Stream remoteStream = null;
StreamReader readStream = null;
try
{
WebRequest request = WebRequest.Create(url);
if (request != null)
{
response = request.GetResponse();
if (response != null)
{
remoteStream = response.GetResponseStream();
readStream = new StreamReader(remoteStream);
System.Drawing.Image img = System.Drawing.Image.FromStream(remoteStream);
if (img == null)
return false;
// YOUR CODE HERE: make manipulations with the image object
// save image to disk
///img.Save(filename, System.Drawing.Imaging.ImageFormat.Jpeg);


img.Save(filename);
img.Dispose();
}
}
}
catch (Exception ex)
{ }
finally
{
if (response != null) response.Close();
if (remoteStream != null) remoteStream.Close();
if (readStream != null) readStream.Close();
}

return true;
}

No comments:

Post a Comment