Mengonversi Slide Presentasi menjadi Gambar di Java

Pendahuluan

Aspose.Slides for Java memungkinkan Anda dengan mudah mengonversi slide presentasi PowerPoint dan OpenDocument ke berbagai format gambar, termasuk BMP, PNG, JPG (JPEG), GIF, dan lainnya.

Untuk mengonversi slide menjadi gambar, ikuti langkah-langkah berikut:

  1. Tentukan pengaturan konversi yang diinginkan dan pilih slide yang ingin Anda ekspor dengan menggunakan:
  2. Hasilkan gambar slide dengan memanggil metode getImage.

Dalam Aspose.Slides for Java, IImage adalah antarmuka yang memungkinkan Anda bekerja dengan gambar yang didefinisikan oleh data piksel. Anda dapat menggunakan antarmuka ini untuk menyimpan gambar dalam berbagai format (BMP, JPG, PNG, dll).

Mengonversi Slide ke Bitmap dan Menyimpan Gambar dalam PNG

Anda dapat mengonversi slide menjadi objek bitmap dan menggunakannya langsung dalam aplikasi Anda. Atau, Anda dapat mengonversi slide menjadi bitmap dan kemudian menyimpan gambar dalam format JPEG atau format lain yang diinginkan.

Kode berikut menunjukkan cara mengonversi slide pertama dari presentasi menjadi objek bitmap dan kemudian menyimpan gambar dalam format PNG:

Presentation presentation = new Presentation("Presentation.pptx");
try {
    // Mengonversi slide pertama dalam presentasi menjadi bitmap.
    IImage image = presentation.getSlides().get_Item(0).getImage();
	try {
        // Simpan gambar dalam format PNG.
        image.save("Slide_0.png", ImageFormat.Png);
    } finally {
        image.dispose();
    }
} finally {
    presentation.dispose();
}

Mengonversi Slide ke Gambar dengan Ukuran Kustom

Anda mungkin perlu memperoleh gambar dengan ukuran tertentu. Dengan menggunakan overload dari getImage, Anda dapat mengonversi slide menjadi gambar dengan dimensi spesifik (lebar dan tinggi).

Contoh kode berikut menunjukkan cara melakukannya:

Dimension imageSize = new Dimension(1820, 1040);

Presentation presentation = new Presentation("Presentation.pptx");
try {
    // Mengonversi slide pertama dalam presentasi menjadi bitmap dengan ukuran yang ditentukan.
    IImage image = presentation.getSlides().get_Item(0).getImage(imageSize);

    try {
        // Simpan gambar dalam format JPEG.
        image.save("Slide_0.jpg", ImageFormat.Jpeg);
    } finally {
        image.dispose();
    }
} finally {
    presentation.dispose();
}

Mengonversi Slide dengan Catatan dan Komentar menjadi Gambar

Beberapa slide mungkin berisi catatan dan komentar.

Aspose.Slides menyediakan dua antarmuka—ITiffOptions dan IRenderingOptions—yang memungkinkan Anda mengontrol proses rendering slide presentasi menjadi gambar. Kedua antarmuka menyertakan metode setSlidesLayoutOptions, yang memungkinkan Anda mengkonfigurasi rendering catatan dan komentar pada slide saat mengonversinya menjadi gambar.

Dengan kelas NotesCommentsLayoutingOptions, Anda dapat menentukan posisi yang diinginkan untuk catatan dan komentar dalam gambar yang dihasilkan.

Kode berikut menunjukkan cara mengonversi slide dengan catatan dan komentar:

float scaleX = 2;
float scaleY = scaleX;

