Uvod
Aspose.Slides FOSS for Java is now available on Maven Central: a free, MIT-licensed library for creating, reading, and editing PowerPoint .pptx datoteke u potpunosti u Java, bez zavisnosti od Microsoft Office-a ili bilo kojeg vlasničkog runtime-a.
Biblioteka je dizajnirana za programere koji trebaju programatski generisati ili manipulisati prezentacionim datotekama: automatizacija slajd setova iz podataka, izdvajanje teksta i metapodataka iz otpremljenih PPTX datoteka, izgradnja izveštajnih tokova zasnovanih na prezentacijama, ili ugradnja kreiranja prezentacija u Spring Boot aplikacije. Zato aspose-slides-foss je čisto Java, distribuira se identično na Windows, macOS, Linux i Docker kontejnerima.
Ključne karakteristike
- Potpuna round‑trip podrška za PPTX: Otvorite bilo koji
.pptxdatoteku, izmenite njen sadržaj i sačuvajte je nazad bez gubitka nepoznatih XML delova koje biblioteka još ne razume. - Upravljanje slajdovima: Dodajte, uklonite i iterirajte slajdove koristeći
prs.getSlides(); prezentacija počinje jednim praznim slajdom poslenew Presentation(). - AutoShapes, Tabele i Poveznice: Ubaci oblike putem
slide.getShapes().addAutoShape(), tabelarne podatke putemslide.getShapes().addTable(), i vizuelne poveznice između oblika putemslide.getShapes().addConnector(). - Obogaćeno formatiranje teksta: Formatiraj tekst na nivou karaktera pomoću
PortionFormat: veličina fonta, podebljano, kurziv, podvučeno i ARGB boja putemFillType.SOLIDiColorFormat. - Vrste popunjavanja: Primeni
FillType.SOLID,GRADIENT,PATTERN, iliPICTUREpopunjava bilo koji oblik. - Vizuelni efekti: Spoljna senka, sjaj, mekana ivica, zamućenje, refleksija i unutrašnja senka putem
shape.getEffectFormat(). - 3D formatting: Izbočenje, kamera, svetlosni sistem, materijal i dubina ekstrudiranja putem
shape.getThreeDFormat(). - Napomene govornika: Priložite tekst napomena na svaki slajd putem
getNotesSlideManager().addNotesSlide(). - Komentari u nitima: Dodajte komentare sa metapodacima autora i položajem slajda.
- 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. Java 21 ili noviji je potreban.
<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; ovo 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
Nepoznati XML delovi koji se pojave prilikom učitavanja čuvaju se doslovno prilikom čuvanja, tako da PPTX fajlovi proizvedeni drugim alatima sigurno prolaze kroz ciklus učitavanja i čuvanja.