
Hình mờ trong hình ảnh thường được sử dụng để xác nhận quyền sở hữu nội dung. Mặt khác, hình ảnh được đánh dấu chìm để tránh sử dụng trái phép hoặc làm giả. Trong nhiều trường hợp khác nhau, bạn có thể cần phải tự động hóa tính năng watermarking trong các ứng dụng web hoặc máy tính để bàn của mình. Đối với các trường hợp như vậy, bài viết này trình bày cách thêm hình mờ vào hình ảnh theo cách lập trình bằng C#. Điều này cũng có thể hữu ích khi bạn cần làm mờ một loạt hình ảnh trong một lần. Vì vậy, chúng ta hãy bắt đầu.
- API C# để thêm hình mờ vào hình ảnh
- Thêm hình mờ vào hình ảnh trong C#
- Thêm Hình mờ đường chéo vào hình ảnh trong C#
- Nhận giấy phép API miễn phí
API C# để thêm hình mờ vào hình ảnh
Để thêm hình mờ vào hình ảnh, chúng tôi sẽ sử dụng Aspose.Imaging for .NET. Nó là một API xử lý hình ảnh mạnh mẽ hỗ trợ nhiều định dạng hình ảnh. Hơn nữa, API giúp bạn thao tác hình ảnh dễ dàng hơn. Bạn có thể tải xuống mã nhị phân của API hoặc cài đặt nó bằng NuGet.
PM> Install-Package Aspose.Imaging
Thêm hình mờ vào hình ảnh trong C#
Sau đây là các bước để thêm hình mờ vào hình ảnh bằng C#.
- Tải hình ảnh bằng lớp Hình ảnh.
- Tạo một thể hiện của lớp Graphics và khởi tạo nó bằng đối tượng Image.
- Đặt họ phông chữ, kích thước và khuôn mặt bằng cách sử dụng lớp Phông chữ.
- Tạo một thể hiện của lớp SolidBrush và đặt các thuộc tính của nó như màu, v.v.
- Khởi tạo lớp StringFormat để đặt căn chỉnh văn bản.
- Thêm hình mờ vào hình ảnh bằng phương pháp Graphics.DrawString (String, Font, SolidBrush, 0, 0, StringFormat).
- Lưu hình ảnh bằng phương pháp Image.Save (String).
Mẫu mã sau đây cho thấy cách thêm hình mờ vào hình ảnh trong C#.
// Tải hình ảnh PNG hiện có
using (Image image = Image.Load("image.png"))
{
// Khai báo một đối tượng Chuỗi với Văn bản Hình mờ
string theString = "This is watermark";
// Tạo và khởi tạo một thể hiện của lớp Graphics và Khởi tạo một đối tượng của SizeF để lưu trữ Kích thước hình ảnh
Graphics graphics = new Graphics(image);
SizeF sz = graphics.Image.Size;
// Tạo một phiên bản của Phông chữ, khởi tạo nó bằng Font Face, Size và Style
Font font = new Font("Times New Roman", 20, FontStyle.Bold);
// Tạo một phiên bản của SolidBrush và thiết lập các thuộc tính khác nhau của nó
SolidBrush brush = new SolidBrush();
brush.Color = Color.Red;
brush.Opacity = 0;
// Khởi tạo một đối tượng của lớp StringFormat và thiết lập các thuộc tính khác nhau của nó
StringFormat format = new StringFormat();
format.Alignment = StringAlignment.Center;
format.FormatFlags = StringFormatFlags.MeasureTrailingSpaces;
// Vẽ chuỗi trên hình ảnh Lưu đầu ra vào đĩa
graphics.DrawString(theString, font, brush, 0, 0, format);
image.Save("watermarked.jpg");
}

Thêm Hình mờ đường chéo vào hình ảnh trong C#
Trong các trường hợp khác nhau, hình mờ được áp dụng cho hình ảnh theo đường chéo. Đối với điều này, Aspose.Imaging for .NET cho phép bạn biến đổi văn bản hình mờ theo một góc nhất định. Sau đây là các bước để thêm hình mờ đường chéo vào hình ảnh.
- Tải hình ảnh bằng lớp Hình ảnh.
- Tạo một thể hiện của lớp Graphics và khởi tạo nó bằng đối tượng Image.
- Đặt họ phông chữ, kích thước và khuôn mặt bằng cách sử dụng lớp Phông chữ.
- Tạo một thể hiện của lớp SolidBrush và đặt các thuộc tính của nó như màu, v.v.
- Khởi tạo lớp StringFormat để đặt căn chỉnh văn bản.
- Tạo một thể hiện của lớp Matrix và thiết lập góc biến đổi.
- Gán đối tượng Matrix cho thuộc tính Graphics.Transform.
- Thêm hình mờ bằng phương pháp Graphics.DrawString (String, Font, SolidBrush, 0, 0, StringFormat).
- Lưu hình ảnh bằng phương pháp Image.Save (String).
Mẫu mã sau đây cho thấy cách thêm hình mờ đường chéo vào hình ảnh bằng C#.
// Tải hình ảnh PNG hiện có
using (Image image = Image.Load("Image.png"))
{
// Khai báo một đối tượng Chuỗi với Văn bản Hình mờ
string theString = "45 Degree Rotated Text";
// Tạo và khởi tạo một thể hiện của lớp Graphics và Khởi tạo một đối tượng của SizeF để lưu trữ Kích thước hình ảnh
Graphics graphics = new Graphics(image);
SizeF sz = graphics.Image.Size;
// Tạo một phiên bản của Phông chữ, khởi tạo nó bằng Font Face, Size và Style
Font font = new Font("Times New Roman", 20, FontStyle.Bold);
// Tạo một phiên bản của SolidBrush và thiết lập các thuộc tính khác nhau của nó
SolidBrush brush = new SolidBrush();
brush.Color = Color.Red;
brush.Opacity = 0;
// Khởi tạo một đối tượng của lớp StringFormat và thiết lập các thuộc tính khác nhau của nó
StringFormat format = new StringFormat();
format.Alignment = StringAlignment.Center;
format.FormatFlags = StringFormatFlags.MeasureTrailingSpaces;
// Tạo một đối tượng của lớp Ma trận để chuyển đổi
Matrix matrix = new Matrix();
// Đầu tiên là một bản dịch sau đó xoay vòng
matrix.Translate(sz.Width / 2, sz.Height / 2);
matrix.Rotate(-45.0f);
// Đặt chuyển đổi thông qua ma trận
graphics.Transform = matrix;
// Vẽ chuỗi trên hình ảnh Lưu đầu ra vào đĩa
graphics.DrawString(theString, font, brush, 0, 0, format);
image.Save("watermarked.png");
}

Nhận giấy phép API miễn phí
Trong trường hợp bạn muốn dùng thử API mà không có giới hạn đánh giá, bạn có thể nhận giấy phép tạm thời miễn phí.
Sự kết luận
Trong bài viết này, bạn đã học cách thêm hình mờ vào hình ảnh bằng C#. Hơn nữa, bạn đã thấy cách chuyển đổi văn bản hình mờ sang một góc cụ thể. Bạn có thể khám phá thêm về API xử lý ảnh C# bằng cách sử dụng tài liệu. Trong trường hợp bạn có bất kỳ câu hỏi hoặc thắc mắc nào, hãy liên hệ với chúng tôi qua diễn đàn của chúng tôi.