Introducció

Aspose.Slides FOSS for Java is a free, open-source library that lets Java developers create and manipulate PowerPoint presentations without any dependency on Microsoft Office. The library ships under the org.aspose.slides.foss paquets i objectius Java 21 o superiors.

El projecte es publica sota la llicència MIT, de manera que pots utilitzar-lo tant en projectes personals com comercials sense cost i sense clau API. Ofereix un model d’objecte ric per a diapositives, formes, text, taules, imatges, comentaris i propietats de document, recolzat per una manipulació directa del format de paquet Open XML d ‘Office .

Amb 273 classes, més de 2.600 mètodes i 42 enumeracions, l’API central cobreix els blocs que necessites per automatizar fluxos de treball de presentació en qualsevol aplicació Java.


Què inclou?

Presentació Cicle de vida

El Presentation classe és el punt d’entrada per a cada operació. Pots crear una presentació en blanc i guardar el resultat al disc o a un servidor de la seva pàgina web. OutputStream en una varietat de formats. La classe implementa AutoCloseable, així que funciona naturalment amb els blocs de proves.

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

try (Presentation pres = new Presentation()) {
    // A new presentation starts with one blank slide
    System.out.println("Slides: " + pres.getSlides().size());
    pres.save("output.pptx", SaveFormat.PPTX);
}

Gestió de diapositives

SlideCollection pot afegir diapositives en blanc amb addEmptySlide(), duplicar diapositives existents amb: addClone(), inserir diapositives en un índex específic amb: insertEmptySlide(), eliminar diapositives per referència o index, i iterar sobre la col·lecció.

try (Presentation pres = new Presentation()) {
    ILayoutSlide layout = pres.getLayoutSlides().get(0);
    pres.getSlides().addEmptySlide(layout);
    pres.getSlides().addClone(pres.getSlides().get(0));
    System.out.println("Total slides: " + pres.getSlides().size());
}

Formes i AutoFormes

El AutoShape classe representa l’objecte dibuixable més comú en una diapositiva. Crear formes a través de IShapeCollection.addAutoShape(), especificant un ShapeType constant (com ara el ShapeType.RECTANGLE) i les coordenades de posició. AutoShape exposa una TextFrame per al contingut de text i un FillFormat per a l’estil visual.

try (Presentation pres = new Presentation()) {
    ISlide slide = pres.getSlides().get(0);
    IAutoShape shape = slide.getShapes().addAutoShape(
        ShapeType.RECTANGLE, 50, 50, 300, 100, false);
    ITextFrame tf = shape.addTextFrame("Hello from Aspose.Slides FOSS");
    System.out.println(tf.getText());
}

Text i paràgrafs

El text enriquit es modela com una jerarquia de: TextFrame, ParagraphCollection, Paragraph, PortionCollection, i Portion pots configurar text en un marc directament amb TextFrame.setText(), o construir paràgrafs de múltiples executes afegint individuales Portion instàncies amb format diferent.

try (Presentation pres = new Presentation()) {
    ISlide slide = pres.getSlides().get(0);
    IAutoShape shape = slide.getShapes()
        .addAutoShape(ShapeType.RECTANGLE, 50, 50, 400, 100, false);
    ITextFrame tf = shape.addTextFrame("First run ");
    Portion extra = new Portion("second run");
    tf.getParagraphs().get(0).getPortions().add(extra);
    System.out.println(tf.getText());
}

Propietats del document

El DocumentProperties les propietats persisteixen en el nucli PPTX i en les parts de propietat estesos i sobreviuen als cicles d’enviament/recarrega.

try (Presentation pres = new Presentation()) {
    IDocumentProperties props = pres.getDocumentProperties();
    props.setTitle("Quarterly Report");
    props.setAuthor("Engineering Team");
    pres.save("report.pptx", SaveFormat.PPTX);
}

Comentaris i anotacions

El subsistema de comentaris inclou: CommentAuthorCollection i de la CommentCollection.Podeu afegir autors, adjuntar comentaris a diapositives i posicions específiques i llegir anotacions existents. Les dades dels comentari es emmagatzemen en el sistema de correcció d’imatge del bloc web. ppt/commentAuthors.xml i de la ppt/comments/*.xml parts del paquet PPTX.


Inici ràpid

Afegeix la dependència de Maven al teu pom.xml:

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

Després crea i guarda una presentació:

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

public class QuickStart {
    public static void main(String[] args) {
        try (Presentation pres = new Presentation()) {
            ISlide slide = pres.getSlides().get(0);

            // Add a title shape
            IAutoShape title = slide.getShapes().addAutoShape(
                ShapeType.RECTANGLE, 50, 30, 600, 60, false);
            title.addTextFrame("Aspose.Slides FOSS for Java");

            // Add a content shape
            IAutoShape body = slide.getShapes().addAutoShape(
                ShapeType.RECTANGLE, 50, 120, 600, 300, false);
            body.addTextFrame(
                "This presentation was created entirely in Java "
                + "using a free, open-source library.");

            pres.save("quick-start.pptx", SaveFormat.PPTX);
        }
    }
}

Formats suportats

El SaveFormat Enumeration defineix cada format d’exportació que la biblioteca pot escriure. La taula següent enumera les entrades confirmades.

Format de la pàginaExtensióEscriure
PPTX.pptxSí, sí.
PPTM.pptmPlanificat
PPSX.ppsxPlanificat
PPSM.ppsmPlanificat
POTX.potxPlanificat
POTM.potmPlanificat
ODP.odpPlanificat
OTP.otpPlanificat
FODP.fodpPlanificat
PPT.pptPlanificat
PPS.ppsPlanificat
POT.potPlanificat
PDF.pdfPlanificat
XPS.xpsPlanificat
HTML.htmlPlanificat
HTML5.htmlPlanificat
SVG.svgPlanificat
TIFF.Tif.Planificat
PNG.pngPlanificat
JPEG.jpegPlanificat
BMP.bmpPlanificat
GIF.gifPlanificat
MD.mdPlanificat

Nota: Actualment només s’implementa l’exportació PPTX. Existen altres valors de format en el sistema d’impressió i la seva configuració a través del programa de codi. SaveFormat enum per a la compatibilitat amb l’avantguarda, però encara no són funcionals. save() El mètode sempre produeix sortida PPTX independentment del paràmetre de format.


Fonte oberta i llicències

Aspose.Slides FOSS for Java is distributed under the MIT license. The full source code is available on GitHub at Aspose.Slides-FOSS-for-Java.Vostè és lliure d’utilitzar, modificar i redistribuir la biblioteca en qualsevol projecte sense drets de autor o claus de llicència.


Com començar a treballar

Aquí teniu recursos per ajudar-vos a començar: