Präsentationen in JavaScript speichern
Übersicht
Open Presentations in JavaScript beschreibt, wie die Presentation Klasse verwendet wird, um eine Präsentation zu öffnen. Dieser Artikel erklärt, wie man Präsentationen erstellt und speichert. Die Presentation Klasse enthält den Inhalt einer Präsentation. Egal, ob Sie eine Präsentation von Grund auf neu erstellen oder eine bestehende ändern, Sie möchten sie am Ende speichern. Mit Aspose.Slides für Node.js können Sie in eine Datei oder Stream speichern. Dieser Artikel erklärt die verschiedenen Möglichkeiten, eine Präsentation zu speichern.
Präsentationen in Dateien speichern
Speichern Sie eine Präsentation in einer Datei, indem Sie die save‑Methode der Presentation Klasse aufrufen. Übergeben Sie den Dateinamen und das Speicherformat an die Methode. Das folgende Beispiel zeigt, wie man eine Präsentation mit Aspose.Slides speichert.
// Instanziieren Sie die Presentation-Klasse, die eine Präsentationsdatei darstellt.
let presentation = new aspose.slides.Presentation();
try {
// Führen Sie hier einige Arbeiten aus...
// Speichern Sie die Präsentation in einer Datei.
presentation.save("Output.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Präsentationen in Streams speichern
Sie können eine Präsentation in einen Stream speichern, indem Sie einen Ausgabestream an die save‑Methode der Presentation Klasse übergeben. Eine Präsentation kann in viele Stream‑Typen geschrieben werden. Im folgenden Beispiel erzeugen wir eine neue Präsentation und speichern sie in einen Dateistream.
// Instanziieren Sie die Presentation-Klasse, die eine Präsentationsdatei darstellt.
let presentation = new aspose.slides.Presentation();
try {
let fileStream = java.newInstanceSync("java.io.FileOutputStream", "Output.pptx");
try {
// Speichern Sie die Präsentation in den Stream.
presentation.save(fileStream, aspose.slides.SaveFormat.Pptx);
} finally {
fileStream.close();
}
} finally {
presentation.dispose();
}
Präsentationen mit vordefiniertem Ansichtstyp speichern
Aspose.Slides ermöglicht es Ihnen, die Anfangsansicht festzulegen, die PowerPoint verwendet, wenn die erzeugte Präsentation geöffnet wird, über die ViewProperties Klasse. Verwenden Sie die setLastView Methode mit einem Wert aus der ViewType Aufzählung.
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();
}
Präsentationen im Strict Office Open XML-Format speichern
Aspose.Slides ermöglicht es Ihnen, eine Präsentation im Strict Office Open XML‑Format zu speichern. Verwenden Sie die PptxOptions Klasse und setzen Sie deren Conformance‑Eigenschaft beim Speichern. Wenn Sie Conformance.Iso29500_2008_Strict … setzen, wird die Ausgabedatei im Strict Office Open XML‑Format gespeichert.
Das folgende Beispiel erstellt eine Präsentation und speichert sie im Strict Office Open XML‑Format.
let options = new aspose.slides.PptxOptions();
options.setConformance(aspose.slides.Conformance.Iso29500_2008_Strict);
// Instanziieren Sie die Presentation‑Klasse, die eine Präsentationsdatei darstellt.
let presentation = new aspose.slides.Presentation();
try {
// Speichern Sie die Präsentation im Strict Office Open XML‑Format.
presentation.save("StrictOfficeOpenXml.pptx", aspose.slides.SaveFormat.Pptx, options);
} finally {
presentation.dispose();
}
Präsentationen im Office Open XML-Format im Zip64‑Modus speichern
Eine Office Open XML‑Datei ist ein ZIP‑Archiv, das Grenzen von 4 GB (2^32 Bytes) für die unkomprimierte Größe jeder Datei, die komprimierte Größe jeder Datei und die Gesamtabmessungen des Archivs festlegt und zudem auf 65 535 (2^16‑1) Dateien beschränkt. ZIP64‑Format‑Erweiterungen erhöhen diese Grenzen auf 2^64.
Die Methode PptxOptions.setZip64Mode ermöglicht es Ihnen, festzulegen, wann beim Speichern einer Office Open XML‑Datei ZIP64‑Format‑Erweiterungen verwendet werden sollen.
Diese Methode kann mit den folgenden Modi verwendet werden:
- IfNecessary verwendet ZIP64‑Format‑Erweiterungen nur, wenn die Präsentation die oben genannten Einschränkungen überschreitet. Dies ist der Standardmodus.
- Never verwendet ZIP64‑Format‑Erweiterungen nie.
- Always verwendet ZIP64‑Format‑Erweiterungen immer.
Der folgende Code demonstriert, wie man eine Präsentation als PPTX mit aktivierten ZIP64‑Format‑Erweiterungen speichert:
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();
}
HINWEIS
Wenn Sie mit Zip64Mode.Never … speichern, wird eine PptxException … ausgelöst, wenn die Präsentation nicht im ZIP32‑Format gespeichert werden kann.Präsentationen ohne Aktualisierung des Vorschaubildes speichern
Die Methode PptxOptions.setRefreshThumbnail steuert die Erzeugung des Vorschaubildes beim Speichern einer Präsentation als PPTX:
- Wenn auf
truegesetzt, wird das Vorschaubild beim Speichern aktualisiert. Dies ist die Standardeinstellung. - Wenn auf
falsegesetzt, bleibt das aktuelle Vorschaubild erhalten. Hat die Präsentation kein Vorschaubild, wird keines erzeugt.
Im nachfolgenden Code wird die Präsentation als PPTX gespeichert, ohne ihr Vorschaubild zu aktualisieren.
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();
}
Info
Diese Option hilft, die zum Speichern einer Präsentation im PPTX‑Format benötigte Zeit zu verkürzen.Speicherfortschritt in Prozent melden
Die Meldung des Speicherfortschritts wird über die Methode setProgressCallback auf SaveOptions und deren Unterklassen konfiguriert. Stellen Sie einen Java‑Proxy bereit, der das IProgressCallback Interface implementiert; während des Exports erhält das Callback periodisch Prozent‑Updates.
Die folgenden Code‑Snippets zeigen, wie man IProgressCallback verwendet.
const ExportProgressHandler = java.newProxy("com.aspose.slides.IProgressCallback", {
reporting: function(progressValue) {
// Verwenden Sie hier den Fortschrittswert in Prozent.
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();
}
Info
Aspose hat eine kostenlose PowerPoint‑Splitter‑App entwickelt, die es ermöglicht, eine Präsentation in mehrere Dateien zu teilen, indem ausgewählte Folien als neue PPTX‑ oder PPT‑Dateien gespeichert werden.FAQ
Wird „Fast Save“ (inkrementelles Speichern) unterstützt, sodass nur Änderungen geschrieben werden?
Nein. Beim Speichern wird jedes Mal die komplette Zieldatei erstellt; inkrementelles „Fast Save“ wird nicht unterstützt.
Ist es thread‑sicher, dieselbe Presentation‑Instanz aus mehreren Threads zu speichern?
Nein. Eine Presentation‑Instanz ist nicht thread‑sicher; speichern Sie sie aus einem einzigen Thread.
Was passiert mit Hyperlinks und extern verlinkten Dateien beim Speichern?
Hyperlinks werden beibehalten. Extern verlinkte Dateien (z. B. Videos über relative Pfade) werden nicht automatisch kopiert – stellen Sie sicher, dass die referenzierten Pfade weiterhin erreichbar sind.
Kann ich Dokument‑Metadaten (Autor, Titel, Unternehmen, Datum) setzen/speichern?
Ja. Standard‑document properties werden unterstützt und beim Speichern in die Datei geschrieben.