Aspose.Slides FOSS for Java ile Nasıl Başlanır
aspose-slides-foss for Java, PowerPoint .pptx dosyaları oluşturmak ve düzenlemek için ücretsiz, MIT lisanslı bir kütüphanedir — Microsoft Office gerekmez, Maven Central’da mevcuttur.
Adım Adım Kılavuz
Adım 1: Maven Bağımlılığını Ekleyin
Bağımlılığı pom.xml‘ye ekleyin (Java 21 veya daha yeni bir sürüm gereklidir):
<dependency>
<groupId>org.aspose.slides.foss</groupId>
<artifactId>aspose-slides-foss</artifactId>
<version>1.0.0</version>
</dependency>Paketi doğru bir şekilde çözüldüğünden emin olmak için projeyi derleyin:
mvn dependency:resolveAdım 2: Gerekli Sınıfları İçe Aktar
Sunumları yüklemek ve kaydetmek için ihtiyacınız olan sınıfları içe aktarın:
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.ShapeType;
import org.aspose.slides.foss.FillType;Adım 3: Sunum Oluştur
Argümansız bir Presentation oluşturun, böylece bir boş slaytla başlayabilirsiniz.
Her zaman
try-with-resources kullanarak iç kaynakların serbest bırakılmasını sağlayın:
import org.aspose.slides.foss.Presentation;
try (Presentation prs = new Presentation()) {
System.out.println("Slides: " + prs.getSlides().size());
prs.save("new_presentation.pptx");
}Adım 4: Metinli Bir Şekil Ekle
slide.getShapes().addAutoShape() kullanarak bir dikdörtgen ekleyin, ardından addTextFrame()
çağırarak metin içeriği ekleyin:
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.NullableBool;
try (Presentation prs = new Presentation()) {
ISlide slide = prs.getSlides().get(0);
IAutoShape shape = slide.getShapes().addAutoShape(
ShapeType.RECTANGLE, 50, 50, 400, 150
);
ITextFrame tf = shape.addTextFrame("Hello from Aspose.Slides FOSS!");
IPortionFormat fmt = tf.getParagraphs().get(0).getPortions().get(0).getPortionFormat();
fmt.setFontHeight(24);
fmt.setFontBold(NullableBool.TRUE);
prs.save("with_shape.pptx");
}Adım 5: Dolgu Uygula ve Kaydet
Kaydetmeden önce şekle katı dolgu rengi ayarlayın:
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.IAutoShape;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.FillType;
import org.aspose.slides.foss.drawing.Color;
try (Presentation prs = new Presentation()) {
IAutoShape shape = prs.getSlides().get(0).getShapes().addAutoShape(
ShapeType.RECTANGLE, 100, 100, 400, 200
);
shape.getFillFormat().setFillType(FillType.SOLID);
shape.getFillFormat().getSolidFillColor().setColor(new Color(70, 130, 180));
shape.addTextFrame("Styled shape");
prs.save("styled.pptx");
}Yaygın Sorunlar ve Çözümler
ClassNotFoundException for org.aspose.slides.foss.Presentation
Maven bağımlılığı çözülemedi. Run mvn dependency:resolve ve artefaktın Maven Central’de mevcut olduğunu kontrol edin. Verify the version in pom.xml.
UnsupportedOperationException belirli yöntemleri çağırırken
Bazı özellikler (grafikler, animasyonlar, PDF dışa aktarımı) UnsupportedOperationException
hatasını bu sürümde atar. API referansının bilinen sınırlamalar bölümünü, gelişmiş özellikleri kullanmadan önce kontrol edin.
Şekil koordinatları hatalı görünüyor
Koordinatlar ve boyutlar EMU (English Metric Units) birimindedir. Bir nokta yaklaşık 12700 EMU’dur. Varsayılan slayt 9144000 × 6858000 EMU’dur.
Mevcut bir PPTX yüklenirken dosya bulunamadı
Mutlak bir yol geçin veya çalışma dizininin doğru ayarlandığından emin olun:
import java.nio.file.Paths;
String path = Paths.get("presentations", "existing.pptx").toAbsolutePath().toString();
try (Presentation prs = new Presentation(path)) { ... }Sıkça Sorulan Sorular
aspose-slides-foss Microsoft Office gerektiriyor mu?
Hayır. Kütüphane, Microsoft Office, COM otomasyonu veya Windows API’lerine bağımlılık olmadan saf Java’da yerel olarak .pptx dosyalarını oluşturur ve okur.
Hangi Java sürümleri destekleniyor?
Java 21 veya daha yeni bir sürüm. Kütüphane Windows, macOS, Linux ve Docker konteynerlerinde çalışır.
Kütüphane ticari kullanım için ücretsiz mi?
Evet. MIT Lisansı altında yayınlanmıştır. Herhangi bir amaç için, ticari uygulamalar da dahil olmak üzere, kullanabilir, değiştirebilir ve yeniden dağıtabilirsiniz.
Mevcut bir PPTX dosyasını yükleyebilir miyim?
Evet. Presentation yapıcısına dosya yolunu geçirin:
try (Presentation prs = new Presentation("existing.pptx")) {
System.out.println("Loaded " + prs.getSlides().size() + " slides");
prs.save("copy.pptx");
}Sunumu açıkça kapatmam gerekiyor mu?
Evet. Presentation, AutoCloseable‘i uygular. Her zaman try-with-resources
(try (Presentation prs = new Presentation()) { ... }) kullanarak temizliği garanti altına alın.