Funkcije i mogućnosti
Funkcije i mogućnosti
Aspose.Slides FOSS for Java provides a broad set of capabilities for working with PowerPoint .pptx datoteke programatski. Ova stranica navodi sve podržane oblasti funkcionalnosti sa reprezentativnim primerima koda.
U/I prezentacije
Otvorite postojeći .pptx datoteku ili kreirajte novu, zatim je sačuvajte nazad u PPTX formatu.
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.export.SaveFormat;
// Open an existing presentation
try (Presentation prs = new Presentation("input.pptx")) {
System.out.println("Slide count: " + prs.getSlides().size());
prs.save("output.pptx", SaveFormat.PPTX);
}
// Create a new presentation (starts with one blank slide)
try (Presentation prs = new Presentation()) {
prs.save("new.pptx", SaveFormat.PPTX);
}Napomena: PPTX je jedini podržani format za čuvanje. Izvoz u PDF, HTML, SVG ili slike nije dostupan.
Nepoznati XML delovi u izvornoj datoteci se čuvaju doslovno prilikom snimanja, tako da otvaranje i ponovo čuvanje a .pptx nikada neće ukloniti sadržaj koji biblioteka još ne razume.
Upravljanje slajdovima
Dodajte, uklonite, klonirajte i promenite redosled slajdova.
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.export.SaveFormat;
try (Presentation prs = new Presentation()) {
// Access the first slide
var slide = prs.getSlides().get(0);
// Add an additional blank slide at the end
prs.getSlides().addEmptySlide(prs.getLayoutSlides().get(0));
System.out.println("Total slides: " + prs.getSlides().size());
prs.save("multi-slide.pptx", SaveFormat.PPTX);
}Oblici
Dodajte AutoShapes, PictureFrames, Tables i Connectors na slajd.
AutoShapes
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.export.SaveFormat;
try (Presentation prs = new Presentation()) {
var slide = prs.getSlides().get(0);
// Add a rectangle at (x=50, y=50) with width=300, height=100
var shape = slide.getShapes().addAutoShape(ShapeType.RECTANGLE, 50, 50, 300, 100);
shape.addTextFrame("Aspose.Slides FOSS");
prs.save("shapes.pptx", SaveFormat.PPTX);
}Tabele
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.export.SaveFormat;
try (Presentation prs = new Presentation()) {
var slide = prs.getSlides().get(0);
// Column widths and row heights in points
double[] colWidths = {120.0, 120.0, 120.0};
double[] rowHeights = {40.0, 40.0, 40.0};
var table = slide.getShapes().addTable(50, 50, colWidths, rowHeights);
table.getRows().get(0).get(0).getTextFrame().setText("Product");
table.getRows().get(0).get(1).getTextFrame().setText("Quantity");
table.getRows().get(0).get(2).getTextFrame().setText("Price");
prs.save("table.pptx", SaveFormat.PPTX);
}Konektori
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.export.SaveFormat;
try (Presentation prs = new Presentation()) {
var slide = prs.getSlides().get(0);
var box1 = slide.getShapes().addAutoShape(ShapeType.RECTANGLE, 50, 100, 150, 60);
var box2 = slide.getShapes().addAutoShape(ShapeType.RECTANGLE, 350, 100, 150, 60);
var conn = slide.getShapes().addConnector(ShapeType.BENT_CONNECTOR3, 0, 0, 10, 10);
conn.setStartShapeConnectedTo(box1);
conn.setStartShapeConnectionSiteIndex(3); // right side
conn.setEndShapeConnectedTo(box2);
conn.setEndShapeConnectionSiteIndex(1); // left side
prs.save("connector.pptx", SaveFormat.PPTX);
}Formatiranje teksta
Formatirajte tekst na nivou pasusa i karaktera koristeći PortionFormat.
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.NullableBool;
import org.aspose.slides.foss.FillType;
import org.aspose.slides.foss.drawing.Color;
import org.aspose.slides.foss.export.SaveFormat;
try (Presentation prs = new Presentation()) {
var slide = prs.getSlides().get(0);
var shape = slide.getShapes().addAutoShape(ShapeType.RECTANGLE, 50, 50, 500, 150);
var tf = shape.addTextFrame("Bold blue heading");
var 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(Color.fromArgb(255, 0, 70, 127));
prs.save("text.pptx", SaveFormat.PPTX);
}NullableBool.TRUE postavlja svojstvo eksplicitno; NullableBool.NOT_DEFINED nasleđuje od master slajda.
Vrste popunjavanja
Primeni jednobojno, gradijentno, šablonsko ili slikovno popunjavanje na oblike.
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.FillType;
import org.aspose.slides.foss.drawing.Color;
import org.aspose.slides.foss.export.SaveFormat;
try (Presentation prs = new Presentation()) {
var slide = prs.getSlides().get(0);
var shape = slide.getShapes().addAutoShape(ShapeType.RECTANGLE, 50, 50, 300, 150);
// Solid fill
shape.getFillFormat().setFillType(FillType.SOLID);
shape.getFillFormat().getSolidFillColor().setColor(Color.fromArgb(255, 30, 120, 200));
prs.save("fill.pptx", SaveFormat.PPTX);
}Vizuelni efekti
Primeni spoljašnju senku, sjaj, mekane ivice, zamućenje, refleksiju i unutrašnju senku na oblike.
Svojstva efekta su dostupna kroz shape.getEffectFormat(). Pozovite enableOuterShadowEffect(), enableGlowEffect(), enableSoftEdgeEffect(), setBlurEffect(radius, grow), enableReflectionEffect(), ili enableInnerShadowEffect() za nezavisno konfigurisanje svakog.
3D Formatting
Primeni 3D nagib, kameru, svetlosni sistem, materijal i dubinu ekstrudiranja putem shape.getThreeDFormat(). Ovo kontroliše vizuelnu dubinu i model osvetljenja za renderovanje oblika u PPTX preglednicima koji podržavaju 3D efekte.
Napomene govornika
Priložite beleške na bilo koji slajd koristeći getNotesSlideManager().
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.export.SaveFormat;
try (Presentation prs = new Presentation()) {
var notes = prs.getSlides().get(0).getNotesSlideManager().addNotesSlide();
notes.getNotesTextFrame().setText("Key talking point: emphasize the ROI benefit.");
prs.save("notes.pptx", SaveFormat.PPTX);
}Komentari
Dodaj ugnježdene komentare sa informacijama o autoru i pozicijom na slajdu.
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.drawing.PointF;
import org.aspose.slides.foss.export.SaveFormat;
import java.time.LocalDateTime;
try (Presentation prs = new Presentation()) {
var author = prs.getCommentAuthors().addAuthor("Jane Smith", "JS");
var slide = prs.getSlides().get(0);
author.getComments().addComment(
"Please verify this data before the presentation.",
slide,
new PointF(2.0f, 2.0f),
LocalDateTime.now()
);
prs.save("comments.pptx", SaveFormat.PPTX);
}Ugrađene slike
Umetnite sliku iz datoteke u prezentaciju i dodajte je na slajd kao PictureFrame.
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.export.SaveFormat;
import java.nio.file.Files;
import java.nio.file.Path;
try (Presentation prs = new Presentation()) {
byte[] imageData = Files.readAllBytes(Path.of("logo.png"));
var image = prs.getImages().addImage(imageData);
var slide = prs.getSlides().get(0);
slide.getShapes().addPictureFrame(ShapeType.RECTANGLE, 50, 50, 200, 150, image);
prs.save("with-image.pptx", SaveFormat.PPTX);
}Svojstva dokumenta
Čitaj i piši osnovna, aplikaciona i prilagođena svojstva dokumenta.
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.export.SaveFormat;
try (Presentation prs = new Presentation()) {
var props = prs.getDocumentProperties();
// Core properties
props.setTitle("Q1 Results");
props.setAuthor("Finance Team");
props.setSubject("Quarterly Review");
props.setKeywords("Q1, finance, results");
// Custom property
props.setCustomPropertyValue("ReviewedBy", "Legal Team");
prs.save("deck.pptx", SaveFormat.PPTX);
}Poznata ograničenja
Sledeća područja uzrokuju UnsupportedOperationException i nisu dostupna u ovom izdanju:
| Oblast | Status |
|---|---|
| Grafikoni | Nije implementirano |
| SmartArt | Nije implementirano |
| Animacije i prelazi | Nije implementirano |
| PDF / HTML / SVG / izvoz slika | Nije implementirano (samo PPTX) |
| VBA makroi | Nije implementirano |
| Digitalni potpisi | Nije implementirano |
| Hiperveze i podešavanja akcija | Nije implementirano |
| OLE objekti | Nije implementirano |
| Matematički tekst | Nije implementirano |
Vidi takođe
- Početak rada: Instalacija i prvi program
- API referenca: Referenca klasa i metoda
- Uputstva: Članci orijentisani na zadatke