Menambahkan Watermark ke Gambar
Menambahkan Watermark ke Gambar
Dokumen ini menjelaskan cara menambahkan watermark ke gambar menggunakan Aspose.PSD. Menambahkan watermark ke gambar adalah kebutuhan umum untuk aplikasi pengolahan gambar. Contoh ini menggunakan kelas Graphics untuk menggambar string pada permukaan gambar.
Menambahkan Watermark
Untuk menunjukkan operasi ini, kami akan memuat gambar BMP dari disk dan menggambar string sebagai watermark di permukaan gambar menggunakan metode DrawString kelas Graphics. Kami akan menyimpan gambar ke format PNG menggunakan kelas PngOptions. Berikut ini adalah contoh kode yang menunjukkan cara menambahkan watermark ke gambar. Kode contoh telah dibagi menjadi bagian-bagian untuk memudahkan pemahaman langkah demi langkah.
- Muat sebuah gambar.
- Buat dan inisialisasi objek Graphics.
- Buat dan inisialisasi objek Font dan SolidBrush.
- Gambar string sebagai watermark menggunakan metode DrawString kelas Graphics.
- Simpan gambar ke format PNG.
Potongan kode berikut ini menunjukkan cara menambahkan watermark pada gambar.
// For complete examples and data files, please go to https://github.com/aspose-psd/Aspose.PSD-for-.NET | |
// Load a PSD file as an image and cast it into PsdImage | |
using (PsdImage psdImage = (PsdImage)Image.Load(dataDir + "layers.psd")) | |
{ | |
// Create graphics object to perform draw operations. | |
Graphics graphics = new Graphics(psdImage); | |
// Create font to draw watermark with. | |
Font font = new Font("Arial", 20.0f); | |
// Create a solid brush with color alpha set near to 0 to use watermarking effect. | |
using (SolidBrush brush = new SolidBrush(Color.FromArgb(50, 128, 128, 128))) | |
{ | |
// Specify string alignment to put watermark at the image center. | |
StringFormat sf = new StringFormat(); | |
sf.Alignment = StringAlignment.Center; | |
sf.LineAlignment = StringAlignment.Center; | |
// Draw watermark using font, partly-transparent brush and rotation matrix at the image center. | |
graphics.DrawString("Some watermark text", font, brush, new RectangleF(0, 0, psdImage.Width, psdImage.Height), sf); | |
} | |
// Export the image into PNG file format. | |
psdImage.Save(dataDir + "AddWatermark_output.png", new PngOptions()); | |
} |
Menambahkan Watermark Diagonal
Menambahkan watermark diagonal ke gambar mirip dengan menambahkan watermark horizontal seperti yang dibahas sebelumnya, dengan sedikit perbedaan. Untuk menunjukkan operasi ini, kami akan memuat gambar JPG dari disk, menambahkan transformasi menggunakan objek kelas Matrix dan menggambar string sebagai watermark pada permukaan gambar menggunakan metode DrawString kelas Graphics. Berikut ini adalah contoh kode yang menunjukkan cara menambahkan watermark diagonal ke gambar. Kode contoh telah dibagi menjadi bagian-bagian untuk memudahkan pemahaman langkah demi langkah.
- Muat gambar.
- Buat dan inisialisasi objek Graphics.
- Buat dan inisialisasi objek Font dan SolidBrush.
- Dapatkan ukuran gambar dalam objek SizeF.
- Buat sebuah instansi kelas Matrix dan lakukan transformasi komposit.
- Tetapkan transformasi ke objek Graphics.
- Buat dan inisialisasi objek StringFormat.
- Gambar string sebagai watermark menggunakan metode DrawString kelas Graphics.
- Simpan gambar hasil.
Potongan kode berikut ini menunjukkan cara menambahkan watermark diagonal.
// For complete examples and data files, please go to https://github.com/aspose-psd/Aspose.PSD-for-.NET | |
// Load a PSD file as an image and cast it into PsdImage | |
using (PsdImage psdImage = (PsdImage)Image.Load(dataDir + "layers.psd")) | |
{ | |
// Create graphics object to perform draw operations. | |
Graphics graphics = new Graphics(psdImage); | |
// Create font to draw watermark with. | |
Font font = new Font("Arial", 20.0f); | |
// Create a solid brush with color alpha set near to 0 to use watermarking effect. | |
using (SolidBrush brush = new SolidBrush(Color.FromArgb(50, 128, 128, 128))) | |
{ | |
// specify transform matrix to rotate watermark. | |
graphics.Transform = new Matrix(); | |
graphics.Transform.RotateAt(45, new PointF(psdImage.Width / 2, psdImage.Height / 2)); | |
// Specify string alignment to put watermark at the image center. | |
StringFormat sf = new StringFormat(); | |
sf.Alignment = StringAlignment.Center; | |
// Draw watermark using font, partly-transparent brush at the image center. | |
graphics.DrawString("Some watermark text", font, brush, new RectangleF(0, psdImage.Height / 2, psdImage.Width, psdImage.Height / 2), sf); | |
} | |
// Export the image into PNG file format. | |
psdImage.Save(dataDir + "AddDiagnolWatermark_output.png", new PngOptions()); | |
} |