Giriş
Aspose.Slides FOSS for Java artık Maven Central’da mevcut: Microsoft Office veya herhangi bir tescilli çalışma zamanına bağımlı olmadan, tamamen Java’da PowerPoint .pptx dosyalarını oluşturmak, okumak ve düzenlemek için ücretsiz, MIT lisanslı bir kütüphane.
Kütüphane, programlı olarak sunum dosyaları oluşturması veya manipüle etmesi gereken geliştiriciler için tasarlanmıştır: veriden slayt desteleri otomatikleştirme, yüklenen PPTX dosyalarından metin ve meta verileri çıkarma, sunuma dayalı raporlama boru hatları oluşturma veya sunum oluşturmayı Spring Boot uygulamalarına gömme. Çünkü aspose-slides-foss saf Java’dır, Windows, macOS, Linux ve Docker konteynerlerinde aynı şekilde dağıtılır.
Temel Özellikler
- Tam tur PPTX desteği: Herhangi bir
.pptxdosyasını açın, içeriğini değiştirin ve kütüphanenin henüz anlamadığı bilinmeyen XML bölümlerini kaybetmeden geri kaydedin. - Slayt yönetimi:
prs.getSlides()kullanarak slayt ekleyin, kaldırın ve yineleyin; sunumnew Presentation()sonrası bir boş slaytla başlar. - AutoShapes, Tablolar ve Bağlayıcılar: Şekilleri
slide.getShapes().addAutoShape()ile, tablo verilerinislide.getShapes().addTable()ile ve şekiller arasındaki görsel bağlayıcılarıslide.getShapes().addConnector()ile ekleyin. - Zengin metin biçimlendirme: Metni karakter düzeyinde
PortionFormatile biçimlendirin: yazı tipi boyutu, kalın, italik, altı çizili ve ARGB renkFillType.SOLIDveColorFormataracılığıyla. - Dolgu türleri: Herhangi bir şekle
FillType.SOLID,GRADIENT,PATTERNveyaPICTUREdolgularını uygulayın. - Görsel efektler: Dış gölge, parıltı, yumuşak kenar, bulanıklık, yansıma ve iç gölge
shape.getEffectFormat()aracılığıyla. - 3B biçimlendirme: Kırma, kamera, ışık düzeni, malzeme ve ekstrüzyon derinliği
shape.getThreeDFormat()ile. - Konuşmacı notları: Her slayta not metnini
getNotesSlideManager().addNotesSlide()aracılığıyla ekleyin. - İş parçacıklı yorumlar: Yazar meta verileri ve slayt konumu ile yorum ekleyin.
- Gömülü görüntüler: Dosya yolundan, baytlardan veya
InputStreamaracılığıyla gömün. - Belge özellikleri: Çekirdek, uygulama ve özel özellikleri okuyun ve yazın.
Başlarken
Maven bağımlılığını ekleyin. Java 21 veya daha yenisi gereklidir.
<dependency>
<groupId>org.aspose.slides.foss</groupId>
<artifactId>aspose-slides-foss</artifactId>
<version>1.0.0</version>
</dependency>
Şekil ile ilk sunumunuzu oluşturun ve kaydedin:
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");
}
}
}
Her zaman Presentation öğesini bir try-with-resources bloğu içinde kullanın; bu, bloğun çıkışında tüm iç kaynakların serbest bırakılmasını sağlar.
Metin Biçimlendirme Örneği
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");
}
Mevcut Sınırlamalar
Bu sürümde aşağıdaki alanlar UnsupportedOperationException hatasını verir:
- Grafikler, SmartArt ve OLE nesneleri
- Animasyonlar ve slayt geçişleri
- PDF, HTML, SVG veya görüntü formatlarına dışa aktarım
- Köprüler, eylem ayarları, VBA makroları ve dijital imzalar
Yükleme sırasında karşılaşılan bilinmeyen XML bölümleri kaydetme sırasında olduğu gibi korunur, böylece diğer araçlar tarafından üretilen PPTX dosyaları güvenli bir şekilde round‑trip yapılır.