PowerPoint szöveg animálása Java-ban
Áttekintés
Ez a cikk bemutatja, hogyan dolgozhat animált szöveggel az Aspose.Slides-ban animációs effektusok alkalmazásával egyes bekezdésekre, valamint hogyan kérdezheti le a szövegkeretben már hozzárendelt effektusokat. A bekezdés‑szintű animáció hozzáadásához és a meglévő bekezdés‑animációs effektusok vizsgálatához használt API metódusokra összpontosít.
Animációs effektusok hozzáadása bekezdésekhez
Hozzáadtuk az addEffect() metódust a Sequence és ISequence osztályokhoz. Ez a metódus lehetővé teszi, hogy egyetlen bekezdéshez adjunk animációs effektust. Az alábbi példa kód megmutatja, hogyan adhatunk animációs effektust egy bekezdéshez:
Presentation presentation = new Presentation("Presentation.pptx");
try {
// válassza ki a bekezdést a hatás hozzáadásához
IAutoShape autoShape = (IAutoShape)presentation.getSlides().get_Item(0).getShapes().get_Item(0);
IParagraph paragraph = autoShape.getTextFrame().getParagraphs().get_Item(0);
// adja hozzá a Fly animációs effektust a kiválasztott bekezdéshez
IEffect effect = presentation.getSlides().get_Item(0).getTimeline().getMainSequence().
addEffect(paragraph, EffectType.Fly, EffectSubtype.Left, EffectTriggerType.OnClick);
presentation.save("AnimationEffectinParagraph.pptx", SaveFormat.Pptx);
} finally {
if (presentation != null) presentation.dispose();
}
Animációs effektusok lekérése bekezdésekből
Előfordulhat, hogy meg szeretné tudni egy bekezdéshez hozzáadott animációs effektusokat – például egy helyzetben azt szeretné lekérni, hogy milyen animációs effektusok vannak egy bekezdésben, mert azokat egy másik bekezdésre vagy alakzatra kívánja alkalmazni.
Az Aspose.Slides for Java lehetővé teszi, hogy lekérje az összes animációs effektust, amely a szövegkeretben (alakzat) található bekezdésekre alkalmazott. Az alábbi példa kód megmutatja, hogyan kaphatja meg a bekezdés animációs effektusait:
Presentation pres = new Presentation("Presentation.pptx");
try {
ISequence sequence = pres.getSlides().get_Item(0).getTimeline().getMainSequence();
IAutoShape autoShape = (IAutoShape)pres.getSlides().get_Item(0).getShapes().get_Item(0);
for (IParagraph paragraph : autoShape.getTextFrame().getParagraphs())
{
IEffect[] effects = sequence.getEffectsByParagraph(paragraph);
if (effects.length > 0)
System.out.println("Paragraph \"" + paragraph.getText() + "\" has " + effects[0].getType() + " effect.");
}
} finally {
pres.dispose();
}
GYIK
Miben különbözik a szöveg animáció a diaátmenetektől, és kombinálhatóak-e?
A szöveg animációk szabályozzák egy objektum viselkedését az időben a dián, míg a transitions a diák cseréjének módját szabályozza. Függetlenek egymástól, és együtt is használhatók; a lejátszási sorrendet az animáció idővonal és a átmenet beállítások határozzák meg.
Megmaradnak a szöveg animációk PDF‑re vagy képekre exportáláskor?
Nem. A PDF és a raszteres képek statikusak, így a dia egyetlen állapotát láthatja mozgás nélkül. A mozgás megőrzéséhez használjon video vagy HTML exportot.
Működnek a szöveg animációk elrendezésekben és a dia mesterben?
Az elrendezés/mester objektumokra alkalmazott effektusok öröklődnek a diákra, azonban azok időzítése és a dia szintű animációkkal való kölcsönhatása a dián lévő végső sorrendtől függ.