Encode() public method

Encodes the data of the specified image and writes the result to the specified stream.
/// is null (Nothing in Visual Basic). /// - or - /// is null (Nothing in Visual Basic). ///
public Encode ( ExtendedImage image, Stream stream ) : void
image ExtendedImage The image, where the data should be get from. /// Cannot be null (Nothing in Visual Basic).
stream System.IO.Stream The stream, where the image data should be written to. /// Cannot be null (Nothing in Visual Basic).
return void
Ejemplo n.º 1
0
        public static void SaveImage(this UIElement uiElement)
        {
            var dialog = new SaveFileDialog
            {
                DefaultExt = ".png",
                Filter = "PNG | *.png | JPG | *.jpg",
            };
            var save = dialog.ShowDialog();
            if (save.HasValue && save.Value)
            {
                var saveStream = dialog.OpenFile();

                var bitmap = new WriteableBitmap(uiElement, new TranslateTransform());
                var image = bitmap.ToImage();
                if (dialog.SafeFileName.EndsWith(".png"))
                {
                    var encoder = new PngEncoder();
                    encoder.Encode(image, saveStream);
                }
                else if (dialog.SafeFileName.EndsWith(".jpg"))
                {
                    var encoder = new JpegEncoder();
                    encoder.Encode(image, saveStream);
                }

                saveStream.Close();
            }
        }
        public static void SaveJpeg(this WriteableBitmap bitmap, Stream targetStream, int targetWidth, int targetHeight, int orientation, int quality)
        {
            ExtendedImage image = null;
            var disp = bitmap.Dispatcher;
            using (var are = new AutoResetEvent(false))
            {
                disp.BeginInvoke(() =>
                {
                    image = bitmap.ToImage();
                    are.Set();
                });
                are.WaitOne();
            }

            var resizer = new NearestNeighborResizer();
            var imageBaseOut = new ExtendedImage(targetWidth, targetHeight);
            resizer.Resize(image, imageBaseOut, targetWidth, targetHeight);
            var encoder = new JpegEncoder {Quality = quality};
            encoder.Encode(imageBaseOut, targetStream);
        }
Ejemplo n.º 3
0
        void saveImage(ImageTools.Image image, String filename, int num)
        {
            // get a path to save pictures
            String myPictures = Environment.GetFolderPath(Environment.SpecialFolder.MyPictures);

            // create a new directory at that path
            DirectoryInfo lapseDir = Directory.CreateDirectory(myPictures + "\\" + filename + "\\" + camera.FriendlyName);

            // save the picture
            using (Stream stream = File.Create(lapseDir.FullName + "\\" + filename + num + ".jpg"))
            {

                // Declare jpeg encoder
                var encoder = new JpegEncoder();

                // Set the image quality
                encoder.Quality = 90;

                // Finally encode raw bitmap and save it as a jpg image
                encoder.Encode(image, stream);

                // Close the stream
                stream.Close();
            }
        }