Konversi PPT dan PPTX ke JPG di PHP
Pengantar
Mengonversi presentasi PowerPoint dan OpenDocument ke gambar JPG membantu dalam berbagi slide, mengoptimalkan kinerja, dan menyematkan konten ke situs web atau aplikasi. Aspose.Slides memungkinkan Anda mengubah file PPTX, PPT, dan ODP menjadi gambar JPEG berkualitas tinggi. Panduan ini menjelaskan berbagai metode konversi.
Dengan fitur-fitur ini, mudah untuk mengimplementasikan penampil presentasi Anda sendiri dan membuat thumbnail untuk setiap slide. Ini dapat berguna jika Anda ingin melindungi slide presentasi dari penyalinan atau menampilkan presentasi dalam mode hanya-baca. Aspose.Slides memungkinkan Anda mengonversi seluruh presentasi atau slide tertentu ke format gambar.
Konversi PowerPoint PPT/PPTX ke JPG
- Buat instance tipe Presentation.
- Dapatkan objek slide tipe Slide dari koleksi Presentation::getSlides().
- Buat thumbnail setiap slide dan kemudian konversi ke JPG. Metode Slide::getImage(float scaleX, float scaleY) digunakan untuk mendapatkan thumbnail sebuah slide. Metode getImage harus dipanggil dari slide yang diperlukan tipe Slide, skala thumbnail yang dihasilkan diberikan ke metode.
- Setelah Anda mendapatkan thumbnail slide, panggil metode [IImage::save(String formatName, int imageFormat)](https://reference.aspose.com/slides/id/php-java/aspose.slides/IImage#save(String formatName, int imageFormat)) dari objek thumbnail. Berikan nama file yang dihasilkan dan format gambar ke dalamnya.
$pres = new Presentation("PowerPoint-Presentation.pptx");
try {
foreach($pres->getSlides() as $sld) {
# Membuat gambar skala penuh
$slideImage = $sld->getImage(1.0, 1.0);
# Menyimpan gambar ke disk dalam format JPEG
try {
$slideImage->save(String->format("Slide_%d.jpg", $sld->getSlideNumber()), ImageFormat::Jpeg);
} finally {
if (!java_is_null($slideImage)) {
$slideImage->dispose();
}
}
}
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
Konversi PowerPoint PPT/PPTX ke JPG dengan Dimensi yang Disesuaikan
Untuk mengubah dimensi thumbnail dan gambar JPG yang dihasilkan, Anda dapat mengatur nilai ScaleX dan ScaleY dengan melewatkannya ke metode Slide::getImage(float scaleX, float scaleY).
$pres = new Presentation("PowerPoint-Presentation.pptx");
try {
# Mendefinisikan dimensi
$desiredX = 1200;
$desiredY = 800;
# Mendapatkan nilai skala X dan Y
$ScaleX = 1.0 / $pres->getSlideSize()->getSize()->getWidth() * $desiredX;
$ScaleY = 1.0 / $pres->getSlideSize()->getSize()->getHeight() * $desiredY;
foreach($pres->getSlides() as $sld) {
# Membuat gambar skala penuh
$slideImage = $sld->getImage($ScaleX, $ScaleY);
# Menyimpan gambar ke disk dalam format JPEG
try {
$slideImage->save(String->format("Slide_%d.jpg", $sld->getSlideNumber()), ImageFormat::Jpeg);
} finally {
if (!java_is_null($slideImage)) {
$slideImage->dispose();
}
}
}
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
Render Komentar Saat Menyimpan Slide sebagai Gambar
Aspose.Slides untuk PHP via Java menyediakan fasilitas yang memungkinkan Anda merender komentar pada slide presentasi saat mengonversi slide tersebut menjadi gambar. Kode PHP ini menunjukkan operasinya:
$pres = new Presentation("presentation.pptx");
try {
$notesOptions = new NotesCommentsLayoutingOptions();
$notesOptions->setNotesPosition(NotesPositions::BottomTruncated);
$opts = new RenderingOptions();
$opts->setSlidesLayoutOptions($notesOptions);
foreach($pres->getSlides() as $sld) {
$slideImage = $sld->getImage($opts, new Java("java.awt.Dimension", 740, 960));
try {
$slideImage->save(String->format("Slide_%d.png", $sld->getSlideNumber()));
} finally {
if (!java_is_null($slideImage)) {
$slideImage->dispose();
}
}
}
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
Tip
Aspose menyediakan aplikasi web Collage GRATIS. Dengan layanan online ini, Anda dapat menggabungkan JPG ke JPG atau PNG ke PNG, membuat grid foto, dan sebagainya.
Dengan prinsip yang sama seperti yang dijelaskan dalam artikel ini, Anda dapat mengonversi gambar dari satu format ke format lain. Untuk informasi lebih lanjut, lihat halaman berikut: konversi image to JPG; konversi JPG to image; konversi JPG to PNG, konversi PNG to JPG; konversi PNG to SVG, konversi SVG to PNG.
FAQ
Apakah metode ini mendukung konversi batch?
Ya, Aspose.Slides memungkinkan konversi batch banyak slide ke JPG dalam satu operasi.
Apakah konversi mendukung SmartArt, diagram, dan objek kompleks lainnya?
Ya, Aspose.Slides merender semua konten, termasuk SmartArt, diagram, tabel, bentuk, dan lainnya. Namun, akurasi render dapat sedikit berbeda dibandingkan PowerPoint, terutama ketika menggunakan font khusus atau yang tidak tersedia.
Apakah ada batasan jumlah slide yang dapat diproses?
Aspose.Slides sendiri tidak memberlakukan batasan ketat pada jumlah slide yang dapat Anda proses. Namun, Anda mungkin mengalami kesalahan out-of-memory saat bekerja dengan presentasi besar atau gambar beresolusi tinggi.
Lihat Juga
Lihat opsi lain untuk mengonversi PPT/PPTX menjadi gambar seperti: