public void ShowMyImage(string fileName, int xSize, int ySize) // вывести картинку в picturebox { if (MyImage != null) { MyImage.Dispose(); // Dispose() - очистка } pictureBox.SizeMode = PictureBoxSizeMode.Zoom; // масштабировать картинку MyImage = new Bitmap(fileName); pictureBox.ClientSize = new Size(xSize, ySize - 40); var wfactor = (double)MyImage.Width / pictureBox.ClientSize.Width; var hfactor = (double)MyImage.Height / pictureBox.ClientSize.Height; var resizeFactor = Math.Max(wfactor, hfactor); ResizeImage = resizeFactor; // получить коэфициент изменения размеров изображения int newImageSizeWidth = (int)(MyImage.Width / resizeFactor); int newImageSizeHeight = (int)(MyImage.Height / resizeFactor); pictureBox.Height = newImageSizeHeight; pictureBox.Width = newImageSizeWidth; pictureBox.Location = new Point((((this.Width - pictureBox.Width) / 2) - 7), 0); // разместить по центру формы pictureBox.Image = MyImage; EnabledSave(); // видимость кнопок }
public void SaveImage() { pictureBox.Image = null; URLnew = Path.GetFileName(URLold); // имя файла MyImage.Save(URLnew); // создать копию картинки MyImage.Dispose(); // очистить bitmap с изначальной картинкой MyImageCopy = new Bitmap(URLnew); pictureBox.Image = MyImageCopy; // загрузить копию картинки pictureBox.Image.Save(URLold); // заменить изначальную картинку MyImageCopy.Dispose(); File.Delete(URLnew); // удалить копию картинки }