Sıkça Sorulan Sorular

Sıkça Sorulan Sorular

Sıkça Sorulan Sorular

Aspose.Slides FOSS’i nasıl kurarım?

Maven bağımlılığını pom.xml‘inize 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>

Kurulumu doğrulayın:

import org.aspose.slides.foss.Presentation;

Presentation prs = new Presentation();
try {
    System.out.println("Slides: " + prs.getSlides().size());
} finally {
    prs.dispose();
}

Microsoft Office veya başka bir sistem çalışma zamanı gerekmez.


Neden Sunumda dispose() çağırmalıyım?

Presentation sınıfı dahili OPC paket kaynaklarını yönetir. dispose() çağrılmadan, bu kaynaklar serbest bırakılmaz, bu da bellek sızıntılarına veya dosya kilitlenmelerine neden olabilir. Her zaman try-finally kullanın:

Presentation prs = new Presentation("input.pptx");
try {
    // work here
    prs.save("output.pptx", SaveFormat.PPTX);
} finally {
    prs.dispose();
}

Alternatif olarak, try-with-resources kullanın, çünkü Presentation AutoCloseable‘i uygular:

try (Presentation prs = new Presentation("input.pptx")) {
    prs.save("output.pptx", SaveFormat.PPTX);
}

Hangi dosya formatlarına kaydedebilirim?

SaveFormat enum’ı, birçok format için sabitleri tanımlar — PPTX, PDF, HTML, SVG, JPEG, PNG ve diğerleri — ticari sürümle API uyumluluğu sağlamak için. Bu FOSS sürümde çalışma zamanında, tüm save() aşırı yüklemeleri format argümanını yok sayar ve her zaman PPTX çıktısı yazar. SaveFormat.PDF geçmek doğru şekilde derlenir ancak bir .pptx dosyası üretir, .pdf değil.

import org.aspose.slides.foss.export.SaveFormat;

prs.save("output.pptx", SaveFormat.PPTX);

Bu sürümde PPTX dışı formatlara dışa aktarma işlevsel olarak mevcut değildir. Tüm kaydetme işlemleri için SaveFormat.PPTX kullanın.


.ppt (eski PowerPoint 97-2003) dosyalarını açabilir miyim?

Hayır. Yalnızca .pptx (Office Open XML) dosyaları desteklenir. Eski .ppt ikili format bu kütüphane tarafından işlenmez.


Slaytlara nasıl erişebilirim?

Slaytlar, prs.getSlides() aracılığıyla erişilebilen sıfır tabanlı bir koleksiyondur:

ISlide firstSlide = prs.getSlides().get(0);
int slideCount = prs.getSlides().size();

İkinci bir slayt nasıl eklerim?

prs.getSlides().addEmptySlide() ile bir düzen kullanın:

try (Presentation prs = new Presentation()) {
    ILayoutSlide layout = prs.getLayoutSlides().get(0);
    prs.getSlides().addEmptySlide(layout);
    ISlide slide2 = prs.getSlides().get(1);
    prs.save("two-slides.pptx", SaveFormat.PPTX);
}

Slayt arka plan rengini nasıl ayarlarım?

Bu Aspose.Slides FOSS sürümünde slayt arka plan rengi desteklenmiyor. Bu kütüphanede ISlide üzerinde getBackground() yöntemi ya da başka bir sınıf bulunmamaktadır. Sunum şablonundan oluşturulduğunda slayt arka planı sabittir. Gelecek bir sürüm arka plan kontrolü ekleyebilir.


NullableBool nasıl kullanılır?

NullableBool, biçimlendirme özellikleri için kullanılan üç durumlu bir enum’dur. Kalın, italik ve benzeri özellikler için NullableBool.TRUE‘yi (Java’nın true‘sini değil) kullanın:

import org.aspose.slides.foss.NullableBool;

fmt.setFontBold(NullableBool.TRUE);
fmt.setFontItalic(NullableBool.FALSE);

Metin rengini ayarlamak neden etkili olmuyor?

Rengi atamadan önce ayrıca fillType‘i FillType.SOLID‘ye ayarlamalısınız:

import org.aspose.slides.foss.FillType;
import org.aspose.slides.foss.drawing.Color;

fmt.getFillFormat().setFillType(FillType.SOLID);
fmt.getFillFormat().getSolidFillColor().setColor(Color.fromArgb(255, 200, 0, 0));

Grafikleri veya SmartArt’ı kullanabilir miyim?

Hayır. Grafikler, SmartArt, OLE nesneleri, animasyonlar, geçişler, köprüler, VBA makroları ve dijital imzalar bu sürümde uygulanmamıştır ve UnsupportedOperationException hatasını verir.


Kütüphane iş parçacığı güvenli mi?

Her Presentation nesnesi bağımsızdır. Ayrı iş parçacıklarından ayrı Presentation örnekleri oluşturmak ve kullanmak, tek bir Presentation nesnesini iş parçacıkları arasında dış senkronizasyon olmadan paylaşmadığınız sürece güvenlidir.


Bir resmi nasıl gömebilirim?

Görüntü baytlarını okuyun ve prs.getImages()‘ye ekleyin, ardından bir PictureFrame oluşturun:

import org.aspose.slides.foss.ShapeType;

byte[] imageData = java.nio.file.Files.readAllBytes(
    java.nio.file.Paths.get("logo.png")
);
IPPImage image = prs.getImages().addImage(imageData);
slide.getShapes().addPictureFrame(ShapeType.RECTANGLE, 50, 50, 200, 150, image);

Ayrıca Bakınız

 Türkçe