Gyakran Ismételt Kérdések

Gyakran Ismételt Kérdések

Gyakran Ismételt Kérdések

Hogyan telepíthetem az Aspose.Slides FOSS-t?

Adja hozzá a Maven függőséget a pom.xml-hez. Java 21 vagy újabb szükséges.

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

Ellenőrizze a telepítést:

import org.aspose.slides.foss.Presentation;

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

Nem szükséges a Microsoft Office vagy más rendszerfuttató környezet.


Miért kell meghívnom a dispose()-t a Presentation-en?

A Presentation osztály kezeli a belső OPC csomag erőforrásait. A dispose() meghívása nélkül ezek az erőforrások nem szabadulnak fel, ami memória szivárgást vagy fájlzárolást okozhat. Mindig használjon try‑finally‑t:

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

Alternatív megoldásként használja a try-with-resources-t, mivel Presentation implementálja a AutoCloseable-t:

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

Milyen fájlformátumokba menthetek?

Csak a PPTX támogatott:

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

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

A PDF, HTML, SVG vagy képfájlformátumokba (PNG, JPEG) történő exportálás nem érhető el ebben a kiadásban.


Megnyithatom a .ppt (régi PowerPoint 97-2003) fájlokat?

Nem. Csak .pptx (Office Open XML) fájlok támogatottak. A régi .ppt bináris formátumot ez a könyvtár nem kezeli.


Hogyan férhetek hozzá a diákokhoz?

A diák egy nulláról induló gyűjtemény, amely a prs.getSlides() segítségével érhető el:

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

Hogyan adhatok hozzá egy második diát?

Használja a prs.getSlides().addEmptySlide() elrendezéssel:

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);
}

Hogyan állíthatom be a dia háttérszínét?

Az Aspose.Slides FOSS ezen kiadásában a diák háttérszíne nem támogatott. Nincs getBackground() metódus a ISlide-on vagy bármely más osztályon ebben a könyvtárban. A dia háttér rögzített, amikor a prezentációt a sablonjából hozák létre. Egy későbbi kiadás esetleg hozzáadhat háttérvezérlést.


Hogyan használjam a NullableBool?

NullableBool egy háromállapotú enum, amely a formázási tulajdonságokhoz használható. Használja a NullableBool.TRUE‑t (nem a Java true‑t) a félkövér, dőlt és hasonló tulajdonságokhoz:

import org.aspose.slides.foss.NullableBool;

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

Miért nem hat a szövegszín beállítása?

A szín hozzárendelése előtt be kell állítania a fillType-t FillType.SOLID-ra:

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));

Használhatok diagramokat vagy SmartArt-ot?

Nem. Diagramok, SmartArt, OLE-objektumok, animációk, áttűnések, hiperhivatkozások, VBA-makrók és digitális aláírások nincsenek megvalósítva ebben a kiadásban, és UnsupportedOperationException hibát váltanak ki.


A könyvtár szálbiztos?

Minden Presentation objektum független. Különálló Presentation példányok létrehozása és használata külön szálakról biztonságos, amíg nem oszt meg egyetlen Presentation objektumot a szálak között külső szinkronizáció nélkül.


Hogyan ágyazhatok be egy képet?

Olvassa be a kép bájtjait, és adja hozzá a prs.getImages()-hez, majd hozza létre a PictureFrame-t:

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);

Lásd még

 Magyar