Menambahkan Watermark ke Presentasi dengan Python
Introduction
Watermark dalam sebuah presentasi adalah stempel teks atau gambar yang digunakan pada satu slide atau pada semua slide presentasi. Biasanya, watermark digunakan untuk menunjukkan bahwa presentasi tersebut masih draft (misalnya watermark “Draft”), berisi informasi rahasia (misalnya watermark “Confidential”), menandakan perusahaan yang bersangkutan (misalnya watermark “Company Name”), mengidentifikasi penulis presentasi, dll. Watermark membantu mencegah pelanggaran hak cipta dengan menunjukkan bahwa presentasi tidak boleh disalin. Watermark digunakan dalam format presentasi PowerPoint maupun OpenOffice. Pada Aspose.Slides, Anda dapat menambahkan watermark ke format file PowerPoint PPT, PPTX, dan OpenOffice ODP.
Di Aspose.Slides, ada berbagai cara untuk membuat watermark di dokumen PowerPoint atau OpenOffice dan memodifikasi desain serta perilakunya. Kesamaan umumnya adalah untuk menambahkan watermark teks, Anda harus menggunakan kelas TextFrame, dan untuk menambahkan watermark gambar, gunakan kelas PictureFrame atau mengisi bentuk watermark dengan gambar. PictureFrame mengimplementasikan kelas Shape, memungkinkan Anda menggunakan semua pengaturan fleksibel dari objek shape. Karena TextFrame bukan shape dan pengaturannya terbatas, ia dibungkus ke dalam objek Shape.
Ada dua cara penerapan watermark: pada satu slide atau pada semua slide presentasi. Slide Master digunakan untuk menerapkan watermark ke semua slide presentasi — watermark ditambahkan ke Slide Master, didesain sepenuhnya di sana, dan diterapkan ke semua slide tanpa mempengaruhi izin mengedit watermark pada slide individual.
Watermark biasanya dianggap tidak dapat diedit oleh pengguna lain. Untuk mencegah watermark (atau lebih tepatnya shape induk watermark) agar tidak diedit, Aspose.Slides menyediakan fungsi penguncian shape. Sebuah shape tertentu dapat dikunci pada slide biasa atau pada Slide Master. Ketika shape watermark dikunci pada Slide Master, ia akan terkunci pada semua slide presentasi.
Anda dapat menetapkan nama untuk watermark sehingga di masa depan, jika ingin menghapusnya, Anda dapat menemukannya di shape slide berdasarkan nama.
Anda dapat mendesain watermark dengan cara apa pun; namun biasanya terdapat fitur umum pada watermark, seperti penyelarasan tengah, rotasi, posisi di depan, dll. Kami akan membahas cara menggunakan hal tersebut dalam contoh di bawah.
Text Watermark
Add a Text Watermark to a Slide
Untuk menambahkan watermark teks pada PPT, PPTX, atau ODP, pertama-tama tambahkan sebuah shape ke slide, lalu tambahkan sebuah text frame ke shape tersebut. Text frame direpresentasikan oleh kelas TextFrame. Tipe ini tidak diwarisi dari Shape, yang memiliki banyak properti untuk memposisikan watermark secara fleksibel. Oleh karena itu, objek TextFrame dibungkus dalam objek AutoShape. Untuk menambahkan teks watermark ke shape, gunakan metode add_text_frame seperti contoh di bawah.
watermark_text = "CONFIDENTIAL"
with Presentation() as presentation:
slide = presentation.slides[0]
watermark_shape = slide.shapes.add_auto_shape(ShapeType.RECTANGLE, 100, 100, 400, 40)
watermark_frame = watermark_shape.add_text_frame(watermark_text)
See also
Add a Text Watermark to a Presentation
Jika Anda ingin menambahkan watermark teks ke seluruh presentasi (yaitu semua slide sekaligus), tambahkan ke MasterSlide. Logika selanjutnya sama seperti menambahkan watermark ke satu slide — buat objek AutoShape kemudian tambahkan watermark ke dalamnya menggunakan metode add_text_frame.
watermark_text = "CONFIDENTIAL"
with Presentation() as presentation:
master_slide = presentation.masters[0]
watermark_shape = master_slide.shapes.add_auto_shape(ShapeType.RECTANGLE, 100, 100, 400, 40)
watermark_frame = watermark_shape.add_text_frame(watermark_text)
See also
Set Watermark Shape Transparency
Secara default, shape persegi panjang memiliki warna isian dan garis. Baris kode berikut menjadikan shape tersebut transparan.
watermark_shape.fill_format.fill_type = FillType.NO_FILL
watermark_shape.line_format.fill_format.fill_type = FillType.NO_FILL
Set the Font for a Text Watermark
Anda dapat mengubah font watermark teks seperti berikut.
text_format = watermark_frame.paragraphs[0].paragraph_format.default_portion_format
text_format.latin_font = FontData("Arial")
text_format.font_height = 50
Set the Watermark Text Color
Untuk mengatur warna teks watermark, gunakan kode berikut:
alpha = 150
red = 200
green = 200
blue = 200
fill_format = watermark_frame.paragraphs[0].paragraph_format.default_portion_format.fill_format
fill_format.fill_type = FillType.SOLID
fill_format.solid_fill_color.color = drawing.Color.from_argb(alpha, red, green, blue)
Center a Text Watermark
Anda dapat memusatkan watermark pada slide dengan melakukan hal berikut:
slide_size = presentation.slide_size.size
watermark_width = 400
watermark_height = 40
watermark_x = (slide_size.width - watermark_width) / 2
watermark_y = (slide_size.height - watermark_height) / 2
watermark_shape = slide.shapes.add_auto_shape(
ShapeType.RECTANGLE, watermark_x, watermark_y, watermark_width, watermark_height)
watermark_frame = watermark_shape.add_text_frame(watermark_text)
Gambar di bawah menunjukkan hasil akhirnya.

