drawImage обрезает изображение

Всем привет!

Наношу на одно изображение другое, но при этом одинаковые изображения по параметрам (см. прикрепленные изображения) наносятся по-разному. Одно обрезается, другое нет.

g.DrawImage(img, stampX, stampY, w / 5, w / 5);
//img - Image.FromFile(...)
//stampX, stampY - координаты

up:

using (Image bgImage = Image.FromFile(pictureBox.ImageLocation))
                {
                    int h = bgImage.Height;
                    int w = bgImage.Width;
                    bmp = new Bitmap(w, h);
                    using (waterMarkImg = Image.FromFile(mark))
                    {
                        using (Graphics g = Graphics.FromImage(bmp))
                        {
                            stampX = x;
                            stampY = y;
                            g.DrawImage(bgImage, 0, 0, w, h);
                            g.DrawImage(waterMarkImg, stampX, stampY, w / 5, w / 5);
                            pictureBox.Image = bmp;
                        }
                    }
                }

Может кто сталкивался с такой же проблемой.

Параметры ищображения


Ответы (1 шт):

Автор решения: Yotic

Этот код нормально наносит изображение:

using System.Drawing;
using (var firstImage = Image.FromFile(@"C:\DooD.Inc\VS\Images\firstImage.png"))
using (var secondImage = Image.FromFile(@"C:\DooD.Inc\VS\Images\secondImage.png"))
using (var tempFirstBitmap = new Bitmap(firstImage.Width, firstImage.Height))
using (Graphics g = Graphics.FromImage(tempFirstBitmap))
{
    g.DrawImage(firstImage, 0, 0);
    g.DrawImage(secondImage, 800, 900, 200, 100);
    tempFirstBitmap.Save("C:\\image.png");
}

Получаю из:
firstImage -
введите сюда описание изображения

secondImage -

введите сюда описание изображения

Это: введите сюда описание изображения

Вероятно ошибка из-за невидимых границ изображения, или из-за неправильных аргументов (stampX, stampY, w / 5, w / 5), например, почему у вас два раза w / 5?

→ Ссылка