Android'de PowerPoint Slaytlarını PNG'ye Dönüştür
Genel Bakış
Bu makale, Aspose.Slides for Android’i Java üzerinden kullanarak sunum slaytlarını PNG görüntülerine dönüştürmeyi açıklar. PPT, PPTX ve ODP gibi formatlarda sunumları yükleyebilir, her slaytı renderlayabilir ve ayrı bir PNG görüntüsü olarak kaydedebilirsiniz.
Aşağıdaki örnekler, varsayılan ölçekte renderlama, ölçeği artırma, çıktı boyutlarını piksel cinsinden belirtme ve bir degrade renderlama stilini seçme işlemlerini göstermektedir.
PowerPoint’i PNG’ye Dönüştür
Sunumu, Presentation sınıfını kullanarak yükleyin ve slaytlarına Presentation.getSlides koleksiyonu aracılığıyla erişin. Örnek, her slaytı parametresiz olarak ISlide.getImage çağırarak bir önizleme resmi oluşturur. Ardından, her renderlanmış slaytı PNG görüntüsü olarak kaydetmek için IImage.save metodunu ImageFormat.Png ile çağırır.
import com.aspose.slides.*;
Presentation presentation = new Presentation("presentation.pptx");
try {
int slideCount = presentation.getSlides().size();
for (int index = 0; index < slideCount; index++) {
ISlide slide = presentation.getSlides().get_Item(index);
IImage image = slide.getImage();
try {
image.save("slide_" + index + ".png", ImageFormat.Png);
} finally {
image.dispose();
}
}
} finally {
presentation.dispose();
}
Note
Parametresiz ISlide.getImage aşırı yüklemesi, 0.2 ölçeğinde renderlar. Örneğin, 720 × 540 puan ölçüsündeki bir slayt, 144 × 108 piksel bir önizleme resmi üretir. Çıktı boyutlarını kontrol etmek için aşağıda gösterildiği gibi ölçek faktörleriyle veya açık bir görüntü boyutuyla aşırı yüklemeleri kullanın.PowerPoint’i Özel Boyutlarla PNG’ye Dönüştür
Renderlenen boyutları kontrol etmek için yatay ve dikey ölçek faktörlerini ISlide.getImage metoduna geçirin. Bu örnekte, iki faktör de 2’dir, böylece 720 × 540 puan ölçüsündeki bir slayt, 1440 × 1080 piksel bir görüntü üretir. Eşit ölçek faktörleri, slaytın en‑boy oranını korur. Her görüntü, IImage.save kullanılarak PNG formatında kaydedilir.
import com.aspose.slides.*;
Presentation presentation = new Presentation("presentation.pptx");
try {
float scaleX = 2f;
float scaleY = scaleX;
int slideCount = presentation.getSlides().size();
for (int index = 0; index < slideCount; index++) {
ISlide slide = presentation.getSlides().get_Item(index);
IImage image = slide.getImage(scaleX, scaleY);
try {
image.save("slide_" + index + ".png", ImageFormat.Png);
} finally {
image.dispose();
}
}
} finally {
presentation.dispose();
}
PowerPoint’i Özel Boyutta PNG’ye Dönüştür
Çıktı boyutlarını piksel olarak belirtmek için ölçek faktörleri yerine bir boyut nesnesini ISlide.getImage metoduna geçirin. Bu örnek, her slaytı 960 × 720 piksel olarak renderlar ve sonucu IImage.save ile kaydeder. Görüntünün gerilmesini önlemek için slaytın en‑boy oranına uyan boyutları seçin.
import com.aspose.slides.*;
import com.aspose.slides.android.Size;
Presentation presentation = new Presentation("presentation.pptx");
try {
Size imageSize = new Size(960, 720);
int slideCount = presentation.getSlides().size();
for (int index = 0; index < slideCount; index++) {
ISlide slide = presentation.getSlides().get_Item(index);
IImage image = slide.getImage(imageSize);
try {
image.save("slide_" + index + ".png", ImageFormat.Png);
} finally {
image.dispose();
}
}
} finally {
presentation.dispose();
}
Bir Degrade Renderlama Stili Seçin
Bir slayt degrade dolgu içerdiğini ve dışa aktarılan PNG’de geçişlerin PowerPoint’te gördüğünüzden daha açık veya farklı göründüğünü varsayalım. Degradelerin nasıl renderlanacağını seçmek için RenderingOptions tarafından devralınan SaveOptions.setGradientStyle metodunu kullanabilirsiniz.
Uygulamanın çalışma dizinine gradient-styles.pptx dosyasını indirin ve yerleştirin. İlk slaytı, üstte camgöbeğinden turuncuya ve alttaki maviden sarıya iki lineer degrade içerir. Her degradenin iki durak noktası vardır: %0 ve %100.
Aşağıdaki örnek bu sunumu yükler ve ISlide.getImage metodunu kullanarak aynı ilk slaytı her iki modda da renderlar.
import com.aspose.slides.*;
Presentation presentation = new Presentation("gradient-styles.pptx");
try {
ISlide slide = presentation.getSlides().get_Item(0);
int[] gradientStyles = { GradientStyle.Default, GradientStyle.PowerPointUI };
for (int style : gradientStyles) {
RenderingOptions options = new RenderingOptions();
options.setGradientStyle(style);
String styleName = style == GradientStyle.Default ? "Default" : "PowerPointUI";
IImage image = slide.getImage(options, 1f, 1f);
try {
image.save("gradient-" + styleName + ".png", ImageFormat.Png);
} finally {
image.dispose();
}
}
} finally {
presentation.dispose();
}
| Varsayılan | PowerPointUI |
|---|---|
![]() |
![]() |
Bu örnekte, Default daha açık ara renkler üretirken, PowerPointUI daha koyu ara renkler üretir. Fark, degradenin renklerine ve durak noktalarına bağlıdır.
İhtiyacınızı karşılayan standart Aspose.Slides çıktısı için Default seçin. PowerPoint’teki görünümle eşleşmek önceliğinizse PowerPointUI deneyin. Her iki çıktıyı da hedef sonucunuzla karşılaştırın; hiçbir mod genellikle daha üstün değildir.
SSS
Bir grafiği veya resmi gibi belirli bir şekli, tüm slayt yerine nasıl dışa aktarabilirim?
Aspose.Slides, bireysel şekiller için küçük resimler oluşturmayı destekler; böylece bir şekli PNG görüntüsü olarak renderlayabilirsiniz.
Bir sunucuda paralel dönüşüm destekleniyor mu?
Evet. Her iş parçacığı veya süreç için ayrı bir sunum örneği kullanın; tek bir örneği iş parçacıkları arasında paylaşmayın.
PNG olarak dışa aktarırken değerlendirme sınırlamaları nelerdir?
Değerlendirme modu, çıktı görüntülerine bir filigran ekler ve lisans uygulanana kadar diğer kısıtlamaları uygular.

