Terapkan atau Ubah Layout Slide di .NET
Pendahuluan
Layout slide mendefinisikan susunan kotak placeholder dan pemformatan untuk konten pada sebuah slide. Ini mengontrol placeholder mana yang tersedia dan di mana mereka muncul. Layout slide membantu Anda merancang presentasi dengan cepat dan konsisten—baik Anda membuat sesuatu yang sederhana maupun yang lebih kompleks. Beberapa layout slide yang paling umum di PowerPoint meliputi:
Layout Slide Judul – Menyertakan dua placeholder teks: satu untuk judul dan satu untuk subjudul.
Layout Judul dan Konten – Menampilkan placeholder judul yang lebih kecil di bagian atas dan yang lebih besar di bawahnya untuk konten utama (seperti teks, poin peluru, grafik, gambar, dan lainnya).
Layout Kosong – Tidak berisi placeholder, memberi Anda kontrol penuh untuk merancang slide dari awal.
Layout slide merupakan bagian dari slide master, yang merupakan slide tingkat atas yang mendefinisikan gaya layout untuk presentasi. Anda dapat mengakses dan memodifikasi layout slide melalui slide master—baik berdasarkan tipe, nama, atau ID uniknya. Sebagai alternatif, Anda dapat mengedit layout slide tertentu langsung dalam presentasi.
Untuk bekerja dengan layout slide di Aspose.Slides for .NET, Anda dapat menggunakan:
- Properti seperti LayoutSlides dan Masters pada kelas Presentation.
- Tipe seperti ILayoutSlide, IMasterLayoutSlideCollection, ILayoutPlaceholderManager, dan ILayoutSlideHeaderFooterManager
Info
Untuk mempelajari lebih lanjut tentang bekerja dengan slide master, lihat artikel Slide Master.Menambahkan Layout Slide ke Presentasi
Untuk menyesuaikan tampilan dan struktur slide Anda, Anda mungkin perlu menambahkan layout slide baru ke sebuah presentasi. Aspose.Slides for .NET memungkinkan Anda memeriksa apakah layout tertentu sudah ada, menambahkan yang baru jika diperlukan, dan menggunakannya untuk menyisipkan slide berdasarkan layout tersebut.
- Buat instance dari kelas Presentation.
- Akses IMasterLayoutSlideCollection.
- Periksa apakah layout slide yang diinginkan sudah ada dalam koleksi. Jika tidak, tambahkan layout slide yang diperlukan.
- Tambahkan slide kosong berdasarkan layout slide baru.
- Simpan presentasi.
Kode C# berikut menunjukkan cara menambahkan layout slide ke presentasi PowerPoint:
// Membuat instance kelas Presentation yang mewakili file PowerPoint.
using (Presentation presentation = new Presentation("Sample.pptx"))
{
// Telusuri tipe layout slide untuk memilih sebuah layout slide.
IMasterLayoutSlideCollection layoutSlides = presentation.Masters[0].LayoutSlides;
ILayoutSlide layoutSlide = layoutSlides.GetByType(SlideLayoutType.TitleAndObject) ?? layoutSlides.GetByType(SlideLayoutType.Title);
if (layoutSlide == null)
{
// Situasi di mana presentasi tidak berisi semua tipe layout.
// File presentasi hanya berisi tipe layout Kosong dan Kustom.
// Namun, layout slide dengan tipe kustom mungkin memiliki nama yang dikenali,
// seperti "Title", "Title and Content", dll, yang dapat digunakan untuk pemilihan layout slide.
// Anda juga dapat mengandalkan sekumpulan tipe bentuk placeholder.
// Misalnya, slide Judul harus hanya memiliki tipe placeholder Title, dan seterusnya.
foreach (ILayoutSlide titleAndObjectLayoutSlide in layoutSlides)
{
if (titleAndObjectLayoutSlide.Name == "Title and Object")
{
layoutSlide = titleAndObjectLayoutSlide;
break;
}
}
if (layoutSlide == null)
{
foreach (ILayoutSlide titleLayoutSlide in layoutSlides)
{
if (titleLayoutSlide.Name == "Title")
{
layoutSlide = titleLayoutSlide;
break;
}
}
if (layoutSlide == null)
{
layoutSlide = layoutSlides.GetByType(SlideLayoutType.Blank);
if (layoutSlide == null)
{
layoutSlide = layoutSlides.Add(SlideLayoutType.TitleAndObject, "Title and Object");
}
}
}
}
// Tambahkan slide kosong menggunakan layout slide yang ditambahkan.
presentation.Slides.InsertEmptySlide(0, layoutSlide);
// Simpan presentasi ke disk.
presentation.Save("Output.pptx", SaveFormat.Pptx);
}
Menghapus Layout Slide yang Tidak Digunakan
Aspose.Slides menyediakan metode RemoveUnusedLayoutSlides dari kelas Compress untuk memungkinkan Anda menghapus layout slide yang tidak diinginkan dan tidak digunakan.
Kode C# berikut menunjukkan cara menghapus layout slide dari presentasi PowerPoint:
using (Presentation presentation = new Presentation("Presentation.pptx"))
{
Aspose.Slides.LowCode.Compress.RemoveUnusedLayoutSlides(presentation);
presentation.Save("Output.pptx", SaveFormat.Pptx);
}
Menambahkan Placeholder ke Layout Slide
Aspose.Slides menyediakan properti ILayoutSlide.PlaceholderManager, yang memungkinkan Anda menambahkan placeholder baru ke sebuah layout slide.
Manajer ini berisi metode untuk tipe placeholder berikut:
| Placeholder PowerPoint | ILayoutPlaceholderManager Metode |
|---|---|
![]() |
AddContentPlaceholder(float x, float y, float width, float height) |
![]() |
AddVerticalContentPlaceholder(float x, float y, float width, float height) |
![]() |
AddTextPlaceholder(float x, float y, float width, float height) |
![]() |
AddVerticalTextPlaceholder(float x, float y, float width, float height) |
![]() |
AddPicturePlaceholder(float x, float y, float width, float height) |
![]() |
AddChartPlaceholder(float x, float y, float width, float height) |
![]() |
AddTablePlaceholder(float x, float y, float width, float height) |
![]() |
AddSmartArtPlaceholder(float x, float y, float width, float height) |
![]() |
AddMediaPlaceholder(float x, float y, float width, float height) |
![]() |
AddOnlineImagePlaceholder(float x, float y, float width, float height) |
Kode C# berikut menunjukkan cara menambahkan bentuk placeholder baru ke layout slide Kosong:
using (var presentation = new Presentation())
{
// Dapatkan layout slide Kosong.
ILayoutSlide layout = presentation.LayoutSlides.GetByType(SlideLayoutType.Blank);
// Dapatkan manajer placeholder dari layout slide.
ILayoutPlaceholderManager placeholderManager = layout.PlaceholderManager;
// Tambahkan berbagai placeholder ke layout slide Kosong.
placeholderManager.AddContentPlaceholder(20, 20, 310, 270);
placeholderManager.AddVerticalTextPlaceholder(350, 20, 350, 270);
placeholderManager.AddChartPlaceholder(20, 310, 310, 180);
placeholderManager.AddTablePlaceholder(350, 310, 350, 180);
// Tambahkan slide baru dengan layout Kosong.
ISlide newSlide = presentation.Slides.AddEmptySlide(layout);
presentation.Save("Placeholders.pptx", SaveFormat.Pptx);
}
Hasilnya:

