private async Task <Tuple <string, Uri> > GetBestImage(IEnumerable <Uri> images) { if (images == null) { return(null); } Bitmap image = null; Uri selected = null; foreach (var img in images) { try { using (var resp = await img.GetWebRequest(15000, 15000).GetResponseAsync()) { image = new Bitmap(resp.GetResponseStream()); selected = img; break; } } catch (Exception ex) { } } if (image == null) { return(null); } float scaleFactor = 0; int width = 0; int height = 0; if (image != null) { scaleFactor = (image.Width > 200) ? ((float)200 / (float)image.Width) : 1; width = (int)(image.Width * scaleFactor); height = (int)(image.Height * scaleFactor); } return(new Tuple <string, Uri>(ImageManipulation.EncodeImage(image, width, height), selected)); }
private static string GetImageData(string imgSrc) { if (!string.IsNullOrEmpty(imgSrc)) { try { var request = HttpWebRequest.Create(imgSrc); request.Timeout = 5000; using (var response = request.GetResponse()) { var img = (Bitmap)Bitmap.FromStream(response.GetResponseStream()); return("data:image/jpg;base64," + ImageManipulation.EncodeImage(img)); } } catch { return(null); } } else { return(null); } }
private void EncodeImage(Bitmap bmp) { ImageBase64Encoded = ImageManipulation.EncodeImage(bmp, 16, 16); }