Image Watermark
Add an Image Watermark to a Presentation
Untuk menambahkan watermark gambar ke slide presentasi, Anda dapat melakukan hal berikut:
with open("watermark.png", "rb") as image_stream:
image = presentation.images.add_image(image_stream.read())
watermark_shape.fill_format.fill_type = FillType.PICTURE
watermark_shape.fill_format.picture_fill_format.picture.image = image
watermark_shape.fill_format.picture_fill_format.picture_fill_mode = PictureFillMode.STRETCH
Lock a Watermark from Editing
Jika perlu mencegah watermark diedit, gunakan properti AutoShape.auto_shape_lock pada shape. Dengan properti ini, Anda dapat melindungi shape dari pemilihan, pengubahan ukuran, pemindahan posisi, pengelompokan dengan elemen lain, mengunci teksnya dari pengeditan, dan masih banyak lagi:
# Kunci shape watermark agar tidak dapat diubah
watermark_shape.auto_shape_lock.select_locked = True
watermark_shape.auto_shape_lock.size_locked = True
watermark_shape.auto_shape_lock.text_locked = True
watermark_shape.auto_shape_lock.position_locked = True
watermark_shape.auto_shape_lock.grouping_locked = True
Bring a Watermark to Front
Di Aspose.Slides, urutan Z shape dapat diatur melalui metode ShapeCollection.reorder. Untuk melakukannya, panggil metode ini dari daftar slide presentasi dan berikan referensi shape serta nomor urutnya ke metode tersebut. Dengan cara ini, shape dapat dibawa ke depan atau dikirim ke belakang slide. Fitur ini sangat berguna jika Anda perlu menempatkan watermark di depan presentasi:
shape_count = len(slide.shapes)
slide.shapes.reorder(shape_count - 1, watermark_shape)
Set Watermark Rotation
Berikut contoh kode cara mengatur rotasi watermark sehingga posisinya diagonal melintasi slide:
diagonal_angle = math.atan(slide_size.height / slide_size.width) * 180 / math.pi
watermark_shape.rotation = float(diagonal_angle)
Set a Name for a Watermark
Aspose.Slides memungkinkan Anda memberikan nama pada sebuah shape. Dengan menggunakan nama shape, Anda dapat mengaksesnya di masa depan untuk memodifikasi atau menghapusnya. Untuk menetapkan nama pada shape watermark, tetapkan ke properti AutoShape.name:
watermark_shape.name = "watermark"
Remove a Watermark
Untuk menghapus shape watermark, gunakan metode AutoShape.name untuk menemukannya di shape slide. Kemudian, berikan shape watermark tersebut ke metode ShapeCollection.remove:
slide_shapes = list(slide.shapes)
for shape in slide_shapes:
if shape.name == "watermark":
slide.shapes.remove(watermark_shape)
A Live Example
Anda mungkin ingin mencoba Aspose.Slides free Add Watermark dan Remove Watermark secara online.

FAQ
What is a watermark and why should I use it?
Watermark adalah overlay teks atau gambar yang diterapkan pada slide untuk membantu melindungi hak kekayaan intelektual, meningkatkan pengenalan merek, atau mencegah penggunaan tidak sah dari presentasi.
Can I add a watermark to all slides in a presentation?
Ya, Aspose.Slides memungkinkan Anda menambahkan watermark ke setiap slide dalam sebuah presentasi. Anda dapat melakukan iterasi pada semua slide dan menerapkan pengaturan watermark secara individual.
How can I adjust the transparency of the watermark?
Anda dapat menyesuaikan transparansi watermark dengan mengubah pengaturan isian (FillFormat) dari shape. Ini memastikan watermark tetap halus dan tidak mengganggu konten slide.
What image formats are supported for watermarks?
Aspose.Slides mendukung berbagai format gambar seperti PNG, JPEG, GIF, BMP, SVG, dan lainnya.
Can I customize the font and style of a text watermark?
Ya, Anda dapat memilih font, ukuran, dan gaya apa pun untuk menyesuaikan desain presentasi Anda dan menjaga konsistensi merek.
How do I change the position or orientation of a watermark?
Anda dapat menyesuaikan posisi dan orientasi watermark dengan mengubah koordinat, ukuran, dan properti rotasi shape.