Загрузка изображения в память - C#
Формулировка задачи:
Есть загрузка файла на прямую в picturebox. Нужно чтоб картинка сначала загружалась в память, а далее уже в picturebox.
Это нужно для того чтоб получить возможность сохранять файл с заменой.
Вот код:
Впервые работаю с памятью, а чтоб научиться - нужно увидеть код и понять как он работает...
Заранее примного благодарен.
private void metroButton19_Click(object sender, EventArgs e) { OpenFileDialog dialog1 = new OpenFileDialog(); dialog1.Filter = "Все изображения (*.JPG;*.PNG;*.JPEG;*.PNG)|*.JPG;*.PNG;*.JPEG;*.PNG"; dialog1.Title = "Выбор файла..."; if (dialog1.ShowDialog() == DialogResult.OK) { images1 = new Bitmap(dialog1.FileName); textBox16.Text = dialog1.FileName; } pictureBox1.Image = images1; }
Решение задачи: «Загрузка изображения в память»
textual
Листинг программы
private void Button3_Click(object sender, EventArgs e) { string image1 = TextBox1.Text; string image2 = TextBox2.Text; //Размеры первой картинки Bitmap result = new Bitmap(images1); //Далее для подгона using (Graphics graphics = Graphics.FromImage(result)) { //Качество graphics.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality; graphics.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic; graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality; //Добавляем изображение 2 в изображение 1 graphics.DrawImage(Image.FromFile(image1), 0, 0, result.Width, result.Height); Image img = Image.FromFile(image2); graphics.DrawImage(img, 0, 0, img.Width / ((float)images2.Width / images1.Width * (metroTrackBar1.Value / 5)), img.Height / ((float)images2.Height / images1.Height * (metroTrackBar1.Value / 5))); } pictureBox3.Image = result; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д