在C#中,可以使用System.Drawing命名空间中的类和方法来实现图像水印效果。以下是一个简单的示例,演示了如何将一张图像作为水印添加到另一张图像上:
using System;
using System.Drawing;
namespace ImageWatermark
{
class Program
{
static void Main(string[] args)
{
// 原始图像路径
string originalImagePath = "path/to/your/original/image.jpg";
// 水印图像路径
string watermarkImagePath = "path/to/your/watermark/image.png";
// 输出图像路径
string outputImagePath = "path/to/your/output/image.jpg";
// 加载原始图像和水印图像
using (Image originalImage = Image.FromFile(originalImagePath))
using (Image watermarkImage = Image.FromFile(watermarkImagePath))
{
// 创建一个新的Bitmap对象,用于存储带有水印的图像
using (Bitmap newImage = new Bitmap(originalImage.Width, originalImage.Height))
using (Graphics graphics = Graphics.FromImage(newImage))
{
// 绘制原始图像
graphics.DrawImage(originalImage, new Rectangle(0, 0, originalImage.Width, originalImage.Height));
// 设置水印图像的位置和大小
int x = 10; // 距离原始图像左边的距离
int y = 10; // 距离原始图像顶部的距离
int width = watermarkImage.Width;
int height = watermarkImage.Height;
// 绘制水印图像
graphics.DrawImage(watermarkImage, new Rectangle(x, y, width, height));
// 保存带有水印的图像
newImage.Save(outputImagePath);
}
}
}
}
}
这个示例中,我们首先加载原始图像和水印图像,然后创建一个新的Bitmap对象,用于存储带有水印的图像。接着,我们使用Graphics对象绘制原始图像和水印图像。最后,我们将带有水印的图像保存到指定的输出路径。
注意:请确保将示例中的文件路径替换为实际的文件路径。