Prezentációk mentése JavaScript-ben

Áttekintés

Open Presentations in JavaScript bemutatja, hogyan használható a Presentation osztály egy bemutató megnyitásához. Ez a cikk elmagyarázza, hogyan hozhatók létre és menthetők a bemutatók. A Presentation osztály tartalmazza a bemutató tartalmát. Akár új bemutatót hoz létre, akár egy meglévőt módosít, a munka befejezésekor mentenie kell azt. Az Aspose.Slides for Node.js segítségével fájlba vagy folyamba menthet. Ez a cikk bemutatja a bemutató mentésének különböző módjait.

Bemutatók mentése fájlokba

A bemutató mentéséhez egy fájlba hívd meg a Presentation osztály save metódusát. Add meg a fájl nevét és a mentési formátumot a metódusnak. Az alábbi példa megmutatja, hogyan menthető a bemutató az Aspose.Slides segítségével.

// Példányosítsa a Presentation osztályt, amely egy prezentációs fájlt képvisel.
let presentation = new aspose.slides.Presentation();
try {
    // Végezzen némi munkát itt...

    // Mentse a prezentációt egy fájlba.
    presentation.save("Output.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Bemutatók mentése folyamokba

A bemutatót egy folyamra mentheted, ha egy kimeneti folyamot adsz át a Presentation osztály save metódusának. A bemutató számos folyamtípusba írható. Az alábbi példában egy új bemutatót hozunk létre, és azt egy fájlfolyamban mentjük.

// Példányosítsa a Presentation osztályt, amely egy prezentációs fájlt képvisel.
let presentation = new aspose.slides.Presentation();
try {
    let fileStream = java.newInstanceSync("java.io.FileOutputStream", "Output.pptx");
    try {
        // Mentse a prezentációt a folyamba.
        presentation.save(fileStream, aspose.slides.SaveFormat.Pptx);
    } finally {
        fileStream.close();
    }
} finally {
    presentation.dispose();
}

Bemutatók mentése előre meghatározott nézettípussal

Az Aspose.Slides lehetővé teszi, hogy beállítsd a PowerPoint által a generált bemutató megnyitásakor használt kezdeti nézetet a ViewProperties osztály segítségével. Használd a setLastView metódust a ViewType felsorolásból származó értékkel.

let presentation = new aspose.slides.Presentation();
try {
    presentation.getViewProperties().setLastView(aspose.slides.ViewType.SlideMasterView);
    presentation.save("SlideMasterView.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Bemutatók mentése szigorú Office Open XML formátumban

Az Aspose.Slides lehetővé teszi, hogy a bemutatót szigorú Office Open XML formátumban mentsd. Használd a PptxOptions osztályt, és állítsd be a conformance tulajdonságot a mentéskor. Ha a Conformance.Iso29500_2008_Strict értéket használod, a kimeneti fájl szigorú Office Open XML formátumban lesz mentve.

Az alábbi példa létrehoz egy bemutatót, és azt szigorú Office Open XML formátumban menti.

let options = new aspose.slides.PptxOptions();
options.setConformance(aspose.slides.Conformance.Iso29500_2008_Strict);

// Példányosítsa a Presentation osztályt, amely egy prezentációs fájlt képvisel.
let presentation = new aspose.slides.Presentation();
try {
    // Mentse a prezentációt a szigorú Office Open XML formátumban.
    presentation.save("StrictOfficeOpenXml.pptx", aspose.slides.SaveFormat.Pptx, options);
} finally {
    presentation.dispose();
}

Bemutatók mentése Office Open XML formátumban ZIP64 módban

Az Office Open XML fájl egy ZIP archívum, amely 4 GB (2^32 bájt) korlátot szab a kicsomagolt fájlméretre, a tömörített fájlméretre és az archívum teljes méretére, illetve 65 535 (2^16‑1) fájlra korlátozza. A ZIP64 formátumkiterjesztések ezeket a korlátokat 2^64‑re emelik.

A PptxOptions.setZip64Mode metódus lehetővé teszi, hogy kiválaszd, mikor használd a ZIP64 formátumkiterjesztéseket Office Open XML fájl mentésekor.

Ez a metódus a következő módokkal használható:

  • IfNecessary csak akkor használja a ZIP64 kiterjesztéseket, ha a bemutató meghaladja a fenti korlátokat. Ez az alapértelmezett mód.
  • Never soha nem használja a ZIP64 kiterjesztéseket.
  • Always mindig használja a ZIP64 kiterjesztéseket.

Az alábbi kód bemutatja, hogyan menthető a bemutató PPTX formátumban ZIP64 kiterjesztésekkel engedélyezve:

let pptxOptions = new aspose.slides.PptxOptions();
pptxOptions.setZip64Mode(aspose.slides.Zip64Mode.Always);

let presentation = new aspose.slides.Presentation("Sample.pptx");
try {
    presentation.save("OutputZip64.pptx", aspose.slides.SaveFormat.Pptx, pptxOptions);
} finally {
    presentation.dispose();
}

Bemutatók mentése a bélyegkép frissítése nélkül

A PptxOptions.setRefreshThumbnail metódus szabályozza a bélyegkép generálását PPTX formátumba mentéskor:

  • Ha true értékre van állítva, a bélyegkép frissül a mentés során. Ez az alapértelmezett.
  • Ha false értékre van állítva, az aktuális bélyegkép megmarad. Ha a bemutatónak nincs bélyegképe, akkor nem kerül generálásra.

Az alábbi kódban a bemutató PPTX formátumban kerül mentésre a bélyegkép frissítése nélkül.

let pptxOptions = new aspose.slides.PptxOptions();
pptxOptions.setRefreshThumbnail(false);

let presentation = new aspose.slides.Presentation("Sample.pptx");
try {
    presentation.save("Output.pptx", aspose.slides.SaveFormat.Pptx, pptxOptions);
}
finally {
    presentation.dispose();
}

Mentési előrehaladás jelentése százalékban

A mentési előrehaladás jelentését a SaveOptions és alosztályainak setProgressCallback metódusa konfigurálja. Adj meg egy Java proxy-t, amely megvalósítja az IProgressCallback interfészt; az exportálás során a callback periódusos százalékos frissítéseket kap.

Az alábbi kódrészletek mutatják, hogyan használható az IProgressCallback.

const ExportProgressHandler = java.newProxy("com.aspose.slides.IProgressCallback", {
    reporting: function(progressValue) {
        // Használja itt a készültségi százalékértéket.
        const progress = Math.floor(progressValue);
        console.log(`${progress}% of the file has been converted.`);
    }
});

let saveOptions = new aspose.slides.PdfOptions();
saveOptions.setProgressCallback(ExportProgressHandler);

let presentation = new aspose.slides.Presentation("Sample.pptx");
try {
    presentation.save("Output.pdf", aspose.slides.SaveFormat.Pdf, saveOptions);
} finally {
    presentation.dispose();
}

GYIK

Támogatja-e a „gyors mentést” (inkrementális mentés), amely csak a változásokat írja?

Nem. A mentés minden alkalommal a teljes célfájlt hozza létre; az inkrementális „gyors mentés” nincs támogatva.

Biztonságos-e ugyanannak a Presentation példánynak a mentése több szálról?

Nem. A Presentation példány nem szálbiztos (/slides/hu/nodejs-java/multithreading/); csak egy szálról kell menteni.

Mi történik a hiperhivatkozásokkal és a külsőleg linkelt fájlokkal mentéskor?

A Hyperlinks megmaradnak. A külsőleg linkelt fájlok (például relatív útvonalon hivatkozott videók) nem kerülnek automatikusan másolásra – biztosítsd, hogy a hivatkozott útvonalak továbbra is elérhetők legyenek.

Beállítható/menthető-e a dokumentum metaadata (Szerző, Cím, Cég, Dátum)?

Igen. A szabványos document properties támogatott, és a mentéskor a fájlba lesznek írva.