Mengonversi PDF ke Excel dalam C++

Ikhtisar

Artikel ini menjelaskan bagaimana mengonversi PDF ke format Excel menggunakan C++. Ini mencakup topik-topik berikut.

Format: XLS

Format: XLSX

Format: Format Microsoft Excel XLS

Format: Format Microsoft Excel XLSX

- [C++ PDF ke Excel](#cpp-pdf-to-excel-xlsx)
- [C++ Konversi PDF ke Excel](#cpp-pdf-to-excel-xlsx)
- [C++ Cara mengonversi file PDF ke Excel](#cpp-pdf-to-excel-xlsx)

Topik lain yang dibahas dalam artikel ini
- [Lihat Juga](#see-also)

## Konversi C++ PDF ke Excel

**Aspose.PDF untuk C++** mendukung fitur konversi file PDF ke format Excel.

Aspose.PDF untuk C++ adalah komponen manipulasi PDF, kami telah memperkenalkan fitur yang merender file PDF ke buku kerja Excel (file XLS). Selama konversi ini, halaman-halaman individu dari file PDF dikonversi menjadi lembar kerja Excel.

Untuk mengonversi file PDF ke format <abbr title="Microsoft Excel Spreadsheet">XLS</abbr>, Aspose.PDF memiliki kelas bernama ExcelSaveOptions. Sebuah objek dari kelas ExcelSaveOptions diteruskan sebagai argumen kedua ke konstruktor Document.Save(..).

Cuplikan kode berikut menunjukkan proses konversi file PDF menjadi format XLS dengan Aspose.PDF untuk C++.


<a name="cpp-pdf-to-xls" id="cpp-pdf-to-xls"><strong>Langkah: Konversi PDF ke XLS dalam C++</strong></a> | <a name="cpp-pdf-to-excel-xls" id="cpp-pdf-to-excel-xls"><strong>Langkah: Konversi PDF ke format Excel XLS dalam C++</strong></a>

1. Buat instance dari objek [Document](https://reference.aspose.com/pdf/cpp/class/aspose.pdf.document) dengan dokumen PDF sumber.
2. Simpan ke format _XLS_ dengan memanggil metode **Document->Save()**.

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

    // String untuk nama file
    String infilename("sample.pdf");
    String outfilename("PDFToExcel.xls");

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

    try {
    // Simpan output dalam format XLS
    document->Save(_dataDir + outfilename, SaveFormat::Excel);
    }
    catch (Exception ex) {
    std::cerr << ex->get_Message();
    }
    std::clog << __func__ << ": Finish" << std::endl;
}

Konversi PDF ke XLS dengan Kontrol Kolom

Ketika mengonversi PDF ke format XLS, kolom kosong ditambahkan ke file output sebagai kolom pertama. Opsi InsertBlankColumnAtFirst dalam kelas ExcelSaveOptions digunakan untuk mengendalikan kolom ini. Nilai defaultnya adalah true.

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

    // String untuk nama file
    String infilename("sample.pdf");
    String outfilename("PDFToExcel.xls");

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

    // Instansiasi objek ExcelSave Option
    auto excelSave = MakeObject<ExcelSaveOptions>();

    // Opsi InsertBlankColumnAtFirst dalam kelas ExcelSaveOptions digunakan untuk mengendalikan kolom ini. Nilai defaultnya adalah true.
    excelSave->set_InsertBlankColumnAtFirst(false);

    // Simpan keluaran dalam format XLS
    document->Save(outfilename, excelSave);
    std::clog << __func__ << ": Finish" << std::endl;
}

Konversi PDF ke Lembar Kerja Excel Tunggal

Ketika mengekspor file PDF dengan banyak halaman ke XLS, setiap halaman diekspor ke lembar yang berbeda dalam file Excel. Dokumen ini karena properti MinimizeTheNumberOfWorksheets diatur ke false secara default. Untuk memastikan bahwa semua halaman diekspor ke satu lembar tunggal dalam file Excel output, atur properti MinimizeTheNumberOfWorksheets ke true.

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

    // String untuk nama file
    String infilename("sample.pdf");
    String outfilename("PDFToExcel.xls");

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

    // Instansiasi objek ExcelSave Option
    auto excelSave = MakeObject<ExcelSaveOptions>();

    excelSave->set_MinimizeTheNumberOfWorksheets(true);

    // Simpan output dalam format XLS
    document->Save(outfilename, excelSave);
    std::clog << __func__ << ": Selesai" << std::endl;
}

Konversi ke format XLSX

Secara default Aspose.PDF menggunakan XML Spreadsheet 2003 untuk menyimpan data. Untuk mengonversi file PDF ke format XLSX, Aspose.PDF memiliki kelas bernama ExcelSaveOptions dengan ‘Format’. Sebuah objek dari kelas ExcelSaveOptions diteruskan sebagai argumen kedua ke metode Save.

Cuplikan kode berikut menunjukkan proses untuk mengonversi file PDF menjadi format XLSX.

Langkah-langkah: Mengonversi PDF ke XLSX dalam C++ | Langkah-langkah: Mengonversi PDF ke format Excel XLSX dalam C++

  1. Buat sebuah instance dari objek Document dengan dokumen PDF sumber.
  2. Buat instance dari ExcelSaveOptions.
  3. Atur format sebagai ExcelSaveOptions::ExcelFormat::XLSX.
  4. Simpan ke format XLSX dengan memanggil metode Document->Save() dan melewatkan instance dari ExcelSaveOptions.
void ConvertPDFtoExcel_Advanced_SaveXLSX()
{
    std::clog << __func__ << ": Start" << std::endl;
    // String untuk nama path
    String _dataDir("C:\\Samples\\Conversion\\");

    // String untuk nama file
    String infilename("sample.pdf");
    String outfilename("PDFToExcel.xls");

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

    // Instansiasi objek ExcelSave Option
    auto excelSave = MakeObject<ExcelSaveOptions>();

    excelSave->set_Format(ExcelSaveOptions::ExcelFormat::XLSX);

    // Simpan output dalam format XLS
    document->Save(outfilename, excelSave);
    std::clog << __func__ << ": Finish" << std::endl;
}

Lihat Juga

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

Format: Format Microsoft Excel XLS

Format: Format Microsoft Excel XLSX

Format: XLS

Format: XLSX