Esempio n. 1
0
        private async void ConvertAndSaveGif()
        {
            SaveFileDialog dlg = new SaveFileDialog
            {
                FileName   = "asciiart",
                DefaultExt = ".gif",
                Filter     = "Image files (*.gif)|*.gif|All files (*.*)|*.*"
            };

            if (!(bool)dlg.ShowDialog())
            {
                return;
            }

            VisualStateManager.GoToElementState(GridMain, "GifShown", false);

            var options = CreateOptions();

            DrawingMode mode = GetDrawingMode();

            GifConverter converter = new GifConverter(options, mode);

            try
            {
                Progress <double> progress = new Progress <double>(UpdateProgress);
                await converter.ConvertAndSaveAsync(_source, new Uri(dlg.FileName), progress);
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message, "Operation failed!");
            }
        }
        //
        // GET: /Image/ProductPhoto?ProductPhotoID

        public ActionResult ProductPhoto(int productPhotoID)
        {
            IProductRepository productRepository = new ProductRepository();
            MemoryStream       image             = productRepository.GetProductPhoto(productPhotoID);

            byte[] buffer = image.ToArray();
            Bitmap bmp    = (Bitmap)Bitmap.FromStream(image);

            buffer = GifConverter.ConvertGif(bmp);

            return(new ImageResult {
                Image = buffer, ImageFormat = ImageFormat.Gif
            });
        }
Esempio n. 3
0
        private void Button1_Click(object sender, EventArgs e)
        {
            Button b = sender as Button;

            ASCIICategories categories = CheckboxesIntoCategoriesStruct();

            if (categories.ContainsAtLeastOne())
            {
                using (OpenFileDialog ofd = new OpenFileDialog())
                {
                    ofd.Filter = "Nur gifs (gif) | *.gif";

                    if (ofd.ShowDialog() == DialogResult.OK)
                    {
                        Image gif            = Image.FromStream(ofd.OpenFile());
                        int   teilungsfaktor = (int)numericUpDownDivisor.Value;
                        int   fontsize       = (int)numericUpDownFont.Value;

                        GifConverter gifConverter = new GifConverter(gif, teilungsfaktor, fontsize, categories);

                        using (SaveFileDialog sfd = new SaveFileDialog())
                        {
                            sfd.FileName   = "result";
                            sfd.DefaultExt = "gif";
                            sfd.Filter     = "Gifs (*.gif)|*.gif";

                            if (sfd.ShowDialog() == DialogResult.OK)
                            {
                                if (sfd.FileName != ofd.FileName)
                                {
                                    b.Visible           = false;
                                    b.Enabled           = false;
                                    progressBar.Maximum = gifConverter.TotalFrames;
                                    progressBar.Value   = 0;
                                    _backgroundWorker.RunWorkerAsync(new GifConverterBackgroundArgument()
                                    {
                                        GifConverter = gifConverter, Filename = sfd.FileName
                                    });
                                }
                            }
                        }
                    }
                }
            }
            else
            {
                MessageBox.Show("You need to select at least one type of chars.");
            }
        }