Jak rozpocząć pracę z Aspose.Slides FOSS dla Java

Jak rozpocząć pracę z Aspose.Slides FOSS dla Java

aspose-slides-foss for Java jest darmową, licencjonowaną na licencji MIT biblioteką do tworzenia i edytowania plików PowerPoint .pptx — nie wymaga Microsoft Office, dostępna w Maven Central.

Przewodnik krok po kroku

Krok 1: Dodaj zależność Maven

Dodaj zależność do swojego pom.xml (wymagany Java 21 lub nowszy):

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

Sprawdź, czy pakiet rozwiązuje się poprawnie, budując projekt:

mvn dependency:resolve

Krok 2: Importuj wymagane klasy

Zaimportuj klasy potrzebne do ładowania prezentacji i zapisywania:

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ISlide;
import org.aspose.slides.foss.IAutoShape;
import org.aspose.slides.foss.ITextFrame;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.FillType;

Krok 3: Utwórz prezentację

Utwórz Presentation bez argumentów, aby rozpocząć od jednego pustego slajdu. Zawsze używaj try-with-resources, aby zapewnić zwolnienie wewnętrznych zasobów:

import org.aspose.slides.foss.Presentation;

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

Krok 4: Dodaj kształt z tekstem

Użyj slide.getShapes().addAutoShape(), aby wstawić prostokąt, a następnie wywołaj addTextFrame() aby dodać treść tekstową:

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ISlide;
import org.aspose.slides.foss.IAutoShape;
import org.aspose.slides.foss.ITextFrame;
import org.aspose.slides.foss.IPortionFormat;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.NullableBool;

try (Presentation prs = new Presentation()) {
    ISlide slide = prs.getSlides().get(0);
    IAutoShape shape = slide.getShapes().addAutoShape(
        ShapeType.RECTANGLE, 50, 50, 400, 150
    );
    ITextFrame tf = shape.addTextFrame("Hello from Aspose.Slides FOSS!");
    IPortionFormat fmt = tf.getParagraphs().get(0).getPortions().get(0).getPortionFormat();
    fmt.setFontHeight(24);
    fmt.setFontBold(NullableBool.TRUE);
    prs.save("with_shape.pptx");
}

Krok 5: Zastosuj wypełnienie i zapisz

Ustaw jednolity kolor wypełnienia kształtu przed zapisaniem:

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.IAutoShape;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.FillType;
import org.aspose.slides.foss.drawing.Color;

try (Presentation prs = new Presentation()) {
    IAutoShape shape = prs.getSlides().get(0).getShapes().addAutoShape(
        ShapeType.RECTANGLE, 100, 100, 400, 200
    );
    shape.getFillFormat().setFillType(FillType.SOLID);
    shape.getFillFormat().getSolidFillColor().setColor(new Color(70, 130, 180));
    shape.addTextFrame("Styled shape");
    prs.save("styled.pptx");
}

Typowe problemy i rozwiązania

ClassNotFoundException for org.aspose.slides.foss.Presentation Zależność Maven nie została rozwiązana. Uruchom mvn dependency:resolve i sprawdź, czy artefakt jest dostępny w Maven Central. Zweryfikuj wersję w pom.xml.

UnsupportedOperationException podczas wywoływania niektórych metod Niektóre funkcje (wykresy, animacje, eksport PDF) generują UnsupportedOperationException w tej wersji. Sprawdź sekcję znanych ograniczeń w dokumentacji API przed użyciem zaawansowanych funkcji.

Współrzędne kształtu wydają się niepoprawne
Współrzędne i wymiary są podane w EMU (English Metric Units). Jeden punkt to w przybliżeniu
12700 EMU. Domyślny slajd ma wymiary 9144000 × 6858000 EMU.

Plik nie znaleziony podczas ładowania istniejącego PPTX
Podaj ścieżkę bezwzględną lub upewnij się, że katalog roboczy jest ustawiony prawidłowo:

import java.nio.file.Paths;
String path = Paths.get("presentations", "existing.pptx").toAbsolutePath().toString();
try (Presentation prs = new Presentation(path)) { ... }

Najczęściej zadawane pytania

Czy aspose-slides-foss wymaga Microsoft Office?

Nie. Biblioteka tworzy i odczytuje pliki .pptx natywnie w czystej Javie, bez zależności od Microsoft Office, automatyzacji COM ani interfejsów API systemu Windows.

Jakie wersje Javy są obsługiwane?

Java 21 lub nowszy. Biblioteka działa na systemach Windows, macOS, Linux oraz w kontenerach Docker.

Czy biblioteka jest darmowa do użytku komercyjnego?

Tak. Zostało wydane na licencji MIT. Możesz używać, modyfikować i rozpowszechniać je w dowolnym celu, w tym w zastosowaniach komercyjnych.

Czy mogę załadować istniejący plik PPTX?

Tak. Przekaż ścieżkę pliku do konstruktora Presentation:

try (Presentation prs = new Presentation("existing.pptx")) {
    System.out.println("Loaded " + prs.getSlides().size() + " slides");
    prs.save("copy.pptx");
}

Czy muszę jawnie zamknąć prezentację?

Tak. Presentation implementuje AutoCloseable. Zawsze używaj try-with-resources (try (Presentation prs = new Presentation()) { ... }), aby zapewnić czyszczenie.

Zobacz także

 Polski