// Muat file presentasi.
Presentation presentation = new Presentation("Presentation_with_notes_and_comments.pptx");
try {
    NotesCommentsLayoutingOptions notesCommentsOptions = new NotesCommentsLayoutingOptions();
    notesCommentsOptions.setNotesPosition(NotesPositions.BottomTruncated);  // Tetapkan posisi catatan.
    notesCommentsOptions.setCommentsPosition(CommentsPositions.Right);      // Tetapkan posisi komentar.
    notesCommentsOptions.setCommentsAreaWidth(500);                         // Tetapkan lebar area komentar.
    notesCommentsOptions.setCommentsAreaColor(Color.LIGHT_GRAY);            // Tetapkan warna untuk area komentar.

    // Buat opsi rendering.
    RenderingOptions options = new RenderingOptions();
    options.setSlidesLayoutOptions(notesCommentsOptions);

    // Mengonversi slide pertama dari presentasi menjadi gambar.
    IImage image = presentation.getSlides().get_Item(0).getImage(options, scaleX, scaleY);

    try {
        // Simpan gambar dalam format GIF.
        image.save("Image_with_notes_and_comments_0.gif", ImageFormat.Gif);
    } finally {
        image.dispose();
    }
} finally {
    presentation.dispose();
}

Mengonversi Slide ke Gambar Menggunakan Opsi TIFF

Antarmuka ITiffOptions memberikan kontrol lebih besar atas gambar TIFF yang dihasilkan dengan memungkinkan Anda menentukan parameter seperti ukuran, resolusi, palet warna, dan lainnya.

Kode berikut menunjukkan proses konversi di mana opsi TIFF digunakan untuk menghasilkan gambar hitam-putih dengan resolusi 300 DPI dan ukuran 2160 × 2800:

// Muat file presentasi.
Presentation presentation = new Presentation("sample.pptx");
try {
    // Dapatkan slide pertama dari presentasi.
    ISlide slide = presentation.getSlides().get_Item(0);

    // Konfigurasikan pengaturan gambar TIFF keluaran.
    TiffOptions tiffOptions = new TiffOptions();
    tiffOptions.setImageSize(new Dimension(2160, 2880));             // Tetapkan ukuran gambar.
    tiffOptions.setPixelFormat(ImagePixelFormat.Format1bppIndexed);  // Tetapkan format piksel (hitam putih).
    tiffOptions.setDpiX(300);                                        // Tetapkan resolusi horizontal.
    tiffOptions.setDpiY(300);                                        // Tetapkan resolusi vertikal.

    // Konversi slide menjadi gambar dengan opsi yang ditentukan.
    IImage image = slide.getImage(tiffOptions);

    try {
        // Simpan gambar dalam format TIFF.
        image.save("output.tiff", ImageFormat.Tiff);
    } finally {
        image.dispose();
    }
} finally {
    presentation.dispose();
}

Mengonversi Semua Slide ke Gambar

Aspose.Slides memungkinkan Anda mengonversi semua slide dalam sebuah presentasi menjadi gambar, secara efektif mengubah seluruh presentasi menjadi serangkaian gambar.

Contoh kode berikut menunjukkan cara mengonversi semua slide dalam sebuah presentasi menjadi gambar di Java:

float scaleX = 2;
float scaleY = scaleX;

Presentation presentation = new Presentation("Presentation.pptx");
try {
    // Render presentasi menjadi gambar slide per slide.
    for (int i = 0 ; i < presentation.getSlides().size(); i++)
    {
        // Kontrol slide tersembunyi (jangan render slide tersembunyi).
        if (presentation.getSlides().get_Item(i).getHidden())
            continue;

        // Konversi slide menjadi gambar.
        IImage image = presentation.getSlides().get_Item(i).getImage(scaleX, scaleY);

        try {
            // Simpan gambar dalam format JPEG.
            image.save("Slide_" + i + ".jpg", ImageFormat.Jpeg);
        } finally {
            image.dispose();
        }
    }
} finally {
    presentation.dispose();
} 

Rendering Emoji Berwarna

FAQ

Apakah Aspose.Slides mendukung rendering slide dengan animasi?

Tidak, metode getImage hanya menyimpan gambar statis dari slide, tanpa animasi.

Apakah slide tersembunyi dapat diekspor sebagai gambar?

Ya, slide tersembunyi dapat diproses seperti slide biasa. Pastikan saja mereka termasuk dalam loop pemrosesan.

Apakah gambar dapat disimpan dengan bayangan dan efek?

Ya, Aspose.Slides mendukung rendering bayangan, transparansi, dan efek grafis lainnya saat menyimpan slide sebagai gambar.