Mengonversi PDF ke Microsoft PowerPoint

Aspose.PDF untuk Java memungkinkan Anda melacak kemajuan konversi PDF ke PPTX. Kami memiliki API bernama Aspose.Slides yang menawarkan fitur untuk membuat serta memanipulasi presentasi PPT/PPTX. API ini juga menyediakan fitur untuk mengonversi file PPT/PPTX ke format PDF. Dalam Aspose.PDF untuk Java, kami telah memperkenalkan fitur untuk mengubah dokumen PDF menjadi format PPTX. Selama konversi ini, setiap halaman dari file PDF diubah menjadi slide terpisah dalam file PPTX.

Selama konversi PDF ke PPTX, teks dirender sebagai Teks di mana Anda dapat memilih/memperbaruinya, daripada dirender sebagai gambar. Silakan dicatat bahwa untuk mengonversi file PDF ke format PPTX, Aspose.PDF menyediakan kelas bernama PptxSaveOptions. Sebuah objek dari kelas PptxSaveOptions diberikan sebagai argumen kedua ke metode Document.save(..).

Periksa cuplikan kode berikut untuk menyelesaikan tugas Anda dengan konversi PDF ke format PowerPoint:

public final class ConvertPDFtoPPTX {

    private ConvertPDFtoPPTX() {

    }

    private static final Path DATA_DIR = Paths.get("/home/aspose/pdf-examples/Samples");

    public static void run() throws IOException {
        convertPDFtoPPTX_Simple();
        convertPDFtoPPTX_SlideAsImages();
        convertPDFtoPPTX_ProgresDetails();
    }

    public static void convertPDFtoPPTX_Simple() {
        String documentFileName = Paths.get(DATA_DIR.toString(), "PDFToPPTX.pdf").toString();
        String pptxDocumentFileName = Paths.get(DATA_DIR.toString(), "PDFToPPTX_out.pptx").toString();

        // Muat dokumen PDF
        Document document = new Document(documentFileName);

        // Instansiasi PptxSaveOptions
        PptxSaveOptions pptx_save = new PptxSaveOptions();

        // Simpan keluaran dalam format PPTX
        document.save(pptxDocumentFileName, pptx_save);
        document.close();
    }
}

Mengonversi PDF ke PPTX dengan Slide sebagai Gambar

Jika Anda perlu mengonversi PDF yang dapat dicari ke PPTX sebagai gambar alih-alih teks yang dapat dipilih, Aspose.PDF menyediakan fitur tersebut melalui kelas Aspose.Pdf.PptxSaveOptions. Untuk mencapai ini, atur properti SlidesAsImages dari kelas PptxSaveOptions ke ’true’ seperti yang ditunjukkan dalam contoh kode berikut.

Cuplikan kode berikut menunjukkan proses untuk mengonversi file PDF ke format PPTX Slide sebagai Gambar.

public static void convertPDFtoPPTX_SlideAsImages() {
    String documentFileName = Paths.get(DATA_DIR.toString(), "PDFToPPTX.pdf").toString();
    String pptxDocumentFileName = Paths.get(DATA_DIR.toString(), "PDFToPPTX_out.pptx").toString();

    // Memuat dokumen PDF
    Document document = new Document(documentFileName);
    // Membuat instance PptxSaveOptions
    PptxSaveOptions pptxSaveOptions = new PptxSaveOptions();
    // Menyimpan output dalam format PPTX
    pptxSaveOptions.setSlidesAsImages(true);

    document.save(pptxDocumentFileName, pptxSaveOptions);
    document.close();
}

Tampilkan Kemajuan di Konsol dengan Aspose.PDF untuk Java terlihat seperti ini:

package com.aspose.pdf.examples.conversion;

import com.aspose.pdf.Document;
import com.aspose.pdf.PptxSaveOptions;

import java.io.IOException;
import java.nio.file.Path;
import java.nio.file.Paths;

/**
 * Konversi PDF ke PPTX.
 */
public final class ConvertPDFtoPPTX {

    private ConvertPDFtoPPTX() {

    }

    private static final Path DATA_DIR = Paths.get("/home/aspose/pdf-examples/Samples");

    public static void run() throws IOException {
        convertPDFtoPPTX_ProgressDetails();
    }

    public static void convertPDFtoPPTX_ProgressDetails() {
        String documentFileName = Paths.get(DATA_DIR.toString(), "PDFToPPTX.pdf").toString();
        String pptxDocumentFileName = Paths.get(DATA_DIR.toString(), "PDFToPPTX_out.pptx").toString();

        // Muat dokumen PDF
        Document document = new Document(documentFileName);

        // Instansiasi objek PptxSaveOptions
        PptxSaveOptions pptx_save = new PptxSaveOptions();

        // Tentukan Pengelola Kemajuan Khusus
        pptx_save.setCustomProgressHandler(new ShowProgressOnConsole());

        // Simpan keluaran dalam format PPTX
        document.save(pptxDocumentFileName, pptx_save);
        document.close();
    }
}

Detail Kemajuan Konversi PPTX

Aspose.PDF untuk Java memungkinkan Anda melacak kemajuan konversi PDF ke PPTX. Kelas Aspose.Pdf.PptxSaveOptions menyediakan properti CustomProgressHandler yang dapat ditetapkan ke metode kustom untuk melacak kemajuan konversi seperti yang ditunjukkan dalam contoh kode berikut.

package com.aspose.pdf.examples;

import java.time.LocalDateTime;

import com.aspose.pdf.ProgressEventType;
import com.aspose.pdf.UnifiedSaveOptions.ConversionProgressEventHandler;
import com.aspose.pdf.UnifiedSaveOptions.ProgressEventHandlerInfo;

class ShowProgressOnConsole extends ConversionProgressEventHandler{

    @Override
    public void invoke(ProgressEventHandlerInfo eventInfo) {        
        switch (eventInfo.EventType) {
            case ProgressEventType.TotalProgress:
                System.out.println(
                        String.format("%s  - Kemajuan konversi : %d %%.", LocalDateTime.now().toString(), eventInfo.Value));
                break;
            case ProgressEventType.ResultPageCreated:
                System.out.println(String.format("%s  - Halaman hasil %s dari %d tata letak dibuat.", LocalDateTime.now().toString(),
                        eventInfo.Value, eventInfo.MaxValue));
                break;
            case ProgressEventType.ResultPageSaved:
                System.out.println(String.format("%s  - Halaman hasil %d dari %d diekspor.", LocalDateTime.now(), eventInfo.Value, eventInfo.MaxValue));
                break;
            case ProgressEventType.SourcePageAnalysed:
                System.out.println(String.format("%s  - Halaman sumber %d dari %d dianalisis.", LocalDateTime.now(),  eventInfo.Value, eventInfo.MaxValue));
                break;
            default:
                break;
        }
    }