Конвертация PDF в Excel в .NET

Обзор

Эта статья объясняет, как конвертировать PDF в форматы Excel с использованием C#. Она охватывает следующие темы.

Следующий фрагмент кода также работает с библиотекой Aspose.PDF.Drawing.

Формат: XLS

Формат: XLSX

Формат: Excel

Формат: Один лист Excel

Формат: XML Spreadsheet 2003 формат

Формат: CSV

Формат: ODS

C# Конвертации PDF в Excel

Aspose.PDF for .NET поддерживает функцию конвертации PDF файлов в форматы Excel 2007, CSV и SpeadsheetML.

Aspose.PDF for .NET является компонентом для манипуляции PDF, мы внедрили функцию, которая преобразует PDF файл в рабочую книгу Excel (файлы XLSX). В процессе этой конверсии отдельные страницы PDF файла преобразуются в листы Excel.

Чтобы конвертировать PDF файлы в XLSX формат, Aspose.PDF имеет класс ExcelSaveOptions. Объект класса ExcelSaveOptions передается в качестве второго аргумента в конструктор Document.Save(..).

Следующий фрагмент кода показывает процесс конвертации PDF файла в формат XLS или XLSX с помощью Aspose.PDF for .NET.

Шаги: Конвертация PDF в XLS на C#

  1. Создайте экземпляр объекта Document с исходным PDF документом.
  2. Создайте экземпляр ExcelSaveOptions.
  3. Сохраните его в формате XLS, указав .xls расширение, вызвав метод Document.Save() и передав ему ExcelSaveOptions.

Шаги: Конвертация PDF в XLSX на C#

  1. Создайте экземпляр объекта Document с исходным PDF документом.
  2. Создайте экземпляр ExcelSaveOptions.
  3. Сохраните его в формате XLSX, указав .xlsx расширение, вызвав метод Document.Save() и передав ему ExcelSaveOptions.
  // For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
 private static void ConvertPDFtoExcel()
 {
     // The path to the documents directory
     var dataDir = RunExamples.GetDataDir_AsposePdf();

     // Open PDF document
     using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
     {
         // Instantiate ExcelSaveOptions object
         var saveOptions = new Aspose.Pdf.ExcelSaveOptions();

         // Save the file in XLSX format
         document.Save(dataDir + "PDFToXLS_out.xlsx", saveOptions);
     }
 }

Конвертация PDF в XLS с контрольным столбцом

При конвертации PDF в формат XLS в выходной файл добавляется пустой столбец в качестве первого столбца. Опция InsertBlankColumnAtFirst класса ExcelSaveOptions используется для управления этим столбцом. Значение по умолчанию - false, что означает, что пустые столбцы не будут вставлены.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFtoExcelAdvanced_InsertBlankColumnAtFirst()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
    {
        // Instantiate ExcelSaveOptions object
        var saveOptions = new Aspose.Pdf.ExcelSaveOptions
        {
            InsertBlankColumnAtFirst = false
        };

        // Save the file in XLSX format
        document.Save(dataDir + "PDFToXLS_out.xlsx", saveOptions);
    }
}

Конвертация PDF в один лист Excel

При экспорте PDF файла с большим количеством страниц в XLS каждая страница экспортируется на отдельный лист в файле Excel. Это происходит потому, что свойство MinimizeTheNumberOfWorksheets по умолчанию установлено в false. Чтобы убедиться, что все страницы экспортируются на один единственный лист в выходном Excel файле, установите свойство MinimizeTheNumberOfWorksheets в true.

Шаги: Конвертация PDF в XLS или XLSX с одним листом на C#

  1. Создайте экземпляр объекта Document с исходным PDF документом.
  2. Создайте экземпляр ExcelSaveOptions с MinimizeTheNumberOfWorksheets = true.
  3. Сохраните его в формате XLS или XLSX, имея один лист, вызвав метод Document.Save() и передав ему ExcelSaveOptions.
 // For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFtoExcelAdvanced_MinimizeTheNumberOfWorksheets()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
    {
        // Instantiate ExcelSaveOptions object
        var saveOptions = new Aspose.Pdf.ExcelSaveOptions
        {
            MinimizeTheNumberOfWorksheets = true
        };

        // Save the file in XLSX format
        document.Save(dataDir + "PDFToXLS_out.xlsx", saveOptions);
    }
}

Конвертация в другие форматы таблиц

Конвертация в формат XML Spreadsheet 2003

Начиная с версии 20.8 Aspose.PDF использует формат файла Microsoft Excel Open XML Spreadsheet 2007 по умолчанию для хранения данных. Чтобы конвертировать PDF файлы в формат XML Spreadsheet 2003, Aspose.PDF имеет класс ExcelSaveOptions с Format. Объект класса ExcelSaveOptions передается в качестве второго аргумента в метод Document.Save(..).

Следующий фрагмент кода показывает процесс конвертации PDF файла в формат XLS Excel 2003 XML.

Шаги: Конвертация PDF в Excel 2003 XML формат на C#

  1. Создайте экземпляр объекта Document с исходным PDF документом.
  2. Создайте экземпляр ExcelSaveOptions с Format = ExcelSaveOptions.ExcelFormat.XMLSpreadSheet2003.
  3. Сохраните его в формате XLS - Excel 2003 XML формат, вызвав метод Document.Save() и передав ему ExcelSaveOptions.
  // For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
 private static void ConvertPDFtoExcelAdvanced_SaveXLS2003()
 {
     // The path to the documents directory
     var dataDir = RunExamples.GetDataDir_AsposePdf();

     // Open PDF document
     using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
     {
         // Instantiate ExcelSaveOptions object
         var saveOptions = new Aspose.Pdf.ExcelSaveOptions
         {
             Format = Aspose.Pdf.ExcelSaveOptions.ExcelFormat.XMLSpreadSheet2003
         };

         // Save the file in XLS format
         document.Save(dataDir + "PDFToXLS_out.xls", saveOptions);
     }
 }

Конвертация в CSV

Конвертация в формат CSV выполняется так же, как и выше. Все, что вам нужно - установить соответствующий формат.

Шаги: Конвертация PDF в CSV на C#

  1. Создайте экземпляр объекта Document с исходным PDF документом.
  2. Создайте экземпляр ExcelSaveOptions с Format = ExcelSaveOptions.ExcelFormat.CSV.
  3. Сохраните его в формате CSV, вызвав метод Document.Save() и передав ему ExcelSaveOptions.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFToCSV()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
    {
        // Instantiate ExcelSaveOptions object
        var saveOptions = new Aspose.Pdf.ExcelSaveOptions
        {
            Format = Aspose.Pdf.ExcelSaveOptions.ExcelFormat.CSV
        };
        
        // Save the file in CSV format
        document.Save(dataDir + "PDFToXLS_out.csv", saveOptions);
    }
}

Конвертация в ODS

Шаги: Конвертация PDF в ODS на C#

  1. Создайте экземпляр объекта Document с исходным PDF документом.
  2. Создайте экземпляр ExcelSaveOptions с Format = ExcelSaveOptions.ExcelFormat.ODS.
  3. Сохраните его в формате ODS, вызвав метод Document.Save() и передав ему ExcelSaveOptions.

Конвертация в формат ODS выполняется так же, как и во все другие форматы.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFToODS()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf();
    
    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
    {
        // Instantiate ExcelSaveOptions object
        var saveOptions = new Aspose.Pdf.ExcelSaveOptions
        {
            Format = Aspose.Pdf.ExcelSaveOptions.ExcelFormat.ODS
        };

        // Save the file in ODS format
        document.Save(dataDir + "PDFToODS_out.ods", saveOptions);
    }
}

См. также

Эта статья также охватывает эти темы. Код такой же, как и выше.

Формат: Excel

Формат: XLS

Формат: XLSX

Формат: CSV

Формат: ODS