Я искал в Интернете несколько кодов и нашел этот ответ в StackOverFlow
https://stackoverflow.com/a/6501997/3264464
Код: Выделить всё
static public Bitmap ScaleImage(Image image, int maxWidth, int maxHeight)
{
var ratioX = (double)maxWidth / image.Width;
var ratioY = (double)maxHeight / image.Height;
var ratio = Math.Min(ratioX, ratioY);
var newWidth = (int)(image.Width * ratio);
var newHeight = (int)(image.Height * ratio);
var newImage = new Bitmap(newWidth, newHeight);
Graphics.FromImage(newImage).DrawImage(image, 0, 0, newWidth, newHeight);
Bitmap bmp = new Bitmap(newImage);
return bmp;
}
и в обработчике событий Form1_Resize я написал:
Код: Выделить всё
private void Form1_Resize(object sender, EventArgs e)
{
Bitmap NewImg = ScaleImage(pictureBox1.Image, 1000, 1000);
pictureBox1.Image = NewImg;
}
ОБНОВЛЕНИЕ: попробовал все с помощью те же результаты
Посмотрите на изображения ниже. Черная точка находится слева от PictureBox, и она не должна перемещаться. То, что вы предложили, хорошо, но я хочу, слева. большинства изображений в начале остается на одной и той же точке
Перед изменением размера:

< strong>После изменения размера
[img]https://i.sstatic .net/FwhOn.png[/img]
Подробнее здесь: https://stackoverflow.com/questions/239 ... m-resizing