Pengantar
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 paket dan target Java 21 ke atas.
Proyek ini dirilis di bawah lisensi MIT, sehingga Anda dapat menggunakannya dalam proyek pribadi dan komersial tanpa biaya dan tanpa kunci API. Ini menyediakan model objek yang kaya untuk slide, bentuk, teks, tabel, gambar, komentar, dan properti dokumen, didukung oleh manipulasi langsung dari format paket Office Open XML .
Dengan 273 kelas, lebih dari 2.600 metode, dan 42 enumerasi, API inti mencakup blok bangunan yang Anda butuhkan untuk mengotomatiskan alur kerja presentasi dalam aplikasi Java apa pun.
Apa yang Termasuk?
Presentasi Siklus hidup
Pengelolaan Presentation class adalah titik masuk untuk setiap operasi. Anda dapat membuat presentasi kosong dan menyimpan hasil ke disk atau ke sebuah file yang tidak terdaftar di komputer. OutputStream dalam berbagai format. Kelas ini mengimplementasikan AutoCloseable, jadi itu bekerja secara alami dengan mencoba-dengan sumber daya blok.
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);
}
Manajemen Slide
SlideCollection memberikan kontrol penuh atas dek slide. Anda dapat menambahkan slides kosong dengan addEmptySlide(), duplikat slide yang ada dengan addClone(), masukkan slide pada indeks tertentu dengan insertEmptySlide(), menghapus slide dengan referensi atau indeks, dan mengulang koleksi.
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());
}
Bentuk dan AutoShapes
Pengelolaan AutoShape class mewakili objek yang paling umum digambar pada slide. Anda membuat bentuk melalui IShapeCollection.addAutoShape(), dengan menentukan a ShapeType konstan (seperti ShapeType.RECTANGLE) dan koordinat posisi. AutoShape mengekspor a TextFrame untuk konten teks dan a FillFormat untuk gaya 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());
}
Teks dan Paragraf
Teks kaya dimodelkan sebagai hierarki dari: TextFrame, ParagraphCollection, Paragraph, PortionCollection, dan Portion Anda dapat mengatur teks kosong pada frame langsung dengan TextFrame.setText(), atau membuat paragraf multi-run dengan menambahkan individu Portion contoh dengan format yang berbeda.
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());
}
Properti dokumen
Pengelolaan DocumentProperties class mengekspos bidang metadata standar seperti judul, penulis, subjek, kata kunci, kategori, dan tanda waktu. Properti tetap ada di bagian inti PPTX dan properti yang diperluas dan bertahan dari siklus penyimpanan / pemuatan ulang pulang-pergi.
try (Presentation pres = new Presentation()) {
IDocumentProperties props = pres.getDocumentProperties();
props.setTitle("Quarterly Report");
props.setAuthor("Engineering Team");
pres.save("report.pptx", SaveFormat.PPTX);
}
Komentar dan Anotasi
Subsistem komentar mencakup: CommentAuthorCollection dan (b) CommentCollection.Anda dapat menambahkan penulis, melampirkan komentar pada slide dan posisi tertentu, dan membaca kembali catatan yang ada. Komentar data disimpan di dalam ppt/commentAuthors.xml dan (b) ppt/comments/*.xml bagian dari paket PPTX.
Memulai dengan cepat
Tambahkan ketergantungan Maven ke Anda pom.xml:
<dependency>
<groupId>org.aspose</groupId>
<artifactId>aspose-slides-foss</artifactId>
<version>26.7.0</version>
</dependency>Kemudian buat dan simpan presentasi:
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);
}
}
}
Format yang Didhukung
Pengelolaan SaveFormat Enumeration mendefinisikan setiap format output yang dapat ditulis perpustakaan. Tabel di bawah ini mencantumkan entri yang dikonfirmasi.
| Format (Inggris) | Perpanjangan | Menulis |
|---|---|---|
| PPTX | .pptx (dalam bahasa Inggris) | Ya, aku tahu. |
| PPTM | .pptm | Dianjurkan |
| PPSX | .ppsx (dalam bahasa Inggris) | Dianjurkan |
| PPSM | .ppsm | Dianjurkan |
| POTX | .potx | Dianjurkan |
| POTM | .potm | Dianjurkan |
| ODP | .odp | Dianjurkan |
| OTP | .otp | Dianjurkan |
| FODP | .fodp | Dianjurkan |
| PPT | .ppt | Dianjurkan |
| PPS | .pps | Dianjurkan |
| POT | .pot | Dianjurkan |
| .pdf (dalam bahasa Inggris) | Dianjurkan | |
| XPS | .xps | Dianjurkan |
| HTML | .html (dalam bahasa Inggris) | Dianjurkan |
| HTML5 | .html (dalam bahasa Inggris) | Dianjurkan |
| SVG | .svg | Dianjurkan |
| TIFF | . Tiff | Dianjurkan |
| PNG | .png | Dianjurkan |
| JPEG | .jpeg | Dianjurkan |
| BMP | .bmp | Dianjurkan |
| GIF | .gif (berupa gambar) | Dianjurkan |
| MD | .md | Dianjurkan |
Catatan: Saat ini hanya PPTX ekspor yang diimplementasikan. Nilai format lain ada dalam SaveFormat ini untuk kompatibilitas ke depan tetapi belum berfungsi. save() metode selalu menghasilkan output PPTX terlepas dari parameter format.
Open Source & Lisensi
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.Anda bebas untuk menggunakan, memodifikasi dan mendistribusikan kembali perpustakaan dalam proyek apa pun tanpa royalti atau kunci lisensi.
Memulai
Siap menyelam lebih dalam? Berikut adalah sumber daya untuk membantu Anda memulai:
- Panduan Pengembang – panduan dan tutorial untuk setiap area fitur
- Basis Pengetahuan – artikel cara dan pertanyaan yang sering diajukan
- Referensi API – dokumentasi kelas dan metode lengkap