コード例 #1
0
        private void myCaptureSource_CaptureImageCompleted(object sender, CaptureImageCompletedEventArgs e)
        {
            mySnapshotBrush.ImageSource = e.Result;
            myImage = e.Result;

            #region Get Image Bytes
            byte[] imageBytes = null;
            if (myImage != null)
            {
                //byte[] buffer = myImage.ToByteArray();

                //SaveFileDialog d = new SaveFileDialog();
                //d.ShowDialog();
                //PngEncoder.SaveToPNG(myImage,d);

                //imageBytes = ToByteArray(myImage);


                PngEncoder encoder = new PngEncoder();
                using (MemoryStream ms = new MemoryStream())
                {
                    var itImage = myImage.ToImage();
                    encoder.Encode(itImage, ms);

                    imageBytes = ms.ToArray();
                }
            }
            if (imageBytes == null)
            {
                imageBytes = new byte[100000];
            }

            string strBytes = "";
            if (imageBytes != null)
            {
                strBytes = Convert.ToBase64String(imageBytes);
            }
            string dataString = string.Format("cameraInitiator={0}&id={1}&data={2}&unused={3}", this.CameraInitiator, this.ReferenceID, strBytes, DateTime.Now.Millisecond);

            #endregion

            PostToUri(this.UriSaveCameraImage, dataString);

            //Uri serviceUri = new Uri(this.UriSaveCameraImage, UriKind.Relative);
            //WebClient webClient = new WebClient();
            //webClient.Headers["Content-Type"] = "application/x-www-form-urlencoded";
            //webClient.OpenWriteCompleted += new OpenWriteCompletedEventHandler(webClient_OpenWriteCompleted);
            //webClient.OpenWriteAsync(serviceUri, "POST", dataString);
        }
コード例 #2
0
        public Stream GetStream()
        {
            Stream stream;

            if (!_init)
            {
                OnImageError("Error: Image has not been initialized");
                stream = null;
            }
            else
            {
                stream = PngEncoder.Encode(_buffer, _width, _height);
            }

            return(stream);
        }