{ OpenFileDialog opendialog; SaveFileDialog savedialog; Image target_image; int width; int height; public Form1() { InitializeComponent(); opendialog = new OpenFileDialog(); opendialog.RestoreDirectory = true; opendialog.InitialDirectory = "C:\\"; opendialog.FilterIndex = 1; opendialog.Filter = "jpg Files (*.jpg)|*.jpg|gif Files (*.gif)|*.gif|png Files (*.png)|*.png |bmp Files (*.bmp)|*.bmp"; savedialog = new SaveFileDialog(); savedialog.RestoreDirectory = true; savedialog.InitialDirectory = "C:\\"; savedialog.FilterIndex = 1; savedialog.Filter = "jpg Files (*.jpg)|*.jpg|gif Files (*.gif)|*.gif|png Files (*.png)|*.png |bmp Files (*.bmp)|*.bmp"; } private void btnOpen_Click(object sender, EventArgs e) { try { if (opendialog.ShowDialog() == DialogResult.OK) { target_image = Image.FromFile(opendialog.FileName); width = target_image.Width; height = target_image.Height; } target_image = Resize(width, height); } catch (Exception ex) { MessageBox.Show("Error Occured, " + ex.Message); } } private new Bitmap Resize(int target_width, int target_height) { target_width = 300; target_height = 500; Rectangle rectangle = new Rectangle(0, 0, target_width, target_height); Bitmap destImage = new Bitmap(target_width, target_height); destImage.SetResolution(target_image.HorizontalResolution, target_image.VerticalResolution); using (var g = Graphics.FromImage(destImage)) { g.CompositingMode = CompositingMode.SourceCopy; g.CompositingQuality = CompositingQuality.HighQuality; g.InterpolationMode = InterpolationMode.HighQualityBicubic; g.SmoothingMode = SmoothingMode.HighQuality; g.PixelOffsetMode = PixelOffsetMode.HighQuality; using (var wrapmode = new ImageAttributes()) { wrapmode.SetWrapMode(WrapMode.TileFlipXY); g.DrawImage(target_image, rectangle, 0, 0, target_image.Width, target_image.Height, GraphicsUnit.Pixel); } } return destImage; } private void btnSave_Click(object sender, EventArgs e) { if (savedialog.ShowDialog() == DialogResult.OK) { target_image.Save(savedialog.FileName); } } }
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)