public void TakeScreenshot() { if (_bounds.Width == 0 || _bounds.Height == 0) { return; } var bmp = new Bitmap(_bounds.Width, _bounds.Height, PixelFormat.Format32bppArgb); var g = Graphics.FromImage(bmp); _active = false; TopMost = false; Hide(); Opacity = 1; g.CopyFromScreen(_bounds.Left, _bounds.Top, 0, 0, bmp.Size, CopyPixelOperation.SourceCopy); using (var w = new WebClient()) { w.Headers.Add("Authorization", "Client-ID " + ClientId); var values = new NameValueCollection { { "image", Convert.ToBase64String(ImageToByte(bmp)) } }; var response = w.UploadValues("https://api.imgur.com/3/upload.xml", values); var xml = new XmlDocument(); xml.Load(new MemoryStream(response)); if (xml.DocumentElement == null) { MessageBox.Show(@"There was an error uploading."); return; } ; var selectSingleNode = xml.DocumentElement.SelectSingleNode("/data/link"); if (selectSingleNode == null) { return; } var link = selectSingleNode.InnerText; var lv = new LinkViewer { Link = link }; lv.Show(); } }
public void TakeScreenshot() { if (_bounds.Width == 0 || _bounds.Height == 0) return; var bmp = new Bitmap(_bounds.Width, _bounds.Height, PixelFormat.Format32bppArgb); var g = Graphics.FromImage(bmp); _active = false; TopMost = false; Hide(); Opacity = 1; g.CopyFromScreen(_bounds.Left, _bounds.Top, 0, 0, bmp.Size, CopyPixelOperation.SourceCopy); using (var w = new WebClient()) { w.Headers.Add("Authorization", "Client-ID " + ClientId); var values = new NameValueCollection { {"image", Convert.ToBase64String(ImageToByte(bmp))} }; var response = w.UploadValues("https://api.imgur.com/3/upload.xml", values); var xml = new XmlDocument(); xml.Load(new MemoryStream(response)); if (xml.DocumentElement == null) { MessageBox.Show(@"There was an error uploading."); return; }; var selectSingleNode = xml.DocumentElement.SelectSingleNode("/data/link"); if (selectSingleNode == null) return; var link = selectSingleNode.InnerText; var lv = new LinkViewer { Link = link }; lv.Show(); } }