Thêm Watermark vào PSD trong C#

Ứng dụng Photoshop phổ biến của Adobe sử dụng PSD(Tài liệu Photoshop) làm định dạng tệp hình ảnh gốc. Nó thường được sử dụng để tạo biểu trưng, tài liệu quảng cáo và các hình ảnh khác trong đó tệp PSD chứa nhiều lớp. Chúng tôi có thể dễ dàng bảo vệ thiết kế bằng cách thêm hình mờ văn bản hoặc hình ảnh vào tệp PSD theo lập trình. Trong bài viết này, chúng ta sẽ tìm hiểu cách thêm hình mờ vào PSD trong C#.

Bài viết này sẽ bao gồm các chủ đề sau:

  1. C# Photoshop API để thêm hình mờ vào PSD
  2. Thêm hình mờ văn bản vào PSD
  3. Tạo Hình mờ đường chéo trong PSD
  4. Thêm hình mờ hình ảnh vào PSD

C# Photoshop API để thêm Watermark vào PSD

Để thêm hình mờ văn bản hoặc hình ảnh trong tệp PSD, chúng tôi sẽ sử dụng API Aspose.PSD cho .NET. Đây là một API thao tác định dạng tệp Adobe Photoshop dễ sử dụng. Nó cho phép tải và đọc các tệp PSD và PSB trong các ứng dụng .NET. API cho phép chúng tôi cập nhật thuộc tính lớp, thêm hình mờ, thực hiện nén, xoay, chia tỷ lệ hoặc kết xuất PSD và một số định dạng tệp được hỗ trợ khác mà không cần cài đặt Adobe Photoshop.

Lớp PsdImage của API cho phép tải, chỉnh sửa và lưu các tệp PSD. Lớp Đồ họa đại diện cho đồ họa trong hình ảnh. Chúng ta có phương thức DrawString (string, Font, Brush, RectangleF, StringFormat) của lớp này để vẽ chuỗi văn bản được chỉ định trong hình chữ nhật được chỉ định với các đối tượng brush và font được chỉ định. Lớp Layer đại diện cho lớp PSD. Phương thức DrawImage (Point, RasterImage) của lớp này vẽ hình ảnh trên lớp. Chúng ta có thể lưu PSD vào vị trí tệp được chỉ định bằng phương pháp Save (string, ImageOptionsBase).

Vui lòng tải xuống DLL của API hoặc cài đặt nó bằng NuGet.

PM> Install-Package Aspose.PSD

Thêm hình mờ văn bản vào PSD bằng C#

Chúng tôi có thể thêm bất kỳ văn bản nào dưới dạng hình mờ vào tệp PSD bằng cách làm theo các bước dưới đây:

  1. Đầu tiên, tải tệp PSD dưới dạng PsdImage bằng cách sử dụng lớp Hình ảnh.
  2. Tiếp theo, tạo một thể hiện của lớp Graphics.
  3. Sau đó, xác định một đối tượng lớp Phông chữ để vẽ chiều rộng hình mờ.
  4. Tiếp theo, tạo một thể hiện của lớp SolidBrush với màu sắc.
  5. Sau đó, chỉ định căn chỉnh chuỗi.
  6. Sau đó, gọi phương thức DrawString().
  7. Cuối cùng, lưu tệp đầu ra bằng phương thức Save().

Mẫu mã sau đây cho thấy cách thêm hình mờ văn bản vào tệp PSD trong C#.

// Ví dụ mã này cho thấy cách thêm hình mờ văn bản vào tệp PSD
// Tải tệp PSD dưới dạng hình ảnh và truyền nó vào PsdImage
PsdImage psdImage = (PsdImage)Image.Load(@"C:\Files\SimplePSD.psd");

// Tạo đối tượng đồ họa để thực hiện các thao tác vẽ.
Graphics graphics = new Graphics(psdImage);

// Tạo phông chữ để vẽ hình mờ bằng.
Font font = new Font("Arial", 25.0f);

// Tạo một Brush đặc với màu alpha được đặt gần 0 để sử dụng hiệu ứng watermarking.
SolidBrush brush = new SolidBrush(Color.FromArgb(80, 128, 128, 128));

// Chỉ định căn chỉnh chuỗi để đặt hình mờ ở trung tâm hình ảnh.
StringFormat sf = new StringFormat();
sf.Alignment = StringAlignment.Center;
sf.LineAlignment = StringAlignment.Center;

// Vẽ hình mờ bằng cách sử dụng phông chữ, bàn chải một phần trong suốt và ma trận xoay ở trung tâm hình ảnh.
graphics.DrawString("Sample Watermark Text", font, brush, new RectangleF(0, 0, psdImage.Width, psdImage.Height), sf);

// Xuất hình ảnh sang định dạng tệp PNG.
psdImage.Save(@"C:\Files\AddWatermark_output.png", new PngOptions());
Thêm hình mờ văn bản vào PSD bằng C#

Thêm hình mờ văn bản vào PSD bằng C#

Chúng tôi cũng có thể lưu đầu ra dưới dạng tệp PSD bằng cách sử dụng mẫu mã sau:

psdImage.Save(@"C:\Files\AddWatermark_output.psd", new PsdOptions());

Tạo Hình mờ đường chéo trong PSD bằng C#

