C# 如何将位图粘贴到另一个位图中,并在其底部向其写入文本?

C# 如何将位图粘贴到另一个位图中,并在其底部向其写入文本?,c#,graphics,bitmap,C#,Graphics,Bitmap,我需要的是创建一个与位图文件具有更大高度和相同宽度的新位图,将位图文件内容粘贴到新位图文件中,并在位图文件底部写入一个字符串 这是我当前的代码,我不知道如何在文件底部写入/也不知道如何将位图内容粘贴到另一个位图中,谢谢您的帮助!: Bitmap bmp = new Bitmap(filePathSave); RectangleF rectf = new RectangleF(0, 0, bmp.Width, bmp.Height); Graphics g = Graphics.FromIma

我需要的是创建一个与位图文件具有更大高度和相同宽度的新位图,将位图文件内容粘贴到新位图文件中,并在位图文件底部写入一个字符串

这是我当前的代码,我不知道如何在文件底部写入/也不知道如何将位图内容粘贴到另一个位图中,谢谢您的帮助!:

Bitmap bmp = new Bitmap(filePathSave);

RectangleF rectf = new RectangleF(0, 0, bmp.Width, bmp.Height);
Graphics g = Graphics.FromImage(bmp);

g.SmoothingMode = SmoothingMode.AntiAlias;
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
g.PixelOffsetMode = PixelOffsetMode.HighQuality;
g.TextRenderingHint = TextRenderingHint.AntiAliasGridFit;

StringFormat format = new StringFormat()
{
     Alignment = StringAlignment.Center,
     LineAlignment = StringAlignment.Center
};

g.DrawString("yourText", new Font("Tahoma", 20), Brushes.Black, rectf, format);

// Now save or use the bitmap
bmp.Save($"Temp/{Path.GetFileNameWithoutExtension(filePathSave)}_1.bmp", ImageFormat.Bmp);

// Flush all graphics changes to the bitmap
g.Flush();

基本上,我所做的是使用我发现的一个空白按比例调整图像大小,然后按照@TaW告诉我的做。谢谢

        using (var image = Image.FromFile(filePathSave))
        using (var newImage = Logic.ScaleImage(image, image.Width, image.Height + 125))
        {
            Bitmap destBitmap = new Bitmap(image.Width + 150, image.Height + 125, System.Drawing.Imaging.PixelFormat.Format24bppRgb);
            Graphics g = Graphics.FromImage(destBitmap);

            g.SmoothingMode = SmoothingMode.AntiAlias;
            g.InterpolationMode = InterpolationMode.HighQualityBicubic;
            g.PixelOffsetMode = PixelOffsetMode.HighQuality;
            g.TextRenderingHint = TextRenderingHint.AntiAliasGridFit;

            g.Clear(Color.White);
            g.DrawImage(newImage, 0, 0);

            g.DrawString(sneakerName, new Font("Arial", 16), Brushes.Black, 5, image.Height + y);
            // Now save or use the bitmap
            //g.Save();
            destBitmap.Save($"{saveTo}/{Path.GetFileNameWithoutExtension(filePathSave)}.jpeg", ImageFormat.Jpeg);

            // Flush all graphics changes to the bitmap
            g.Flush();
        }

你应该按计划去做。新位图不应是副本,而应是新的或更大的位图。然后将旧的图像拉入其中,然后做拉绳。so
新位图(filePathSave)应该是
新位图(newWidth、newHeight)
nad应该有一个
g.DrawImage(oldBmp,0,0)