PowerPoint-Folien zu PNG konvertieren in JavaScript
Übersicht
Dieser Artikel erklärt, wie Präsentationsfolien mit Aspose.Slides für Node.js über Java in PNG‑Bilder konvertiert werden. Sie können Präsentationen in Formaten wie PPT, PPTX und ODP laden, jede Folie rendern und sie als separates PNG‑Bild speichern.
Die nachstehenden Beispiele zeigen das Rendern im Standardskala, das Erhöhen der Skalierung, das Festlegen der Ausgabedimensionen in Pixeln und die Auswahl eines Gradienten‑Renderstils.
PowerPoint in PNG konvertieren
Laden Sie eine Präsentation mit der Presentation‑Klasse und greifen Sie über die Presentation.getSlides-Sammlung auf ihre Folien zu. Das Beispiel rendert jede Folie mit Slide.getImage ohne Parameter, um ein Thumbnail zu erstellen. Anschließend wird IImage.save mit ImageFormat.Png aufgerufen, um jede gerenderte Folie als PNG‑Bild zu speichern.
var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");
let presentation = new aspose.slides.Presentation("presentation.pptx");
try {
let slideCount = presentation.getSlides().size();
for (let index = 0; index < slideCount; index++) {
let slide = presentation.getSlides().get_Item(index);
let image = slide.getImage();
try {
image.save("slide_" + index + ".png", aspose.slides.ImageFormat.Png);
} finally {
image.dispose();
}
}
} finally {
presentation.dispose();
}
Note
Die parameterlose Überladung von Slide.getImage rendert mit einer Skalierung von 0,2. Zum Beispiel erzeugt eine Folie mit den Maßen 720 × 540 Punkte ein Thumbnail mit 144 × 108 Pixel. Um die Ausgabedimensionen zu steuern, verwenden Sie die Überladungen mit Skalierungsfaktoren oder eine explizite Bildgröße, wie unten gezeigt.PowerPoint in PNG mit benutzerdefinierten Abmessungen konvertieren
Übergeben Sie horizontale und vertikale Skalierungsfaktoren an Slide.getImage, um die gerenderten Abmessungen zu steuern. In diesem Beispiel sind beide Faktoren 2, sodass eine Folie mit den Maßen 720 × 540 Punkte ein Bild von 1440 × 1080 Pixel erzeugt. Gleiche Skalierungsfaktoren erhalten das Seitenverhältnis der Folie. Jedes Bild wird im PNG‑Format mit IImage.save gespeichert.
var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");
let presentation = new aspose.slides.Presentation("presentation.pptx");
try {
let scaleX = 2.0;
let scaleY = scaleX;
let slideCount = presentation.getSlides().size();
for (let index = 0; index < slideCount; index++) {
let slide = presentation.getSlides().get_Item(index);
let image = slide.getImage(scaleX, scaleY);
try {
image.save("slide_" + index + ".png", aspose.slides.ImageFormat.Png);
} finally {
image.dispose();
}
}
} finally {
presentation.dispose();
}
PowerPoint in PNG mit benutzerdefinierter Größe konvertieren
Um die Ausgabedimensionen in Pixeln anzugeben, übergeben Sie eine Größe an Slide.getImage anstelle von Skalierungsfaktoren. Dieses Beispiel rendert jede Folie mit 960 × 720 Pixel und speichert das Ergebnis mit IImage.save. Wählen Sie Dimensionen, die dem Seitenverhältnis der Folie entsprechen, um ein Verziehen des Bildes zu vermeiden.
var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");
const java = require("java");
let presentation = new aspose.slides.Presentation("presentation.pptx");
try {
let imageSize = java.newInstanceSync("java.awt.Dimension", 960, 720);
let slideCount = presentation.getSlides().size();
for (let index = 0; index < slideCount; index++) {
let slide = presentation.getSlides().get_Item(index);
let image = slide.getImage(imageSize);
try {
image.save("slide_" + index + ".png", aspose.slides.ImageFormat.Png);
} finally {
image.dispose();
}
}
} finally {
presentation.dispose();
}
Einen Gradienten‑Renderstil wählen
Angenommen, eine Folie enthält Farbverläufe, aber die Übergänge im exportierten PNG erscheinen heller oder anders als in PowerPoint. Sie können die Methode SaveOptions.setGradientStyle, die von RenderingOptions geerbt wird, verwenden, um zu wählen, wie die Verläufe gerendert werden.
Laden Sie gradient-styles.pptx herunter und legen Sie sie im Arbeitsverzeichnis der Anwendung ab. Die erste Folie enthält zwei lineare Verläufe: Cyan zu Orange oben und Blau zu Gelb unten. Jeder Verlauf hat zwei Stopps bei 0 % und 100 %.
Das folgende Beispiel lädt diese Präsentation und rendert die gleiche erste Folie in beiden Modi mit Slide.getImage.
var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");
let presentation = new aspose.slides.Presentation("gradient-styles.pptx");
try {
let slide = presentation.getSlides().get_Item(0);
let gradientStyles = [aspose.slides.GradientStyle.Default, aspose.slides.GradientStyle.PowerPointUI];
for (let style of gradientStyles) {
let options = new aspose.slides.RenderingOptions();
options.setGradientStyle(style);
let styleName = style == aspose.slides.GradientStyle.Default ? "Default" : "PowerPointUI";
let image = slide.getImage(options, 1.0, 1.0);
try {
image.save("gradient-" + styleName + ".png", aspose.slides.ImageFormat.Png);
} finally {
image.dispose();
}
}
} finally {
presentation.dispose();
}
Die nachstehenden Bilder zeigen die Ausgabe derselben Folie, wobei beide Verläufe in jedem Bild zu sehen sind:
| Standard | PowerPointUI |
|---|---|
![]() |
![]() |
In diesem Beispiel erzeugt Standard hellere Zwischenfarben, während PowerPointUI dunklere Zwischenfarben erzeugt. Der Unterschied hängt von den Farben und Stopps im Verlauf ab.
Wählen Sie Standard, wenn die Standardausgabe von Aspose.Slides Ihren Anforderungen entspricht. Probieren Sie PowerPointUI, wenn es Ihnen wichtig ist, das Erscheinungsbild in PowerPoint nachzubilden. Vergleichen Sie beide Ausgaben mit Ihrem gewünschten Ergebnis; keiner der Modi ist allgemein vorzuziehen.
FAQ
Wie kann ich eine bestimmte Form, z. B. ein Diagramm oder ein Bild, anstelle der gesamten Folie exportieren?
Aspose.Slides unterstützt das Erzeugen von Thumbnails für einzelne Formen, wodurch Sie eine Form als PNG‑Bild rendern können.
Wird eine parallele Konvertierung auf einem Server unterstützt?
Ja. Verwenden Sie für jeden Thread oder Prozess eine separate Präsentations‑Instanz; teilen Sie keine einzelne Instanz über Threads hinweg.
Welche Evaluierungsbeschränkungen gelten beim Export nach PNG?
Der Evaluierungsmodus fügt den Ausgabebildern ein Wasserzeichen hinzu und wendet weitere Einschränkungen an, bis eine Lizenz aktiviert ist.