Chúng tôi có thể thêm hình mờ văn bản đường chéo vào tệp PSD bằng cách làm theo các bước dưới đây:

  1. Đầu tiên, tải tệp PSD dưới dạng PsdImage bằng cách sử dụng lớp Hình ảnh.
  2. Tiếp theo, tạo một thể hiện của lớp Graphics.
  3. Sau đó, xác định một đối tượng lớp Phông chữ để vẽ chiều rộng hình mờ.
  4. Trong khi đó, tạo một thể hiện của lớp SolidBrush với màu sắc.
  5. Sau đó, chỉ định ma trận biến đổi để xoay hình mờ.
  6. Sau đó, chỉ định căn chỉnh chuỗi.
  7. Sau đó, gọi phương thức DrawString().
  8. Cuối cùng, lưu tệp đầu ra bằng phương thức Save().

Mẫu mã sau đây cho thấy cách thêm hình mờ văn bản đường chéo vào tệp PSD trong C#.

// Ví dụ mã này cho thấy cách thêm hình mờ văn bản chéo vào tệp PSD
// Tải tệp PSD dưới dạng hình ảnh và truyền nó vào PsdImage
PsdImage psdImage = (PsdImage)Image.Load(@"C:\Files\SimplePSD.psd");

// Tạo đối tượng đồ họa để thực hiện các thao tác vẽ
Graphics graphics = new Graphics(psdImage);

// Tạo phông chữ để vẽ hình mờ bằng
Font font = new Font("Arial", 25.0f);

// Tạo một bàn chải đặc với màu alpha được đặt gần 0 để sử dụng hiệu ứng watermarking
SolidBrush brush = new SolidBrush(Color.FromArgb(80, 128, 128, 128));

// Chỉ định ma trận biến đổi để xoay hình mờ
graphics.Transform = new Matrix();
graphics.Transform.RotateAt(45, new PointF(psdImage.Width / 2, psdImage.Height / 2));

// Chỉ định căn chỉnh chuỗi để đặt hình mờ ở trung tâm hình ảnh
StringFormat sf = new StringFormat();
sf.Alignment = StringAlignment.Center;

// Vẽ hình mờ bằng phông chữ, bút vẽ một phần trong suốt ở trung tâm hình ảnh
graphics.DrawString("Sample Watermark Text", font, brush, new RectangleF(0, psdImage.Height / 2, psdImage.Width, psdImage.Height / 2), sf);

// Xuất hình ảnh sang định dạng tệp PNG
psdImage.Save(@"C:\Files\AddDiagnolWatermark_output.png", new PngOptions());
Tạo Hình mờ đường chéo trong PSD bằng C#

Tạo Hình mờ đường chéo trong PSD bằng C#

Thêm Hình mờ hình ảnh vào PSD bằng C#

Chúng tôi cũng có thể thêm hình ảnh dưới dạng hình mờ vào tệp PSD bằng cách làm theo các bước dưới đây:

  1. Đầu tiên, tải tệp PSD dưới dạng PsdImage bằng cách sử dụng lớp Hình ảnh.
  2. Tiếp theo, tạo một thể hiện của lớp Layer.
  3. Sau đó, thiết lập chiều cao, chiều rộng và Opacity của lớp.
  4. Tiếp theo, gọi phương thức AddLayer() để thêm lớp vào PSD.
  5. Sau đó, tải hình ảnh watermark vào một lớp.
  6. Sau đó, thêm một hình mờ hình ảnh vào lớp.
  7. Sau đó, gọi phương thức DrawImage(). Nó lấy vị trí và lớp hình ảnh hình mờ làm đối số.
  8. Cuối cùng, lưu tệp đầu ra bằng phương thức Save().

Mẫu mã sau đây cho thấy cách thêm hình mờ hình ảnh vào tệp PSD trong C#.

// Mẫu mã này cho thấy cách thêm hình mờ hình ảnh vào tệp PSD
// Tải tệp PSD vào đối tượng PsdImage
PsdImage psdImage = (PsdImage)Image.Load(@"C:\Files\SimplePSD.psd");

// Thêm một lớp hình mờ mới
var baseLayer = new Layer();
baseLayer.Top = 200;
baseLayer.Bottom = 600;
baseLayer.Right = 600;
baseLayer.Opacity = 50;

// Thêm lớp vào tệp PSD
psdImage.AddLayer(baseLayer);

// Tải hình ảnh hình mờ vào một lớp
FileStream ImageWatermarkFile = new FileStream(@"C:\Files\aspose_logo.png", FileMode.Open);
Layer ImageWatermarkLayer = new Layer(ImageWatermarkFile);

// Thêm hình mờ hình ảnh vào lớp cơ sở
baseLayer.DrawImage(new Point(0, 200), ImageWatermarkLayer);

// Lưu tệp PSD hình mờ cuối cùng
psdImage.Save(@"C:\Files\ImageWatermarkedPSD.png", new PngOptions());
Thêm Hình mờ hình ảnh vào PSD bằng C#

Thêm Hình mờ hình ảnh vào PSD bằng C#

Nhận Giấy phép Tạm thời Miễn phí

Bạn có thể nhận giấy phép tạm thời miễn phí để dùng thử Aspose.PSD cho .NET mà không có giới hạn đánh giá.

Sự kết luận

Trong bài viết này, chúng tôi đã học cách:

  • thêm một lớp mới vào hình ảnh PSD;
  • thêm văn bản hoặc hình ảnh watermark vào PSD;
  • lưu PSD dưới dạng ảnh PNG hoặc PSD bằng C#.

Bên cạnh việc thêm hình mờ vào PSD trong C#, bạn có thể tìm hiểu thêm về Aspose.PSD cho .NET bằng cách sử dụng tài liệu và khám phá các tính năng khác nhau được API hỗ trợ. Trong trường hợp có bất kỳ sự mơ hồ nào, vui lòng liên hệ với chúng tôi trên diễn đàn hỗ trợ miễn phí của chúng tôi.

Xem thêm