Exemplo n.º 1
0
        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();
            }
        }
Exemplo n.º 2
0
        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();
            }
        }