Mengatur Visibilitas Footer untuk Layout Slide
Pada presentasi PowerPoint, elemen footer seperti tanggal, nomor slide, dan teks khusus dapat ditampilkan atau disembunyikan tergantung pada layout slide. Aspose.Slides for .NET memungkinkan Anda mengontrol visibilitas placeholder footer ini. Ini berguna ketika Anda ingin layout tertentu menampilkan informasi footer sementara yang lain tetap bersih dan minimal.
- Buat instance dari kelas Presentation.
- Dapatkan referensi layout slide berdasarkan indeksnya.
- Setel placeholder footer slide menjadi terlihat.
- Setel placeholder nomor slide menjadi terlihat.
- Setel placeholder tanggal-waktu menjadi terlihat.
- Simpan presentasi.
Kode C# berikut menunjukkan cara mengatur visibilitas footer slide dan melakukan tugas terkait:
using (Presentation presentation = new Presentation("Presentation.ppt"))
{
ILayoutSlideHeaderFooterManager headerFooterManager = presentation.LayoutSlides[0].HeaderFooterManager;
if (!headerFooterManager.IsFooterVisible)
{
headerFooterManager.SetFooterVisibility(true);
}
if (!headerFooterManager.IsSlideNumberVisible)
{
headerFooterManager.SetSlideNumberVisibility(true);
}
if (!headerFooterManager.IsDateTimeVisible)
{
headerFooterManager.SetDateTimeVisibility(true);
}
headerFooterManager.SetFooterText("Footer text");
headerFooterManager.SetDateTimeText("Date and time text");
presentation.Save("Presentation.ppt", SaveFormat.Ppt);
}
Mengatur Visibilitas Footer Anak untuk Slide
Pada presentasi PowerPoint, elemen footer seperti tanggal, nomor slide, dan teks khusus dapat dikontrol pada tingkat slide master untuk memastikan konsistensi di semua layout slide. Aspose.Slides for .NET memungkinkan Anda mengatur visibilitas dan konten placeholder footer ini pada slide master dan menyebarkan pengaturan tersebut ke semua layout slide anak. Pendekatan ini memastikan informasi footer yang seragam di seluruh presentasi Anda.
- Buat instance dari kelas Presentation.
- Dapatkan referensi ke slide master berdasarkan indeksnya.
- Setel placeholder footer master dan semua anak menjadi terlihat.
- Setel placeholder nomor slide master dan semua anak menjadi terlihat.
- Setel placeholder tanggal-waktu master dan semua anak menjadi terlihat.
- Simpan presentasi.
Kode C# berikut menunjukkan operasi ini:
using (Presentation presentation = new Presentation("Presentation.ppt"))
{
IMasterSlideHeaderFooterManager headerFooterManager = presentation.Masters[0].HeaderFooterManager;
headerFooterManager.SetFooterAndChildFootersVisibility(true);
headerFooterManager.SetSlideNumberAndChildSlideNumbersVisibility(true);
headerFooterManager.SetDateTimeAndChildDateTimesVisibility(true);
headerFooterManager.SetFooterAndChildFootersText("Footer text");
headerFooterManager.SetDateTimeAndChildDateTimesText("Date and time text");
presentation.Save("Output.pptx", SaveFormat.Pptx);
}
FAQ
Apa perbedaan antara slide master dan slide layout?
Slide master mendefinisikan tema keseluruhan dan pemformatan default, sementara slide layout mendefinisikan susunan khusus placeholder untuk berbagai jenis konten.
Apakah saya dapat menyalin slide layout dari satu presentasi ke presentasi lain?
Ya, Anda dapat menggandakan slide layout dari koleksi LayoutSlides sebuah presentasi dan menyisipkannya ke presentasi lain menggunakan metode AddClone.
Apa yang terjadi jika saya menghapus slide layout yang masih digunakan oleh slide lain?
Jika Anda mencoba menghapus slide layout yang masih direferensikan oleh setidaknya satu slide dalam presentasi, Aspose.Slides akan melempar PptxEditException. Untuk menghindarinya, gunakan RemoveUnusedLayoutSlides yang secara aman menghapus hanya layout slide yang tidak digunakan.









