在互联网上搜索如何自动给图片添加水印的解决方案时,我在stackoverflow上找到了最佳方案。问题链接为C# - Add watermark to the photo by special way。特别感谢Alex Maslakov和adrift。
我对提供的解决方案进行了一些修改,希望将水印放置在图像中心。我按照以下方式修改了adrift提供的解决方案
private void button1_Click(object sender, EventArgs e)
{
using (Image image = Image.FromFile(@"C:\Users\Public\Pictures\Sample Pictures\Desert.jpg"))
using (Image watermarkImage = Image.FromFile(@"C:\Users\Public\Pictures\Sample Pictures\watermark.png"))
using (Graphics imageGraphics = Graphics.FromImage(image))
using (Brush watermarkBrush = new TextureBrush(watermarkImage))
{
int x = (image.Width - watermarkImage.Width)/2;
int y = (image.Height - watermarkImage.Height)/2;
imageGraphics.FillRectangle(watermarkBrush, new Rectangle(new Point(x, y), watermarkImage.Size));
image.Save(@"C:\Users\Public\Pictures\Sample Pictures\Desert_watermark.jpg");
}
}
但水印没有正确地放置在图像中心(见下面的图像)。
请纠正我...
谢谢