تحويل PDF إلى Excel في C++

نظرة عامة

توضح هذه المقالة كيفية تحويل PDF إلى تنسيقات Excel باستخدام C++. وهي تشمل الموضوعات التالية.

تنسيق: XLS

تنسيق: XLSX

تنسيق: تنسيق Microsoft Excel XLS

تنسيق: تنسيق Microsoft Excel XLSX


- [C++ PDF to Excel](#cpp-pdf-to-excel-xlsx)
- [C++ Convert PDF to Excel](#cpp-pdf-to-excel-xlsx)
- [C++ How to convert PDF file to Excel](#cpp-pdf-to-excel-xlsx)

المواضيع الأخرى التي يغطيها هذا المقال
- [انظر أيضًا](#see-also)

## تحويل C++ PDF إلى Excel

يدعم **Aspose.PDF for C++** ميزة تحويل ملفات PDF إلى تنسيقات Excel.

Aspose.PDF for C++ هو مكون لمعالجة ملفات PDF، وقد قمنا بتقديم ميزة تقوم بتحويل ملف PDF إلى دفتر عمل Excel (ملفات XLS). أثناء هذا التحويل، يتم تحويل الصفحات الفردية من ملف PDF إلى أوراق عمل Excel.

من أجل تحويل ملفات PDF إلى تنسيق <abbr title="Microsoft Excel Spreadsheet">XLS</abbr>، يحتوي Aspose.PDF على فئة تسمى ExcelSaveOptions. يتم تمرير كائن من فئة ExcelSaveOptions كحجة ثانية إلى منشئ Document.Save(..).

يوضح مقتطف الشيفرة التالي عملية تحويل ملف PDF إلى تنسيق XLS باستخدام Aspose.PDF for C++.

<a name="cpp-pdf-to-xls" id="cpp-pdf-to-xls"><strong>الخطوات: تحويل PDF إلى XLS في C++</strong></a> | <a name="cpp-pdf-to-excel-xls" id="cpp-pdf-to-excel-xls"><strong>الخطوات: تحويل PDF إلى تنسيق Excel XLS في C++</strong></a>
  1. قم بإنشاء مثيل لكائن Document باستخدام مستند PDF المصدر.
  2. احفظه بتنسيق XLS عن طريق استدعاء طريقة Document->Save().
void ConvertPDFtoExcel()
{
    std::clog << __func__ << ": Start" << std::endl;
    // String for path name
    String _dataDir("C:\\Samples\\Conversion\\");

    // String for file name
    String infilename("sample.pdf");
    String outfilename("PDFToExcel.xls");

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

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

تحويل PDF إلى XLS مع التحكم في العمود

عند تحويل ملف PDF إلى تنسيق XLS، يتم إضافة عمود فارغ إلى الملف الناتج كأول عمود. يتم استخدام خيار InsertBlankColumnAtFirst في فئة ExcelSaveOptions للتحكم في هذا العمود. القيمة الافتراضية له هي true.

void ConvertPDFtoExcel_Advanced_InsertBlankColumnAtFirst()
{
    std::clog << __func__ << ": Start" << std::endl;
    // String for path name
    String _dataDir("C:\\Samples\\Conversion\\");

    // String for file name
    String infilename("sample.pdf");
    String outfilename("PDFToExcel.xls");

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

    // Instantiate ExcelSave Option object
    auto excelSave = MakeObject<ExcelSaveOptions>();

    // The in ExcelSaveOptions class' InsertBlankColumnAtFirst option is used to control this column. Its default value is true.
    excelSave->set_InsertBlankColumnAtFirst(false);

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

تحويل PDF إلى ورقة عمل Excel واحدة

عند تصدير ملف PDF يحتوي على الكثير من الصفحات إلى XLS، يتم تصدير كل صفحة إلى ورقة مختلفة في ملف Excel. هذا لأن الخاصية MinimizeTheNumberOfWorksheets تكون مضبوطة على false بشكل افتراضي. لضمان تصدير جميع الصفحات إلى ورقة واحدة في ملف Excel الناتج، قم بتعيين الخاصية MinimizeTheNumberOfWorksheets إلى true.

void ConvertPDFtoExcel_Advanced_MinimizeTheNumberOfWorksheets()
{
    std::clog << __func__ << ": Start" << std::endl;
    // String for path name
    String _dataDir("C:\\Samples\\Conversion\\");

    // String for file name
    String infilename("sample.pdf");
    String outfilename("PDFToExcel.xls");

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

    // Instantiate ExcelSave Option object
    auto excelSave = MakeObject<ExcelSaveOptions>();

    excelSave->set_MinimizeTheNumberOfWorksheets(true);

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

التحويل إلى تنسيق XLSX

بشكل افتراضي، يستخدم Aspose.PDF صيغة XML Spreadsheet 2003 لتخزين البيانات. من أجل تحويل ملفات PDF إلى تنسيق XLSX، تحتوي Aspose.PDF على فئة تسمى ExcelSaveOptions مع ‘Format’. يتم تمرير كائن من الفئة ExcelSaveOptions كمعامل ثانٍ إلى طريقة Save.

يظهر مقتطف الشيفرة التالي عملية تحويل ملف PDF إلى تنسيق XLSX.

الخطوات: تحويل PDF إلى XLSX في C++ | الخطوات: تحويل PDF إلى تنسيق Excel XLSX في C++

  1. إنشاء مثيل لكائن Document مع وثيقة PDF المصدر.
3. قم بتعيين التنسيق كـ _ExcelSaveOptions::ExcelFormat::XLSX_.
4. احفظه بتنسيق _XLSX_ عن طريق استدعاء طريقة **Document->Save()** وتمريره مثيل من _ExcelSaveOptions_.

```cpp
void ConvertPDFtoExcel_Advanced_SaveXLSX()
{
    std::clog << __func__ << ": Start" << std::endl;
    // سلسلة لاسم المسار
    String _dataDir("C:\\Samples\\Conversion\\");

    // سلسلة لاسم الملف
    String infilename("sample.pdf");
    String outfilename("PDFToExcel.xls");

    // فتح المستند
    auto document = MakeObject<Document>(_dataDir + infilename);

    // إنشاء كائن ExcelSave Option
    auto excelSave = MakeObject<ExcelSaveOptions>();

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

    // احفظ المخرجات بتنسيق XLS
    document->Save(outfilename, excelSave);
    std::clog << __func__ << ": Finish" << std::endl;
}

انظر أيضًا

تغطي هذه المقالة أيضًا هذه المواضيع. الأكواد هي نفسها كما هو موضح أعلاه.

تنسيق: تنسيق Microsoft Excel XLS

تنسيق: تنسيق Microsoft Excel XLSX

تنسيق: XLS

تنسيق: XLSX