Prezentációs diák klónozása Androidon
Bevezetés
A klónozás az a folyamat, amely egy pontos másolat vagy replikát készít valamelyik dologból. Az Aspose.Slides for Android via Java lehetővé teszi, hogy bármely dia másolatát vagy klónját létrehozzuk, majd azt a klónozott diát beillesszük az aktuális vagy bármely más megnyitott prezentációba. A dia klónozása egy új diát hoz létre, amelyet a fejlesztők módosíthatnak anélkül, hogy az eredeti diát megváltoztatnák. Számos lehetséges módja van egy dia klónozásának:
- Klónozás a prezentáció végén.
- Klónozás egy másik pozícióba a prezentáción belül.
- Klónozás egy másik prezentáció végén.
- Klónozás egy másik pozícióba egy másik prezentációban.
- Klónozás egy meghatározott pozícióba egy másik prezentációban.
Az Aspose.Slides for Android via Java, (a ISlide objektumok gyűjteménye) amelyet a Presentation objektum biztosít, a addClone és insertClone metódusokat kínálja a fenti dia klónozási típusok végrehajtásához.
Dia klónozása a prezentáció végén
Ha klónozni szeretne egy diát, majd ugyanabban a prezentációs fájlban a meglévő diák végén szeretné használni, használja a addClone metódust az alábbi lépések szerint:
- Hozzon létre egy példányt a Presentation osztályból.
- Hozzon létre egy példányt a ISlideCollection osztályból a Presentation objektum által szolgáltatott Slides gyűjtemény hivatkozásával.
- Hívja meg a addClone metódust a ISlideCollection objektumnál, és adja meg a klónozandó diát paraméterként a addClone metódusnak.
- Írja ki a módosított prezentációs fájlt.
Az alább bemutatott példában a prezentáció első pozíciójában (nulla index) található diát klónoztuk a prezentáció végére.
// Példányosítsa a Presentation osztályt, amely egy prezentációs fájlt képvisel
Presentation pres = new Presentation("CloneWithinSamePresentationToEnd.pptx");
try {
// Klónozza a kívánt diát a ugyanabban a prezentációban lévő diákkollekció végére
ISlideCollection slds = pres.getSlides();
slds.addClone(pres.getSlides().get_Item(0));
// Írja ki a módosított prezentációt a lemezre
pres.save("Aspose_CloneWithinSamePresentationToEnd_out.pptx", SaveFormat.Pptx);
} finally {
pres.dispose();
}
Dia klónozása egy másik pozícióba a prezentáción belül
Ha klónozni szeretne egy diát, majd ugyanabban a prezentációs fájlban, de egy másik pozícióban szeretné használni, használja a insertClone metódust:
- Hozzon létre egy példányt a Presentation osztályból.
- Hozzon létre egy példányt a Slides gyűjtemény hivatkozásával, amelyet a Presentation objektum szolgáltat.
- Hívja meg a insertClone metódust a ISlideCollection objektumnál, és adja meg a klónozandó diát a kívánt új pozíció indexével együtt paraméterként a insertClone metódusnak.
- Írja ki a módosított prezentációt PPTX fájlként.
Az alább bemutatott példában a prezentáció nulla indexén (pozíció 1) található diát klónoztuk az 1‑es indexre – pozíció 2 – a prezentációban.
// Példányosítsa a Presentation osztályt, amely egy prezentációs fájlt képvisel
Presentation pres = new Presentation("CloneWithInSamePresentation.pptx");
try {
// Klónozza a kívánt diát a ugyanabban a prezentációban lévő diákkollekció végére
ISlideCollection slds = pres.getSlides();
// Klónozza a kívánt diát a ugyanabban a prezentációban megadott indexre
slds.insertClone(2, pres.getSlides().get_Item(1));
// Írja ki a módosított prezentációt a lemezre
pres.save("Aspose_CloneWithInSamePresentation_out.pptx", SaveFormat.Pptx);
} finally {
pres.dispose();
}
Dia klónozása egy másik prezentáció végén
Ha egy diát egy prezentációból kell klónozni, és egy másik prezentációs fájlban, a meglévő diák végén szeretné használni:
- Hozzon létre egy példányt a Presentation osztályból, amely tartalmazza a forrás prezentációt, ahonnan a dia klónozva lesz.
- Hozzon létre egy példányt a Presentation osztályból, amely a cél prezentációt tartalmazza, ahová a dia hozzá lesz adva.
- Hozzon létre egy példányt a ISlideCollection osztályból a cél prezentáció Slides gyűjteményének hivatkozásával.
- Hívja meg a addClone metódust a ISlideCollection objektumnál, és adja meg a forrás prezentáció diáját paraméterként a addClone metódusnak.
- Írja ki a módosított célprezentációs fájlt.
Az alább bemutatott példában a forrás prezentáció első indexén lévő diát klónoztuk a célprezentáció végére.
// A Presentation osztály példányosítása a forrás prezentációs fájl betöltéséhez
Presentation srcPres = new Presentation("CloneAtEndOfAnother.pptx");
try {
// A Presentation osztály példányosítása a cél PPTX-hez (ahová a dia klónozva lesz)
Presentation destPres = new Presentation();
try {
// Klónozza a kívánt diát a forrás prezentációból a cél prezentáció diákkollekciójának végére
ISlideCollection slds = destPres.getSlides();
slds.addClone(srcPres.getSlides().get_Item(0));
// Írja ki a cél prezentációt a lemezre
destPres.save("Aspose2_out.pptx", SaveFormat.Pptx);
} finally {
destPres.dispose();
}
} finally {
srcPres.dispose();
}
Dia klónozása egy másik pozícióba egy másik prezentációban
Ha egy diát egy prezentációból kell klónozni, és egy másik prezentációs fájlban, egy meghatározott pozícióban szeretné használni:
- Hozzon létre egy példányt a Presentation osztályból, amely a forrás prezentációt tartalmazza, ahonnan a dia klónozva lesz.
- Hozzon létre egy példányt a Presentation osztályból, amely a cél prezentációt tartalmazza, ahová a dia hozzá lesz adva.
- Hozzon létre egy példányt a ISlideCollection osztályból a cél prezentáció Slides gyűjteményének hivatkozásával.
- Hívja meg a insertClone metódust a ISlideCollection objektumnál, és adja meg a forrás prezentáció diáját a kívánt pozícióval együtt paraméterként a insertClone metódusnak.
- Írja ki a módosított célprezentációs fájlt.
Az alább bemutatott példában a forrás prezentáció nulla indexén lévő diát klónoztuk az 1‑es indexre (pozíció 2) a célprezentációban.
// A Presentation osztály példányosítása a forrás prezentációs fájl betöltéséhez
Presentation srcPres = new Presentation("CloneAtEndOfAnother.pptx");
try {
// A Presentation osztály példányosítása a cél PPTX-hez (ahová a dia klónozva lesz)
Presentation destPres = new Presentation();
try {
// Klónozza a kívánt diát a forrás prezentációból a cél prezentáció diákkollekciójának végére
ISlideCollection slds = destPres.getSlides();
slds.insertClone(2, srcPres.getSlides().get_Item(0));
// Írja ki a cél prezentációt a lemezre
destPres.save("Aspose2_out.pptx", SaveFormat.Pptx);
} finally {
destPres.dispose();
}
} finally {
srcPres.dispose();
}
Dia klónozása egy meghatározott pozícióban egy másik prezentációban
Ha egy diát egy mester diával együtt kell klónozni egy forrás prezentációból, és egy másik prezentációban használni, először a kívánt mester diákat kell klónozni a forrás prezentációból a cél prezentációba. Ezután ezt a mester diát kell használni a mester diával rendelkező dia klónozásához. A addClone(ISlide, IMasterSlide, boolean) egy célprezentációból származó mester diát vár, nem a forrás prezentációból. A dia mesterrel történő klónozásához kövesse az alábbi lépéseket:
- Hozzon létre egy példányt a Presentation osztályból, amely a forrás prezentációt tartalmazza, ahonnan a dia klónozva lesz.
- Hozzon létre egy példányt a Presentation osztályból, amely a célprezentációt tartalmazza, ahová a dia klónozva lesz.
- Hozzáférés a klónozandó diához és a hozzá tartozó mester diához.
- Hozzon létre egy példányt az IMasterSlideCollection osztályból a célprezentáció Presentation objektumának Masters gyűjteményével.
- Hívja meg a addClone metódust az IMasterSlideCollection objektumnál, és adja meg a forrás PPTX‑ből származó mester diát klónozandóként paraméterként a addClone metódusnak.
- Hozzon létre egy példányt az ISlideCollection osztályból a célprezentáció Presentation objektuma által szolgáltatott Slides gyűjteményre mutatva.
- Hívja meg a addClone metódust az ISlideCollection objektumnál, és adja meg a forrás prezentációból származó diát és a mester diát paraméterként a addClone metódusnak.
- Írja ki a módosított célprezentációs fájlt.
Az alább bemutatott példában egy mesterrel rendelkező diát (a forrás prezentáció nulla indexén) klónoztunk a célprezentáció végére a forrás diához tartozó mester használatával.
// A Presentation osztály példányosítása a forrás prezentációs fájl betöltéséhez
Presentation srcPres = new Presentation("CloneToAnotherPresentationWithMaster.pptx");
try {
// A Presentation osztály példányosítása a cél prezentációhoz (ahová a dia klónozva lesz)
Presentation destPres = new Presentation();
try {
// ISlide példányosítása a forrás prezentáció diákkollekciójából, együtt
// mester diával
ISlide SourceSlide = srcPres.getSlides().get_Item(0);
IMasterSlide SourceMaster = SourceSlide.getLayoutSlide().getMasterSlide();
// A kívánt mester dia klónozása a forrás prezentációból a cél prezentáció
// mester-gyűjteményébe
IMasterSlideCollection masters = destPres.getMasters();
IMasterSlide DestMaster = SourceSlide.getLayoutSlide().getMasterSlide();
// A kívánt mester dia klónozása a forrás prezentációból a cél prezentáció
// mester-gyűjteményébe
IMasterSlide iSlide = masters.addClone(SourceMaster);
// Klónozza a kívánt diát a forrás prezentációból a kívánt masterrel a cél
// prezentáció diákkollekciójának végére
ISlideCollection slds = destPres.getSlides();
slds.addClone(SourceSlide, iSlide, true);
// Mentse a cél prezentációt a lemezre
destPres.save("CloneToAnotherPresentationWithMaster_out.pptx", SaveFormat.Pptx);
} finally {
destPres.dispose();
}
} finally {
srcPres.dispose();
}
Dia klónozása egy meghatározott szekció végén
Ha egy diát klónozni szeretne, majd ugyanabban a prezentációs fájlban, de egy másik szekcióban szeretné használni, használja a addClone metódust, amelyet a ISlideCollection interfész biztosít. Az Aspose.Slides for Android via Java lehetővé teszi, hogy egy diát az első szekcióból klónozzunk, majd a klónozott diát a második szekcióba illesszük ugyanabban a prezentációban.
Az alábbi kódrészlet megmutatja, hogyan lehet egy diát klónozni, és a klónozott diát egy meghatározott szekcióba beszúrni.
IPresentation presentation = new Presentation();
try {
presentation.getSlides().get_Item(0).getShapes().addAutoShape(ShapeType.Rectangle, 200, 50, 300, 100);
presentation.getSections().addSection("Section 1", presentation.getSlides().get_Item(0));
ISection section2 = presentation.getSections().appendEmptySection("Section 2");
presentation.getSlides().addClone(presentation.getSlides().get_Item(0), section2);
// Mentse a célprezentációt a lemezre
presentation.save(dataDir + "CloneSlideIntoSpecifiedSection.pptx", SaveFormat.Pptx);
} finally {
if (presentation != null) presentation.dispose();
}
Gyakran Ismételt Kérdések
Megjelennek-e a jegyzetek és a felülvizsgálati megjegyzések a klónban?
Igen. A jegyzetoldal és a felülvizsgálati megjegyzések benne vannak a klónban. Ha nem szeretné őket, távolítsa el őket a beillesztés után.
Hogyan kezelik a diagramokat és azok adatforrásait?
A diagram objektum, a formázás és a beágyazott adatok másolásra kerülnek. Ha a diagram egy külső forráshoz (például egy OLE‑beágyazott munkafüzethez) volt csatolva, ez a kapcsolat OLE objektum formájában megmarad. A fájlok közti áthelyezés után ellenőrizze az adatok elérhetőségét és a frissítési viselkedést.
Szabályozhatom-e a beillesztés helyét és a szekciókat a klón számára?
Igen. A klón beilleszthető egy adott dia indexre, és elhelyezhető egy kiválasztott szekcióba. Ha a cél szekció nem létezik, először hozza létre, majd mozgassa a diát oda.