Häufig gestellte Fragen

Häufig gestellte Fragen

Häufig gestellte Fragen

Wie installiere ich Aspose.Slides FOSS?

Hinzu kommt die Maven-Abhängigkeit zu Ihrem pom.xml. ist Java 21 oder höher erforderlich.

<dependency>
  <groupId>org.aspose</groupId>
  <artifactId>aspose-slides-foss</artifactId>
  <version>26.7.0</version>
</dependency>

Die Installation überprüfen:

import org.aspose.slides.foss.Presentation;

Presentation prs = new Presentation();
try {
    System.out.println("Slides: " + prs.getSlides().size());
} finally {
    prs.dispose();
}

Keine Microsoft Office- oder sonstige Systemlaufzeit erforderlich.


Warum muss ich anrufen ? dispose() auf die Präsentation?

Die Presentation Die Klasse verwaltet interne OPC-Paketressourcen. Ohne Anrufe von dispose(), diese Ressourcen werden nicht freigegeben, was zu Speicherlecks oder Dateizählen führen kann. Verwenden Sie immer try-finally:

Presentation prs = new Presentation("input.pptx");
try {
    // work here
    prs.save("output.pptx", SaveFormat.PPTX);
} finally {
    prs.dispose();
}

Die meisten derartigen Maßnahmen werden in den letzten Jahren durchgeführt. Presentation Ausrüstungsgegenstände AutoCloseable:

try (Presentation prs = new Presentation("input.pptx")) {
    prs.save("output.pptx", SaveFormat.PPTX);
}

In welche Dateiformate kann ich speichern?

Die SaveFormat enum definiert Konstanten für viele Formate PPTX, PDF, HTML, SVG, JPEG, PNG, und andere für die API-Kompatibilität mit der kommerziellen Ausgabe. save() Überlastungen ignorieren das Format-Argument und schreiben immer PPTX Ausgabe. SaveFormat.PDF Kompiliert korrekt, erzeugt aber eine .pptx Akten, nicht eine .pdf.

import org.aspose.slides.foss.export.SaveFormat;

prs.save("output.pptx", SaveFormat.PPTX);

Export in andere Formate als PPTX ist nicht funktional verfügbar. Verwenden Sie die Funktion “Export” für den Text: SaveFormat.PPTX für alle Rettungsoperationen.


Kann ich die Tür öffnen? .ppt (alte PowerPoint 97-2003) Dateien?

Nein, nur… .pptx (Office Open XML) Dateien unterstützt werden. Legacy .ppt Binärformat wird nicht von dieser Bibliothek behandelt.


Wie komme ich auf die Folien?

Die Folien sind eine Null-basierte Sammlung, die über prs.getSlides():

ISlide firstSlide = prs.getSlides().get(0);
int slideCount = prs.getSlides().size();

Wie füge ich eine zweite Folie hinzu?

Verwendung prs.getSlides().addEmptySlide() mit einer Anordnung:

try (Presentation prs = new Presentation()) {
    ILayoutSlide layout = prs.getLayoutSlides().get(0);
    prs.getSlides().addEmptySlide(layout);
    ISlide slide2 = prs.getSlides().get(1);
    prs.save("two-slides.pptx", SaveFormat.PPTX);
}

Wie kann ich die Hintergrundfarbe der Folie einstellen?

Die Hintergrundfarbe der Folie ist: nicht unterstützt In dieser Ausgabe von FOSS gibt es keine getBackground() Methode auf ISlide Die Bilder werden in der Schablone erstellt. Eine zukünftige Version kann eine Hintergrundsteuerung hinzufügen.


Wie benutze ich die NullableBool?

NullableBool ist ein Tri-State-Enum, das für die Formatierung von Eigenschaften verwendet wird. Use NullableBool.TRUE (nicht Java’s) true) für fett, kursiv und ähnliche Eigenschaften:

import org.aspose.slides.foss.NullableBool;

fmt.setFontBold(NullableBool.TRUE);
fmt.setFontItalic(NullableBool.FALSE);

Warum hat das Einstellen von Textfarben keine Wirkung?

Sie müssen auch festlegen, fillType zu . FillType.SOLID vor der Zuordnung der Farbe:

import org.aspose.slides.foss.FillType;
import org.aspose.slides.foss.drawing.Color;

fmt.getFillFormat().setFillType(FillType.SOLID);
fmt.getFillFormat().getSolidFillColor().setColor(Color.fromArgb(255, 200, 0, 0));

Kann ich Diagramme oder SmartArt benutzen?

No. Diagramme, SmartArt, OLE-Objekte, Animationen, Übergänge, Hyperlinks, VBA Makros und digitale Signaturen werden in dieser Ausgabe nicht implementiert und erhöhen die UnsupportedOperationException.


Ist die Bibliothek sicher?

Jeder von ihnen Presentation Objekt ist unabhängig. Erstellen und verwenden separaten Presentation Instanzen von separaten Threads ist sicher, solange Sie nicht teilen eine einzelne Presentation Objekt über Threads ohne externe Synchronisation.


Wie kann ich ein Bild eingebettet?

Lesen Sie die Bild-Bytes und fügen sie zu prs.getImages(), dann eine PictureFrame:

import org.aspose.slides.foss.ShapeType;

byte[] imageData = java.nio.file.Files.readAllBytes(
    java.nio.file.Paths.get("logo.png")
);
IPPImage image = prs.getImages().addImage(imageData);
slide.getShapes().addPictureFrame(ShapeType.RECTANGLE, 50, 50, 200, 150, image);

Siehe auch:

 Deutsch