Converter PDF para Excel em .NET

Visão Geral

Este artigo explica como converter PDF para formatos Excel usando C#. Ele cobre os seguintes tópicos.

O seguinte trecho de código também funciona com a biblioteca Aspose.PDF.Drawing.

Formatação: XLS

Formatação: XLSX

Formatação: Excel

Formatação: Planilha Excel Única

Formatação: Formato XML Spreadsheet 2003

Formatação: CSV

Formatação: ODS

Conversões de C# PDF para Excel

Aspose.PDF for .NET suporta a funcionalidade de converter arquivos PDF para os formatos Excel 2007, CSV e SpeadsheetML.

Aspose.PDF for .NET é um componente de manipulação de PDF, introduzimos um recurso que renderiza arquivos PDF em uma pasta de trabalho Excel (arquivos XLSX). Durante essa conversão, as páginas individuais do arquivo PDF são convertidas em planilhas Excel.

Para converter arquivos PDF para o formato XLSX, Aspose.PDF possui uma classe chamada ExcelSaveOptions. Um objeto da classe ExcelSaveOptions é passado como segundo argumento para o construtor Document.Save(..).

O seguinte trecho de código mostra o processo de conversão de um arquivo PDF para o formato XLS ou XLSX com Aspose.PDF for .NET.

Passos: Converter PDF para XLS em C#

  1. Crie uma instância do objeto Document com o documento PDF de origem.
  2. Crie uma instância de ExcelSaveOptions.
  3. Salve-o no formato XLS especificando a extensão .xls chamando o método Document.Save() e passando ExcelSaveOptions.

Passos: Converter PDF para XLSX em C#

  1. Crie uma instância do objeto Document com o documento PDF de origem.
  2. Crie uma instância de ExcelSaveOptions.
  3. Salve-o no formato XLSX especificando a extensão .xlsx chamando o método Document.Save() e passando 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);
     }
 }

Converter PDF para XLS com Controle de Coluna

Ao converter um PDF para o formato XLS, uma coluna em branco é adicionada ao arquivo de saída como a primeira coluna. A opção InsertBlankColumnAtFirst da classe ExcelSaveOptions é usada para controlar essa coluna. O valor padrão é false, o que significa que colunas em branco não serão inseridas.

// 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);
    }
}

Converter PDF para Planilha Excel Única

Ao exportar um arquivo PDF com muitas páginas para XLS, cada página é exportada para uma planilha diferente no arquivo Excel. Isso ocorre porque a propriedade MinimizeTheNumberOfWorksheets é definida como falsa por padrão. Para garantir que todas as páginas sejam exportadas para uma única planilha no arquivo Excel de saída, defina a propriedade MinimizeTheNumberOfWorksheets como verdadeira.

Passos: Converter PDF para XLS ou XLSX Planilha Única em C#

  1. Crie uma instância do objeto Document com o documento PDF de origem.
  2. Crie uma instância de ExcelSaveOptions com MinimizeTheNumberOfWorksheets = true.
  3. Salve-o no formato XLS ou XLSX tendo uma única planilha chamando o método Document.Save() e passando 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);
    }
}

Converter para outros formatos de planilha

Converter para formato XML Spreadsheet 2003

Desde a versão 20.8, Aspose.PDF usa o formato de arquivo Microsoft Excel Open XML Spreadsheet 2007 como padrão para armazenar dados. Para converter arquivos PDF para o formato XML Spreadsheet 2003, Aspose.PDF possui uma classe chamada ExcelSaveOptions com Format. Um objeto da classe ExcelSaveOptions é passado como segundo argumento para o método Document.Save(..).

O seguinte trecho de código mostra o processo de conversão de um arquivo PDF para o formato XLS Excel 2003 XML.

Passos: Converter PDF para Excel 2003 XML em C#

  1. Crie uma instância do objeto Document com o documento PDF de origem.
  2. Crie uma instância de ExcelSaveOptions com Format = ExcelSaveOptions.ExcelFormat.XMLSpreadSheet2003.
  3. Salve-o no formato XLS - Excel 2003 XML Format chamando o método Document.Save() e passando 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);
     }
 }

Converter para CSV

A conversão para o formato CSV é realizada da mesma forma que acima. Tudo o que você precisa fazer é definir o formato apropriado.

Passos: Converter PDF para CSV em C#

  1. Crie uma instância do objeto Document com o documento PDF de origem.
  2. Crie uma instância de ExcelSaveOptions com Format = ExcelSaveOptions.ExcelFormat.CSV.
  3. Salve-o no formato CSV chamando o método Document.Save() e passando 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);
    }
}

Converter para ODS

Passos: Converter PDF para ODS em C#

  1. Crie uma instância do objeto Document com o documento PDF de origem.
  2. Crie uma instância de ExcelSaveOptions com Format = ExcelSaveOptions.ExcelFormat.ODS.
  3. Salve-o no formato ODS chamando o método Document.Save() e passando ExcelSaveOptions.

A conversão para o formato ODS é realizada da mesma forma que todos os outros formatos.

// 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);
    }
}

Veja Também

Este artigo também cobre estes tópicos. Os códigos são os mesmos que acima.

Formatação: Excel

Formatação: XLS

Formatação: XLSX

Formatação: CSV

Formatação: ODS