Dia másolása bemutatóban JavaScriptben
Bevezetés
A klónozás egy pontos másolat vagy replika létrehozásának folyamata. Az Aspose.Slides for Node.js via Java lehetővé teszi, hogy bármely diát lemásoljunk vagy klónozzunk, majd a klónozott diát a jelenlegi vagy bármely más megnyitott bemutatóba illesszük. A dia klónozása új diát hoz létre, amelyet a fejlesztők módosíthatnak anélkül, hogy az eredeti diát megváltoztatnák. Többféle módja is létezik egy dia klónozásának:
- Klónozás a végén egy bemutatóban.
- Klónozás más pozícióba egy bemutatóban.
- Klónozás a végén egy másik bemutatóban.
- Klónozás más pozícióba egy másik bemutatóban.
- Klónozás egy meghatározott pozícióba egy másik bemutatóban.
Az Aspose.Slides for Node.js via Java (a Slide objektumok gyűjteménye) által a Presentation objektum biztosított addClone és insertClone metódusok a fenti típusú dia-klónozások végrehajtásához
Klónozás a végén egy bemutatóban
Ha egy diát szeretne klónozni, majd ugyanabban a bemutatófájlban a meglévő diák végére helyezni, 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 SlideCollection osztályból, a Presentation objektum által kiadott Slides gyűjteményre hivatkozva.
- Hívja meg a addClone metódust, amelyet a SlideCollection objektum biztosít, és adja át a klónozandó diát paraméterként a addClone metódusnak.
- Írja ki a módosított bemutatófájlt.
Az alább bemutatott példában egy diát (amely a bemutató első pozíciójában – nulla index – helyezkedik el) klónoztunk a bemutató végére.
// Létrehozza a Presentation osztályt, amely egy bemutató fájlt képvisel
var pres = new aspose.slides.Presentation("CloneWithinSamePresentationToEnd.pptx");
try {
// Klónozza a kívánt diát a bemutató ugyanabban a prezentációban lévő diák gyűjteményének végére
var slds = pres.getSlides();
slds.addClone(pres.getSlides().get_Item(0));
// Kiírja a módosított bemutatót a lemezre
pres.save("Aspose_CloneWithinSamePresentationToEnd_out.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
pres.dispose();
}
Klónozás másik pozícióba egy bemutatóban
Ha egy diát szeretne klónozni, majd ugyanabban a bemutatófájlban, de másik pozícióban 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ényre hivatkozva, amelyet a Presentation objektum biztosít.
- Hívja meg a insertClone metódust, amelyet a SlideCollection objektum biztosít, és adja át a klónozandó diát valamint az új pozíció indexét paraméterként a insertClone metódusnak.
- Írja ki a módosított bemutatót PPTX fájlként.
Az alább bemutatott példában egy diát (amely a nulla index – 1. pozíció – helyén van a bemutatóban) klónoztunk az 1-es indexre – 2. pozícióra – a bemutatóban.
// Létrehozza a Presentation osztályt, amely egy bemutató fájlt képvisel
var pres = new aspose.slides.Presentation("CloneWithInSamePresentation.pptx");
try {
// Klónozza a kívánt diát a bemutató ugyanabban a prezentációban lévő diák gyűjteményének végére
var slds = pres.getSlides();
// Klónozza a kívánt diát a bemutató ugyanabban a prezentációban a megadott indexre
slds.insertClone(2, pres.getSlides().get_Item(1));
// Kiírja a módosított bemutatót a lemezre
pres.save("Aspose_CloneWithInSamePresentation_out.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
pres.dispose();
}
Klónozás a végén egy másik bemutatóban
Ha egy diát egy bemutatóból kell klónozni, és egy másik bemutató fájl végére szeretné beilleszteni:
- Hozzon létre egy példányt a Presentation osztályból, amely a forrásbemutatót tartalmazza.
- Hozzon létre egy példányt a Presentation osztályból, amely a célbemutatót tartalmazza, ahová a dia hozzá lesz adva.
- Hozzon létre egy SlideCollection példányt a Slides gyűjteményre hivatkozva, amelyet a célbemutató Presentation objektuma biztosít.
- Hívja meg a addClone metódust, amelyet a SlideCollection objektum biztosít, és adja át a forrásbemutató diát paraméterként a addClone metódusnak.
- Írja ki a módosított célbemutató fájlt.
Az alább bemutatott példában egy diát (a forrásbemutató első indexéből) klónoztunk a célbemutató végére.
// Példányosítja a Presentation osztályt a forrás bemutató fájl betöltéséhez
var srcPres = new aspose.slides.Presentation("CloneAtEndOfAnother.pptx");
try {
// Példányosítja a Presentation osztályt a cél PPTX-hez (ahová a dia klónozandó)
var destPres = new aspose.slides.Presentation();
try {
// Klónozza a kívánt diát a forrás bemutatóból a cél bemutató diagyűjteményének végére
var slds = destPres.getSlides();
slds.addClone(srcPres.getSlides().get_Item(0));
// Kiírja a cél bemutatót a lemezre
destPres.save("Aspose2_out.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
destPres.dispose();
}
} finally {
srcPres.dispose();
}
Klónozás másik pozícióba egy másik bemutatóban
Ha egy diát egy bemutatóból kell klónozni, és egy másik bemutató fájlban, egy meghatározott pozícióba szeretné elhelyezni:
- Hozzon létre egy példányt a Presentation osztályból, amely a forrásbemutatót tartalmazza, ahonnan a dia klónozandó.
- Hozzon létre egy példányt a Presentation osztályból, amely a célbemutatót tartalmazza, ahová a dia hozzá lesz adva.
- Hozzon létre egy SlideCollection osztályt a Slides gyűjteményre hivatkozva, amelyet a célbemutató Presentation objektuma biztosít.
- Hívja meg a insertClone metódust, amelyet a SlideCollection objektum biztosít, és adja át a forrásbemutató diát valamint a kívánt pozíciót paraméterként a insertClone metódusnak.
- Írja ki a módosított célbemutató fájlt.
Az alább bemutatott példában egy diát (a forrásbemutató nulla indexéről) klónoztunk az 1-es indexre (2. pozíció) a célbemutatóban.
// Példányosítja a Presentation osztályt a forrás bemutató fájl betöltéséhez
var srcPres = new aspose.slides.Presentation("CloneAtEndOfAnother.pptx");
try {
// Példányosítja a Presentation osztályt a cél PPTX-hez (ahová a dia klónozandó)
var destPres = new aspose.slides.Presentation();
try {
// Klónozza a kívánt diát a forrás bemutatóból a cél bemutató diagyűjteményének végére
var slds = destPres.getSlides();
slds.insertClone(2, srcPres.getSlides().get_Item(0));
// Kiírja a cél bemutatót a lemezre
destPres.save("Aspose2_out.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
destPres.dispose();
}
} finally {
srcPres.dispose();
}
Klónozás meghatározott pozícióba egy másik bemutatóban
Ha egy diát fő diával (master slide) kell klónozni egy bemutatóból, és egy másik bemutatóba használni, először a kívánt fő diát kell klónozni a forrásbemutatóból a célbemutatóba. Ezután a fő diát kell használni a dia fő diával történő klónozásához. A addClone(ISlide, IMasterSlide, boolean) egy célbemutató fő diát vár a forrásbemutató helyett. A diát fő diával való 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ásbemutatót tartalmazza, ahonnan a dia klónozandó.
- Hozzon létre egy példányt a Presentation osztályból, amely a célbemutatót tartalmazza, ahova a dia klónozandó.
- Hozzáférés a klónozandó diához és a fő diához.
- Hozzon létre egy MasterSlideCollection osztályt a Masters gyűjteményre hivatkozva, amelyet a Presentation objektum a célbemutatóban biztosít.
- Hívja meg a addClone metódust, amelyet a MasterSlideCollection objektum biztosít, és adja át a forrás PPTX‑ből klónozandó fő diát paraméterként a addClone metódusnak.
- Hozzon létre egy SlideCollection osztályt úgy, hogy a Slides gyűjteményre hivatkozik, amelyet a Presentation objektum a célbemutatóban biztosít.
- Hívja meg a addClone metódust, amelyet a SlideCollection objektum biztosít, és adja át a forrásbemutató diát valamint a fő diát paraméterként a addClone metódusnak.
- Írja ki a módosított célbemutató fájlt.
Az alábbi példában egy fő diával rendelkező diát (a forrásbemutató nulla indexén) klónoztunk a célbemutató végére a forrás dia fő diájának használatával.
// Létrehozza a Presentation osztályt a forrás bemutató fájl betöltéséhez
var srcPres = new aspose.slides.Presentation("CloneToAnotherPresentationWithMaster.pptx");
try {
// Létrehozza a Presentation osztályt a cél bemutatóhoz (ahová a dia klónozandó)
var destPres = new aspose.slides.Presentation();
try {
// Létrehozza az ISlide-et a forrás bemutató diagyűjteményéből,
// és a fő diát
var SourceSlide = srcPres.getSlides().get_Item(0);
var SourceMaster = SourceSlide.getLayoutSlide().getMasterSlide();
// Klónozza a kívánt fő diát a forrás bemutatóból a
// cél bemutató master-gyűjteményébe
// Klónozza a kívánt fő diát a forrás bemutatóból a
// cél bemutató master-gyűjteményébe
var masters = destPres.getMasters();
var DestMaster = SourceSlide.getLayoutSlide().getMasterSlide();
var iSlide = masters.addClone(SourceMaster);
// Klónozza a kívánt diát a forrás bemutatóból a kívánt fő diával a
// cél bemutató diagyűjteményének végére
var slds = destPres.getSlides();
slds.addClone(SourceSlide, iSlide, true);
// Mentse a cél bemutatót a lemezre
destPres.save("CloneToAnotherPresentationWithMaster_out.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
destPres.dispose();
}
} finally {
srcPres.dispose();
}
Klónozás a végén egy megadott szakaszban
Ha egy diát szeretne klónozni, majd ugyanabban a bemutatófájlban, de egy másik szakaszban használni, akkor használja a addClone metódust, amelyet a SlideCollection osztály biztosít. Az Aspose.Slides for Node.js via Java lehetővé teszi, hogy egy diát az első szakaszból klónozzunk, majd a klónozott diát a második szakaszba illesszük be ugyanabban a bemutatóban.
Az alábbi kódrészlet bemutatja, hogyan lehet egy diát klónozni, és a klónozott diát egy megadott szakaszba beszúrni.
var presentation = new aspose.slides.Presentation();
try {
presentation.getSlides().get_Item(0).getShapes().addAutoShape(aspose.slides.ShapeType.Rectangle, 200, 50, 300, 100);
presentation.getSections().addSection("Section 1", presentation.getSlides().get_Item(0));
var section2 = presentation.getSections().appendEmptySection("Section 2");
presentation.getSlides().addClone(presentation.getSlides().get_Item(0), section2);
// Mentse a cél bemutatót a lemezre
presentation.save(dataDir + "CloneSlideIntoSpecifiedSection.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
if (presentation != null) {
presentation.dispose();
}
}
GYIK
Klónozódnak a beszélői jegyzetek és a recenziós megjegyzések?
Igen. A jegyzetoldal és a recenziós megjegyzések is részei a klónnak. Ha nem akarja őket, távolítsa el őket a behelyezés után.
Hogyan kezelik a diagramokat és azok adatforrásait?
A diagram objektuma, formázása és a beágyazott adatok másolásra kerülnek. Ha a diagram egy külső forráshoz (például OLE‑beágyazott munkafüzethez) volt csatolva, ez a kapcsolat megmarad OLE objektum. A fájlok közti áthelyezés után ellenőrizze az adat elérhetőségét és a frissítési viselkedést.
Szabályozhatom a klón beszúrási pozícióját és a szakaszokat?
Igen. A klónt beszúrhatja egy meghatározott diaindexre, és elhelyezheti egy kiválasztott szakaszba. Ha a cél szakasz nem létezik, előbb hozza létre, majd helyezze át a diát oda.