Ciri-ciri dan Keupayaan
Ciri-ciri dan Keupayaan
Aspose.Slides FOSS for Java provides a broad set of capabilities for working with PowerPoint .pptx fail secara programatik. Halaman ini menyenaraikan semua kawasan ciri yang disokong dengan contoh kod yang representatif.
I/O Persembahan
Buka yang sedia ada .pptx fail atau buat yang baru, kemudian simpan semula ke format PPTX.
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);
}Nota: PPTX adalah satu-satunya format simpan yang disokong. Mengeksport ke PDF, HTML, SVG, atau imej tidak tersedia.
Bahagian XML yang tidak diketahui dalam fail sumber dipelihara secara verbatim semasa menyimpan, jadi membuka dan menyimpan semula satu .pptx tidak akan pernah menanggalkan kandungan yang belum difahami oleh perpustakaan.
Pengurusan Slaid
Tambah, buang, klon, dan susun semula slaid.
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);
}Bentuk
Tambah AutoShapes, PictureFrames, Jadual, dan Penyambung ke slaid.
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);
}Jadual
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);
}Penyambung
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);
}Pemformatan Teks
Formatkan teks pada peringkat perenggan dan aksara menggunakan 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 menetapkan sifat secara eksplisit; NullableBool.NOT_DEFINED mewarisi daripada slide master.
Jenis Isian
Terapkan isian pepejal, gradien, corak, atau gambar pada bentuk.
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);
}Kesan Visual
Terapkan bayang luar, cahaya berkilau, tepi lembut, kabur, pantulan, dan bayang dalam pada bentuk.
Sifat kesan boleh diakses melalui shape.getEffectFormat(). Panggil enableOuterShadowEffect(), enableGlowEffect(), enableSoftEdgeEffect(), setBlurEffect(radius, grow), enableReflectionEffect(), atau enableInnerShadowEffect() untuk mengkonfigurasi setiap satu secara bebas.
3D Formatting
Terapkan bevel 3D, kamera, rig cahaya, bahan, dan kedalaman ekstrusi melalui shape.getThreeDFormat(). Ini mengawal kedalaman visual dan model pencahayaan untuk rendering bentuk dalam penonton PPTX yang menyokong kesan 3D.
Nota Pembicara
Lampirkan nota pada mana-mana slaid menggunakan 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);
}Komen
Tambah komen berutas dengan maklumat pengarang dan kedudukan slaid.
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);
}Imej Terbenam
Benamkan imej daripada fail ke dalam persembahan dan tambahkan ke slaid sebagai 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);
}Sifat Dokumen
Baca dan tulis sifat dokumen teras, aplikasi, dan khusus.
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);
}Keterbatasan Dikenali
Kawasan berikut menimbulkan UnsupportedOperationException dan tidak tersedia dalam edisi ini:
| Kawasan | Status |
|---|---|
| Carta | Tidak dilaksanakan |
| SmartArt | Tidak dilaksanakan |
| Animasi dan peralihan | Tidak dilaksanakan |
| Eksport PDF / HTML / SVG / imej | Tidak dilaksanakan (hanya PPTX) |
| Makro VBA | Tidak dilaksanakan |
| Tandatangan digital | Tidak dilaksanakan |
| Pautan hiper dan tetapan tindakan | Tidak dilaksanakan |
| Objek OLE | Tidak dilaksanakan |
| Teks matematik | Tidak dilaksanakan |
Lihat Juga
- Mula: Pemasangan dan program pertama
- Rujukan API: Rujukan kelas dan kaedah
- Panduan Cara: Artikel berorientasikan tugas