コード例 #1
0
        private void RestoreOriginal(object sender, RoutedEventArgs e)
        {
            DisableUI();
            WriteableBitmap resultWriteableBitmap = OriginalWriteableBitmap.Clone();

            resultImage.Source = resultWriteableBitmap;

            if (resultWriteableBitmap.PixelWidth * resultWriteableBitmap.PixelHeight > MAX_SIZE)
            {
                LowPerformanceMode = true;
                Image = new LowPerformanceImage(resultWriteableBitmap);
            }
            else
            {
                LowPerformanceMode = false;
                Image = new HighPerformanceImage(resultWriteableBitmap);
            }

            imageModeComboBox.SelectedItem = Image.ImageMode;

            Task.Run(() => ProcessImage());
        }
コード例 #2
0
        private void LoadImage(object sender, RoutedEventArgs e)
        {
            OpenFileDialog openFileDialog = new OpenFileDialog();

            openFileDialog.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
            openFileDialog.Filter           = "Image Files|*.jpg;*.jpeg;*.png;*.bmp";

            if (openFileDialog.ShowDialog() == true)
            {
                if (openFileDialog.FileName.Length > 0)
                {
                    DisableUI();

                    OriginalWriteableBitmap = BitmapFactory.FromStream(new MemoryStream(File.ReadAllBytes(openFileDialog.FileName)));

                    originalImage.Source = OriginalWriteableBitmap;

                    WriteableBitmap resultWriteableBitmap = OriginalWriteableBitmap.Clone();
                    resultImage.Source = resultWriteableBitmap;

                    if (resultWriteableBitmap.PixelWidth * resultWriteableBitmap.PixelHeight > MAX_SIZE)
                    {
                        LowPerformanceMode = true;
                        Image = new LowPerformanceImage(resultWriteableBitmap);
                    }
                    else
                    {
                        LowPerformanceMode = false;
                        Image = new HighPerformanceImage(resultWriteableBitmap);
                    }

                    imageModeComboBox.SelectedItem = Image.ImageMode;

                    Task.Run(() => ProcessImage());
                }
            }
        }