📜  调整图像大小并添加水印c#(1)

📅  最后修改于: 2023-12-03 15:41:47.818000             🧑  作者: Mango

调整图像大小并添加水印C#

在现代应用程序中,调整图像大小和添加水印都是常见的需求。在这篇文章中,我们将探讨如何使用C#编写代码来实现这些功能,并使用Markdown格式为您呈现。

调整图像大小

我们使用System.Drawing命名空间中的Bitmap类来打开我们的图像。然后,我们将使用Graphics对象进行图像大小的调整。以下是使用C#代码调整图像大小的示例:

// 1. 打开图像
var originalImage = new Bitmap(@"original_image.jpg");

// 2. 创建新的图像对象,并设置大小
var newSize = new Size(800, 600);
var newImage = new Bitmap(newSize.Width, newSize.Height);

// 3. 使用 Graphics 对象调整图像尺寸。将原始图像绘制到新图像对象上。
using (var graphics = Graphics.FromImage(newImage))
{
    graphics.DrawImage(originalImage, new Rectangle(0, 0, newSize.Width, newSize.Height));
}

// 4. 保存新图像到磁盘
newImage.Save(@"resized_image.jpg", ImageFormat.Jpeg);

我们首先打开原始图像,然后创建一个新的空白图像,并将其大小设置为所需大小。接下来,我们使用Graphics对象的DrawImage()方法将原始图像绘制到新图像对象上。最后,我们将新的调整大小的图像保存到磁盘。

添加水印

我们将水印添加到图像的过程与调整图像大小的过程十分相似。我们使用Graphics对象来在图像上绘制文字或图像。以下是一个使用C#代码添加水印的示例:

// 1. 打开图像
var originalImage = new Bitmap(@"original_image.jpg");

// 2. 创建一个用于绘制水印的 Graphics 对象
using (var graphics = Graphics.FromImage(originalImage))
{
    // 3. 添加文字水印
    var watermarkText = "My Watermark";
    var font = new Font("Arial", 16);
    var brush = new SolidBrush(Color.FromArgb(128, 255, 255, 255));
    var point = new PointF(10, originalImage.Height - 50);
    graphics.DrawString(watermarkText, font, brush, point);

    // 4. 添加图像水印
    var watermarkImage = new Bitmap(@"watermark_image.png"); // 水印图像
    var watermarkSize = new Size(originalImage.Width / 2, originalImage.Height / 2);
    var watermarkLocation = new Point(originalImage.Width - watermarkSize.Width - 10, 10);
    graphics.DrawImage(watermarkImage, new Rectangle(watermarkLocation, watermarkSize));
}

// 5. 保存带水印的图像
originalImage.Save(@"watermarked_image.jpg", ImageFormat.Jpeg);

我们首先打开原始图像。然后,我们创建一个Graphics对象,并使用DrawString()方法在底部添加文本水印。我们还使用DrawImage()方法在右上角添加图像水印。最后,我们将带水印的图像保存到磁盘。

以上是使用C#编写代码调整图像大小和添加水印的示例。这些示例涵盖了基本的图像操作,您可以进一步探索和改进这些示例以满足您特定的需求。