ลบสไลด์จากงานนำเสนอใน PHP
บทนำ
หากสไลด์ (หรือเนื้อหาภายใน) ซ้ำซ้อน คุณสามารถลบออกได้ Aspose.Slides มีคลาส Presentation ที่รวม SlideCollection ซึ่งเป็นคลังสำหรับสไลด์ทั้งหมดในงานนำเสนอ โดยใช้ตัวชี้ (อ้างอิงหรือ Index) ของอ็อบเจกต์ Slide ที่ระบุ คุณสามารถระบุสไลด์ที่ต้องการลบได้
ลบสไลด์ด้วยการอ้างอิง
- สร้างอินสแตนซ์ของคลาส Presentation
- รับการอ้างอิงของสไลด์ที่ต้องการลบผ่าน ID หรือ Index ของมัน
- ลบสไลด์ที่อ้างอิงออกจากงานนำเสนอ
- บันทึกงานนำเสนอที่แก้ไขแล้ว
# สร้างอ็อบเจกต์ Presentation ที่แสดงไฟล์งานนำเสนอ
$pres = new Presentation("demo.pptx");
try {
# เข้าถึงสไลด์ผ่านดัชนีในคอลเลกชันสไลด์
$slide = $pres->getSlides()->get_Item(0);
# ลบสไลด์ผ่านการอ้างอิงของมัน
$pres->getSlides()->remove($slide);
# บันทึกงานนำเสนอที่แก้ไขแล้ว
$pres->save("modified.pptx", SaveFormat::Pptx);
} finally {
$pres->dispose();
}
ลบสไลด์ด้วยดัชนี
- สร้างอินสแตนซ์ของคลาส Presentation
- ลบสไลด์ออกจากงานนำเสนอโดยใช้ตำแหน่งดัชนีของมัน
- บันทึกงานนำเสนอที่แก้ไขแล้ว
# สร้างอ็อบเจกต์ Presentation ที่แสดงไฟล์งานนำเสนอ
$pres = new Presentation("demo.pptx");
try {
# ลบสไลด์ผ่านดัชนีสไลด์ของมัน
$pres->getSlides()->removeAt(0);
# บันทึกงานนำเสนอที่แก้ไขแล้ว
$pres->save("modified.pptx", SaveFormat::Pptx);
} finally {
$pres->dispose();
}
ลบสไลด์เค้าโครงที่ไม่ได้ใช้
Aspose.Slides มีเมธอด removeUnusedLayoutSlides (จากคลาส Compress) เพื่อให้คุณลบสไลด์เค้าโครงที่ไม่ได้ต้องการและไม่ได้ใช้ได้ โค้ด PHP นี้แสดงวิธีลบสไลด์เค้าโครงจากการนำเสนอ PowerPoint:
$pres = new Presentation("pres.pptx");
try {
Compress->removeUnusedLayoutSlides($pres);
$pres->save("pres-out.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
ลบสไลด์มาสเตอร์ที่ไม่ได้ใช้
Aspose.Slides มีเมธอด removeUnusedMasterSlides (จากคลาส Compress) เพื่อให้คุณลบสไลด์มาสเตอร์ที่ไม่ได้ต้องการและไม่ได้ใช้ได้ โค้ด PHP นี้แสดงวิธีลบสไลด์มาสเตอร์จากการนำเสนอ PowerPoint:
$pres = new Presentation("pres.pptx");
try {
Compress->removeUnusedMasterSlides($pres);
$pres->save("pres-out.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
คำถามที่พบบ่อย
อะไรเกิดขึ้นกับดัชนีสไลด์หลังจากที่ฉันลบสไลด์?
หลังจากลบแล้ว collection จะทำการจัดดัชนีใหม่: สไลด์ทุกสไลด์ที่ตามมาจะเลื่อนตำแหน่งไปหนึ่งตำแหน่ง ดังนั้นหมายเลขดัชนีก่อนหน้าจะล้าสมัย หากคุณต้องการอ้างอิงที่คงที่ ให้ใช้ ID คงที่ของแต่ละสไลด์แทนดัชนี
ID ของสไลด์ต่างจากดัชนีหรือไม่ และจะเปลี่ยนเมื่อสไลด์ใกล้เคียงถูกลบหรือไม่?
ใช่ ดัชนีเป็นตำแหน่งของสไลด์และจะเปลี่ยนเมื่อมีการเพิ่มหรือลบสไลด์ ส่วน ID ของสไลด์เป็นตัวระบุคงที่และจะไม่เปลี่ยนเมื่อสไลด์อื่นถูกลบ
การลบสไลด์ส่งผลต่อส่วนของสไลด์อย่างไร?
หากสไลด์เป็นส่วนหนึ่งของ Section Section นั้นจะมีสไลด์น้อยลงหนึ่งสไลด์ โครงสร้างของ Section ยังคงอยู่; หาก Section กลายเป็นว่างเปล่า คุณสามารถ remove or reorganize sections ได้ตามต้องการ
อะไรเกิดขึ้นกับโน๊ตและความคิดเห็นที่แนบกับสไลด์เมื่อมันถูกลบ?
Notes และ comments เชื่อมโยงกับสไลด์นั้นโดยเฉพาะและจะถูกลบพร้อมกับสไลด์ เนื้อหาในสไลด์อื่นไม่ได้รับผลกระทบ
การลบสไลด์ต่างจากการทำความสะอาดเค้าโครง/มาสเตอร์ที่ไม่ได้ใช้อย่างไร?
การลบจะเอาสไลด์ปกติที่ระบุออกจากชุดสไลด์ การทำความสะอาดเค้าโครง/มาสเตอร์ที่ไม่ได้ใช้จะลบสไลด์เค้าโครงหรือมาสเตอร์ที่ไม่มีใครอ้างอิง เพื่อลดขนาดไฟล์โดยไม่เปลี่ยนแปลงเนื้อหาสไลด์ที่เหลือ การกระทำเหล่านี้ทำงานร่วมกันโดยทั่วไปให้ลบสไลด์ก่อน แล้วจึงทำความสะอาดต่อไป