Uvod
Aspose.Slides FOSS for Java je sada dostupan na Maven Central: besplatna, MIT‑licencirana biblioteka za kreiranje, čitanje i uređivanje PowerPoint .pptx fajlova u potpunosti u Javi, bez zavisnosti od Microsoft Office‑a ili bilo kog vlasničkog runtime‑a.
Biblioteka je dizajnirana za programere koji trebaju programatski generisati ili manipulisati fajlovima prezentacija: automatizacija slajdova iz podataka, izvlačenje teksta i metapodataka iz otpremljenih PPTX fajlova, izgradnja pipeline‑ova za izveštavanje baziranih na prezentacijama ili ugradnja kreiranja prezentacija u Spring Boot aplikacije. Pošto je aspose-slides-foss čisti Java, distribuira se identično na Windows, macOS, Linux i Docker kontejnerima.
Ključne karakteristike
- Potpuna dvosmerna PPTX podrška: Otvorite bilo koji
.pptxfajl, izmenite njegov sadržaj i sačuvajte ga nazad bez gubitka nepoznatih XML delova koje biblioteka još ne razume. - Upravljanje slajdovima: Dodajte, uklonite i prolazite kroz slajdove koristeći
prs.getSlides(); prezentacija počinje jednim praznim slajdom nakonnew Presentation(). - AutoOblici, Tabele i Konektori: Ubacite oblike putem
slide.getShapes().addAutoShape(), tabelarne podatke putemslide.getShapes().addTable()i vizuelne konektore između oblika putemslide.getShapes().addConnector(). - Oblikovanje bogatog teksta: Formatirajte tekst na nivou karaktera pomoću
PortionFormat: veličina fonta, podebljano, kurziv, podvučeno i ARGB boja putemFillType.SOLIDiColorFormat. - Tipovi popunjavanja: Primijenite
FillType.SOLID,GRADIENT,PATTERNiliPICTUREpopune na bilo koji oblik. - Vizuelni efekti: Spoljna senka, sjaj, mekana ivica, zamućenje, refleksija i unutrašnja senka putem
shape.getEffectFormat(). - 3D formatiranje: Nagnutost, kamera, svetlosni sistem, materijal i dubina ekstrudiranja putem
shape.getThreeDFormat(). - Napomene govornika: Priložite tekst napomena svakom slajdu putem
getNotesSlideManager().addNotesSlide(). - Ugnježdene komentare: Dodajte komentare sa metapodacima autora i položajem na slajdu.
- Ugrađene slike: Ugradite iz putanje fajla, bajtova ili
InputStream. - Svojstva dokumenta: Čitajte i pišite osnovna, aplikaciona i prilagođena svojstva.
Početak
Dodajte Maven zavisnost. Potreban je Java 21 ili noviji.
<dependency>
<groupId>org.aspose.slides.foss</groupId>
<artifactId>aspose-slides-foss</artifactId>
<version>1.0.0</version>
</dependency>
Kreirajte svoju prvu prezentaciju sa oblikom i sačuvajte je:
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");
}
}
}
Uvek koristite Presentation unutar try-with-resources bloka; to osigurava da se svi unutrašnji resursi oslobode kada blok završi.
Primer formatiranja teksta
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");
}
Trenutna ograničenja
Sledeća područja bacaju UnsupportedOperationException u ovom izdanju:
- Grafikoni, SmartArt i OLE objekti
- Animacije i prelazi slajdova
- Izvoz u PDF, HTML, SVG ili formate slika
- Hiperveze, podešavanja akcija, VBA makroi i digitalni potpisi
Nepožnati XML delovi koji se pojave prilikom učitavanja čuvaju se doslovno prilikom čuvanja, tako da PPTX fajlovi proizvedeni drugim alatima sigurno prolaze kroz round‑trip.