Kelola Tag dan Data Khusus dalam Presentasi dengan Python
Gambaran Umum
Artikel ini menjelaskan cara Aspose.Slides bekerja dengan tag dan data khusus dalam presentasi PowerPoint. Secara singkat dijelaskan bagaimana data disimpan dalam file PPTX, dicatat bahwa data spesifik presentasi dapat berupa tag dan bagian XML khusus, serta tag dijelaskan sebagai pasangan string kunci‑nilai.
Artikel juga menunjukkan cara membaca nilai tag dan cara menambahkan tag ke sebuah presentasi, slide individu, atau shape. Selain itu, artikel membahas tugas umum pengelolaan tag seperti menghapus semua tag, menghapus tag berdasarkan nama, dan mengambil daftar nama tag.
Penyimpanan Data dalam File Presentasi
File PPTX—item dengan ekstensi .pptx—disimpan dalam format PresentationML, yang merupakan bagian dari spesifikasi Office Open XML. Format Office Open XML mendefinisikan struktur data yang terdapat dalam presentasi.
Dengan slide sebagai salah satu elemen dalam presentasi, sebuah slide part berisi konten satu slide. Sebuah slide part dapat memiliki hubungan eksplisit ke banyak bagian—seperti User Defined Tags—yang didefinisikan oleh ISO/IEC 29500.
Data khusus (spesifik untuk sebuah presentasi) atau data pengguna dapat berupa tag (ITagCollection) dan CustomXmlParts (ICustomXmlPartCollection).
Mendapatkan Nilai Tag
Di Slides, sebuah tag terkait dengan properti IDocumentProperties.Keywords. Contoh kode berikut menunjukkan cara mendapatkan nilai tag dengan Aspose.Slides untuk Python via .NET untuk Presentation:
import aspose.slides as slides
with slides.Presentation("pres.pptx") as pres:
print(pres.document_properties.keywords)
Menambahkan Tag ke Presentasi
Aspose.Slides memungkinkan Anda menambahkan tag ke presentasi. Sebuah tag biasanya terdiri dari dua elemen:
- nama properti khusus -
MyTag - nilai properti khusus -
My Tag Value
Jika Anda perlu mengklasifikasikan beberapa presentasi berdasarkan aturan atau properti tertentu, maka menambahkan tag ke presentasi tersebut dapat berguna. Misalnya, jika Anda ingin mengkategorikan atau mengelompokkan semua presentasi dari negara-negara Amerika Utara, Anda dapat membuat tag Amerika Utara dan kemudian menetapkan negara yang relevan (AS, Meksiko, dan Kanada) sebagai nilai.
Contoh kode berikut menunjukkan cara menambahkan tag ke sebuah Presentation menggunakan Aspose.Slides untuk Python via .NET:
import aspose.slides as slides
with slides.Presentation("pres.pptx") as pres:
tags = pres.custom_data.tags
tags.add("MyTag", "My Tag Value")
Tag juga dapat diatur untuk Slide:
import aspose.slides as slides
with slides.Presentation("pres.pptx") as pres:
slide = pres.slides[0]
tags = slide.custom_data.tags
tags.add("tag", "value")
Atau untuk setiap Shape individu:
import aspose.slides as slides
with slides.Presentation("pres.pptx") as pres:
slide = pres.slides[0]
shape = slide.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 10, 10, 100, 50)
shape.text_frame.text = "My text"
shape.custom_data.tags.add("tag", "value")
Batasan
Tag yang ditambahkan melalui koleksi custom_data.tags hanya disimpan di dalam file PowerPoint. Tag tersebut tidak dipindahkan ke struktur tag PDF ketika presentasi diekspor ke PDF. Akibatnya, pengenal khusus yang ditetapkan sebagai tag tidak dapat diambil dari PDF yang telah ditandai.
Solusi: Anda dapat menyimpan pengenal khusus dalam Alt Text objek (misalnya, shape.alternative_text = "MyId"). Setelah diekspor ke PDF, Alt Text dapat muncul dalam struktur tag PDF.
FAQ
Apakah saya dapat menghapus semua tag dari presentasi, slide, atau shape dalam satu operasi?
Ya. Tag collection mendukung operasi clear yang menghapus semua pasangan kunci‑nilai sekaligus.
Bagaimana cara menghapus satu tag berdasarkan namanya tanpa harus iterasi seluruh koleksi?
Gunakan operasi remove(name) pada TagCollection untuk menghapus tag berdasarkan kuncinya.
Bagaimana saya dapat mengambil daftar lengkap nama tag untuk analisis atau penyaringan?
Gunakan get_names_of_tags pada tag collection; metode ini mengembalikan array berisi semua nama tag.