Konversi PDF ke Microsoft PowerPoint dalam C++

Ikhtisar

Artikel ini menjelaskan cara mengkonversi PDF ke format PowerPoint menggunakan C++. Ini mencakup topik-topik berikut.

Format: PPTX

Format: Format Microsoft PowerPoint PPTX

Topik lain yang dibahas dalam artikel ini.

Konversi PDF ke PowerPoint C++

Aspose.PDF untuk C++ memungkinkan Anda melacak kemajuan konversi PDF ke PPTX.


Selama konversi PDF ke <abbr title="Microsoft PowerPoint 2007 XML Presentation">PPTX</abbr>, teks dirender sebagai Teks di mana Anda dapat memilih/memperbaruinya. Harap dicatat bahwa untuk mengonversi file PDF ke format PPTX, Aspose.PDF menyediakan kelas bernama [`PptxSaveOptions`](https://reference.aspose.com/pdf/cpp/class/aspose.pdf.pptx_save_options). Objek dari kelas PptxSaveOptions diteruskan sebagai argumen kedua ke metode [`Document.Save(..) method`](https://reference.aspose.com/pdf/cpp/class/aspose.pdf.document#ac082fe8e67b25685fc51d33e804269fa). Potongan kode berikut menunjukkan proses untuk mengonversi file PDF ke format PPTX.

## Konversi sederhana PDF ke PPTX dengan Aspose.PDF untuk C++

Untuk mengonversi PDF ke PPTX, Aspose.PDF untuk C++ menyarankan untuk menggunakan langkah-langkah kode berikut.

<a name="cpp-pdf-to-pptx" id="cpp-pdf-to-pptx"><strong>Langkah-langkah: Mengonversi PDF ke PPTX dalam C++</strong></a> | <a name="cpp-pdf-to-powerpoint-pptx" id="cpp-pdf-to-powerpoint-pptx"><strong>Langkah-langkah: Mengonversi PDF ke format PowerPoint PPTX dalam C++</strong></a>

1. Buat instance dari kelas [Document](https://reference.aspose.com/pdf/cpp/class/aspose.pdf.document).
2. Buat instance dari kelas [PptxSaveOptions](https://reference.aspose.com/pdf/cpp/class/aspose.pdf.pptx_save_options).
3. Gunakan metode **Save** dari objek **Document** untuk _menyimpan PDF sebagai PPTX_.

```cpp
void ConvertPDFtoPPTX()
{
    std::clog << __func__ << ": Start" << std::endl;
    // String untuk nama path
    String _dataDir("C:\\Samples\\Conversion\\");

    // String untuk nama file
    String infilename("JSON Fundamenals.pdf");
    String outfilename("JSON Fundamenals.pptx");

    // Buka dokumen
    auto document = MakeObject<Document>(_dataDir + infilename);

    // Simpan keluaran dalam format PPTX
    document->Save(_dataDir + outfilename, SaveFormat::Pptx);
    std::clog << __func__ << ": Finish" << std::endl;
}

Konversi PDF ke PPTX dengan Slide sebagai Gambar

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

void ConvertPDFtoPPTX_SlidesAsImages()
{
    std::clog << __func__ << ": Start" << std::endl;
    // String untuk nama path
    String _dataDir("C:\\Samples\\Conversion\\");

    // String untuk nama file
    String infilename("JSON Fundamenals.pdf");
    String outfilename("JSON Fundamenals.pptx");

    // Buka dokumen
    auto document = MakeObject<Document>(_dataDir + infilename);

    auto pptxOptions = MakeObject<PptxSaveOptions>();
    pptxOptions->set_SlidesAsImages(true);

    // Simpan keluaran dalam format PPTX
    document->Save(_dataDir + outfilename, pptxOptions);
    std::clog << __func__ << ": Finish" << std::endl;
}

Detail Kemajuan Konversi PPTX

Aspose.PDF untuk C++ memungkinkan Anda melacak kemajuan konversi PDF ke PPTX. The Aspose.Pdf.PptxSaveOptions class menyediakan properti CustomProgressHandler yang dapat ditentukan ke metode khusus untuk melacak kemajuan konversi seperti yang ditunjukkan dalam contoh kode berikut.

void ConvertPDFtoPPTX_ProgressDetailConversion()
{
    std::clog << __func__ << ": Mulai" << std::endl;
    // String untuk nama path
    String _dataDir("C:\\Samples\\Conversion\\");

    // String untuk nama file
    String infilename("JSON Fundamenals.pdf");
    String outfilename("JSON Fundamenals.pptx");

    // Buka dokumen
    auto document = MakeObject<Document>(_dataDir + infilename);

    auto pptxOptions = MakeObject<PptxSaveOptions>();
    //pptxOptions->set_SlidesAsImages(true);
    //Tentukan Custom Progress Handler
    pptxOptions->set_CustomProgressHandler(ShowProgressOnConsole);

    // Simpan output dalam format PPTX
    document->Save(_dataDir + outfilename, pptxOptions);
    std::clog << __func__ << ": Selesai" << std::endl;
}

Berikut adalah metode khusus untuk menampilkan konversi kemajuan.

void ShowProgressOnConsole(SharedPtr<UnifiedSaveOptions::ProgressEventHandlerInfo> eventInfo)
{
    switch (eventInfo->EventType)
    {
    case ProgressEventType::TotalProgress:
    std::clog << DateTime::get_Now().get_TimeOfDay() << " - Kemajuan konversi : " << eventInfo->Value << std::endl;
    break;
    case ProgressEventType::ResultPageCreated:
    std::clog << DateTime::get_Now().get_TimeOfDay() << " - Halaman hasil " << eventInfo->Value << " dari " << eventInfo->MaxValue << " tata letak dibuat." << std::endl;
    break;
    case ProgressEventType::ResultPageSaved:
    std::clog << DateTime::get_Now().get_TimeOfDay() << " - Halaman hasil " << eventInfo->Value << " dari " << eventInfo->MaxValue << " diekspor." << std::endl;
    break;
    case ProgressEventType::SourcePageAnalysed:
    std::clog << DateTime::get_Now().get_TimeOfDay() << " - Halaman sumber " << eventInfo->Value << " dari " << eventInfo->MaxValue << " dianalisis." << std::endl;
    break;
    default:
    break;
    }
}

Lihat Juga

Artikel ini juga mencakup topik-topik ini. Kode-kodenya sama seperti di atas.

Format: PowerPoint

Format: Microsoft PowerPoint PPTX format

Format: PPTX