Ievads

Aspose.Slides FOSS for Java is now available on Maven Central: a free, MIT-licensed library for creating, reading, and editing PowerPoint .pptx faili pilnīgi Java, bez atkarības no Microsoft Office vai kādas īpašas izpildlaika vides.

Bibliotēka ir paredzēta izstrādātājiem, kuriem nepieciešams programmatiski ģenerēt vai manipulēt ar prezentāciju failiem: automatizēt slaidu komplektus no datiem, izvilkt tekstu un metadatus no augšupielādētiem PPTX failiem, izveidot prezentāciju balstītus atskaites caurulēšanas procesus vai integrēt prezentāciju veidošanu Spring Boot lietojumprogrammās. Jo aspose-slides-foss ir tīrs Java, tas tiek izvietots identiski Windows, macOS, Linux un Docker konteineros.

Galvenās funkcijas

  • Pilna apgriezta PPTX atbalsts: Atvērt jebkuru .pptx failu, modificēt tā saturu un saglabāt to atpakaļ, nezaudējot nezināmās XML daļas, kuras bibliotēka vēl nesaprot.
  • Slaidu pārvaldība: Pievienot, noņemt un iterēt slaidus, izmantojot prs.getSlides(); prezentācija sākas ar vienu tukšu slaidu pēc new Presentation().
  • AutoShapes, Tabulas un Savienotāji: Ievietot formas caur slide.getShapes().addAutoShape(), tabulārus datus caur slide.getShapes().addTable(), un vizuālus savienotājus starp formām caur slide.getShapes().addConnector().
  • Bagātināta teksta formatēšana: Formatēt tekstu rakstzīmju līmenī ar PortionFormat: fonta lielumu, treknrakstu, slīprakstu, pasvītrojumu un ARGB krāsu caur FillType.SOLID un ColorFormat.
  • Aizpildījuma veidi: Pielietot FillType.SOLID, GRADIENT, PATTERN, vai PICTURE aizpilda jebkuru formu.
  • Vizuālie efekti: Ārējā ēna, spīdums, mīksta mala, izplūdums, atspoguļojums un iekšējā ēna caur shape.getEffectFormat().
  • 3D formatting: Slīpums, kamera, gaismas aparatūra, materiāls un izspiešanas dziļums caur shape.getThreeDFormat().
  • Runātāja piezīmes: Pievienot piezīmju tekstu katram slaidam caur getNotesSlideManager().addNotesSlide().
  • Vītnes komentāri: Pievienot komentārus ar autora metadatiem un slaida pozīciju.
  • Iegultie attēli: Iegult no faila ceļa, baitiem vai InputStream.
  • Dokumenta īpašības: Lasīt un rakstīt kodola, lietotnes un pielāgotas īpašības.

Sākums

Pievienojiet Maven atkarību. Java 21 vai jaunāks ir nepieciešams.

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

Izveidojiet savu pirmo prezentāciju ar formu un saglabājiet to:

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.FillType;
import org.aspose.slides.foss.NullableBool;
import org.aspose.slides.foss.export.SaveFormat;
import org.aspose.slides.foss.drawing.Color;

public class HelloSlides {
    public static void main(String[] args) {
        try (Presentation prs = new Presentation()) {
            ISlide slide = prs.getSlides().get(0);
            IAutoShape shape = slide.getShapes().addAutoShape(
                ShapeType.RECTANGLE, 50, 50, 400, 120
            );
            shape.addTextFrame("Hello from Aspose.Slides FOSS!");
            prs.save("hello.pptx");
        }
    }
}

Vienmēr lietojiet Presentation iekš try-with-resources bloka; tas nodrošina, ka visi iekšējie resursi tiek atbrīvoti, kad bloks iziet.

Teksta formatēšanas piemērs

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.FillType;
import org.aspose.slides.foss.NullableBool;
import org.aspose.slides.foss.export.SaveFormat;
import org.aspose.slides.foss.drawing.Color;

try (Presentation prs = new Presentation()) {
    IAutoShape shape = prs.getSlides().get(0).getShapes().addAutoShape(
        ShapeType.RECTANGLE, 50, 50, 500, 150
    );
    ITextFrame tf = shape.addTextFrame("Bold heading in corporate blue");
    IPortionFormat fmt = tf.getParagraphs().get(0).getPortions().get(0).getPortionFormat();
    fmt.setFontHeight(28);
    fmt.setFontBold(NullableBool.TRUE);
    fmt.getFillFormat().setFillType(FillType.SOLID);
    fmt.getFillFormat().getSolidFillColor().setColor(new Color(0, 70, 127));
    prs.save("formatted.pptx");
}

Pašreizējie ierobežojumi

Sekojošās jomas izsauc UnsupportedOperationException šajā izlaidē:

  • Diagrammas, SmartArt un OLE objekti
  • Animācijas un slaidu pārejas
  • Eksportēšana uz PDF, HTML, SVG vai attēlu formātiem
  • Hipersaites, darbības iestatījumi, VBA makrokomandas un digitālie paraksti

Nezināmas XML daļas, kas sastaptas ielādes laikā, tiek saglabātas precīzi saglabāšanas brīdī, tādējādi PPTX faili, ko izveido citi rīki, droši tiek pārvērsti atpakaļ.

Skatīt arī