Odstranění snímků z prezentací v PHP
Úvod
Pokud se snímek (nebo jeho obsah) stane nadbytečným, můžete jej smazat. Aspose.Slides poskytuje třídu Presentation, která zapouzdřuje SlideCollection, což je úložiště všech snímků v prezentaci. Pomocí ukazatelů (reference nebo index) na známý objekt Slide můžete určit snímek, který chcete odstranit.
Odstranit snímek pomocí reference
- Vytvořte instanci třídy Presentation.
- Získejte odkaz na snímek, který chcete odstranit, pomocí jeho ID nebo indexu.
- Odstraňte odkazovaný snímek z prezentace.
- Uložte upravenou prezentaci.
Tento PHP kód ukazuje, jak odstranit snímek pomocí jeho reference:
# Vytvořte objekt Presentation, který představuje soubor prezentace
$pres = new Presentation("demo.pptx");
try {
# Přistoupí k snímku pomocí jeho indexu v kolekci snímků
$slide = $pres->getSlides()->get_Item(0);
# Odstraní snímek pomocí jeho reference
$pres->getSlides()->remove($slide);
# Uloží upravenou prezentaci
$pres->save("modified.pptx", SaveFormat::Pptx);
} finally {
$pres->dispose();
}
Odstranit snímek podle indexu
- Vytvořte instanci třídy Presentation.
- Odstraňte snímek z prezentace pomocí jeho pozice v indexu.
- Uložte upravenou prezentaci.
Tento PHP kód ukazuje, jak odstranit snímek pomocí jeho indexu:
# Vytvoří objekt Presentation, který představuje soubor prezentace
$pres = new Presentation("demo.pptx");
try {
# Odstraní snímek pomocí jeho indexu
$pres->getSlides()->removeAt(0);
# Uloží upravenou prezentaci
$pres->save("modified.pptx", SaveFormat::Pptx);
} finally {
$pres->dispose();
}
Odstranit nepoužívané snímky rozložení
Aspose.Slides poskytuje metodu removeUnusedLayoutSlides (z třídy Compress), která vám umožní smazat nechtěné a nepoužívané snímky rozložení. Tento PHP kód ukazuje, jak odstranit snímek rozložení z prezentace 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();
}
}
Odstranit nepoužívané hlavní snímky
Aspose.Slides poskytuje metodu removeUnusedMasterSlides (z třídy Compress), která vám umožní smazat nechtěné a nepoužívané hlavní snímky. Tento PHP kód ukazuje, jak odstranit hlavní snímek z prezentace 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();
}
}
FAQ
Co se stane s indexy snímků po smazání snímku?
Po smazání se collection přeindexuje: každý následující snímek se posune o jednu pozici doleva, takže předchozí čísla indexů jsou zastaralá. Pokud potřebujete stabilní odkaz, použijte trvalé ID každého snímku místo jeho indexu.
Je ID snímku odlišné od jeho indexu a mění se, když jsou smazány sousední snímky?
Ano. Index je pozice snímku a změní se, když jsou snímky přidány nebo odebrány. ID snímku je trvalý identifikátor a nemění se, když jsou ostatní snímky smazány.
Jak smazání snímku ovlivní sekce snímků?
Pokud snímek patřil do sekce, tato sekce bude obsahovat o jeden snímek méně. Struktura sekce zůstane zachována; pokud sekce zůstane prázdná, můžete remove or reorganize sections podle potřeby.
Co se stane s poznámkami a komentáři připojenými k snímku po jeho smazání?
Notes a comments jsou svázány s konkrétním snímkem a jsou odstraněny spolu s ním. Obsah na ostatních snímcích zůstane nedotčen.
Jak se liší mazání snímků od čištění nepoužívaných rozložení/mistrů?
Mazání odstraňuje konkrétní běžné snímky z prezentace. Čištění nepoužívaných rozložení/mistrů odstraňuje rozložení nebo hlavní snímky, na které se už nikdo neodkazuje, čímž snižuje velikost souboru, aniž by měnilo obsah zbývajících snímků. Tyto akce se doplňují: typicky nejprve smažte, potom vyčistěte.