Convert PDF to Microsoft Word Documents in C++

Visão Geral

Este artigo explica como converter documentos PDF para Microsoft Word usando C++. Ele abrange esses tópicos.

Formato: DOC

Formato: DOCX

Formato: Formato Microsoft Word DOC

Format: Formato Microsoft Word DOCX

Outros tópicos abordados por este artigo

Conversões de PDF para Word em C++

Uma das características mais populares é a conversão de PDF para DOC do Microsoft Word, o que torna o conteúdo fácil de manipular. O Aspose.PDF para C++ permite converter arquivos PDF para DOC.

Converter arquivo PDF para DOC (Word 97-2003)

Converta arquivo PDF para o formato DOC com facilidade e total controle. O Aspose.PDF para C++ é flexível e suporta uma ampla variedade de conversões. Converter páginas de documentos PDF para imagens, por exemplo, é um recurso muito popular.

Uma conversão que muitos dos nossos clientes solicitaram é de PDF para DOC: converter um arquivo PDF em um documento do Microsoft Word. Clientes querem isso porque arquivos PDF não podem ser facilmente editados, enquanto documentos Word podem. Algumas empresas querem que seus usuários sejam capazes de manipular texto, tabelas e imagens em arquivos que começaram como PDFs.

Mantendo viva a tradição de tornar as coisas simples e compreensíveis, o Aspose.PDF para C++ permite que você transforme um arquivo PDF de origem em um arquivo DOC com duas linhas de código. Para realizar esse recurso, introduzimos uma enumeração chamada SaveFormat e seu valor .Doc permite que você salve o arquivo de origem no formato Microsoft Word.

O seguinte trecho de código em C++ mostra o processo de conversão de um arquivo PDF para o formato DOC.

Passos: Converter PDF para DOC em C++ | Passos: Converter PDF para formato DOC do Microsoft Word em C++

  1. Crie uma instância do objeto Document com o documento PDF de origem.
  2. Salve-o no formato SaveFormat::Doc chamando o método Document->Save().
void ConvertPDFtoWord()
{
    std::clog << __func__ << ": Início" << std::endl;
    // String para o nome do caminho
    String _dataDir("C:\\Samples\\Conversion\\");

    // String para o nome do arquivo
    String infilename("sample.pdf");
    String outfilename("PDFToDOC.doc");

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

    try {
        // Salvar o arquivo no formato de documento do MS
        document->Save(_dataDir + outfilename, SaveFormat::Doc);
    }
    catch (Exception ex) {
        std::cerr << ex->get_Message();
    }

    std::clog << __func__ << ": Fim" << std::endl;
}

O seguinte trecho de código mostra o processo de conversão de um arquivo PDF para DOC versão Avançada:

void ConvertPDFtoWordDocAdvanced()
{
    std::clog << __func__ << ": Início" << std::endl;
    // String para o nome do caminho
    String _dataDir("C:\\Samples\\Conversion\\");

    // String para o nome do arquivo
    String infilename("sample.pdf");
    String outfilename("PDFToDOC.doc");

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

    auto saveOptions = MakeObject<DocSaveOptions>();
    saveOptions->set_Format(DocSaveOptions::DocFormat::Doc);
    // Definir o modo de reconhecimento como Fluxo
    saveOptions->set_Mode(DocSaveOptions::RecognitionMode::Flow);
    // Definir a proximidade horizontal como 2.5
    saveOptions->set_RelativeHorizontalProximity(2.5f);
    // Ativar o valor para reconhecer marcadores durante o processo de conversão
    saveOptions->set_RecognizeBullets(true);

    try {
        // Salvar o arquivo no formato de documento do MS
        document->Save(_dataDir + outfilename, saveOptions);
    }
    catch (Exception ex) {
        std::cerr << ex->get_Message();
    }

    std::clog << __func__ << ": Fim" << std::endl;
}

Converter PDF para DOCX

Aspose.PDF para C++ API permite que você leia e converta documentos PDF para DOCX usando a linguagem C++. DOCX é um formato bem conhecido para documentos do Microsoft Word cuja estrutura foi alterada de binário simples para uma combinação de arquivos XML e binários. Arquivos Docx podem ser abertos com o Word 2007 e versões posteriores, mas não com as versões anteriores do MS Word que suportam extensões de arquivo DOC.

O seguinte trecho de código C++ mostra o processo de conversão de um arquivo PDF para o formato DOCX.

Passos: Converter PDF para DOCX em C++ | Passos: Converter PDF para o formato Microsoft Word DOCX em C++

  1. Crie uma instância do objeto Document com o documento PDF de origem.
  2. Salve-o no formato SaveFormat::DocX chamando o método Document->Save().
void ConvertPDFtoWord_DOCX_Format()
{
    std::clog << __func__ << ": Start" << std::endl;
    // String para o nome do caminho
    String _dataDir("C:\\Samples\\Conversion\\");

    // String para o nome do arquivo
    String infilename("sample.pdf");
    String outfilename("PDFToDOC.docx");

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

    try {
        // Salvar o arquivo no formato de documento MS
        document->Save(_dataDir + outfilename, SaveFormat::DocX);
    }
    catch (Exception ex) {
        std::cerr << ex->get_Message();
    }

    std::clog << __func__ << ": Finish" << std::endl;
}

A classe DocSaveOptions tem uma propriedade chamada Format que oferece a capacidade de especificar o formato do documento resultante, ou seja, DOC ou DOCX. Para converter um arquivo PDF para o formato DOCX, por favor, passe o valor Docx da enumeração DocSaveOptions.DocFormat.

Por favor, veja o trecho de código a seguir que fornece a capacidade de converter um arquivo PDF para o formato DOCX com C++.

void ConvertPDFtoWord_Advanced_DOCX_Format()
{
    std::clog << __func__ << ": Start" << std::endl;
    // String para nome do caminho
    String _dataDir("C:\\Samples\\Conversion\\");

    // String para nome do arquivo
    String infilename("sample.pdf");
    String outfilename("PDFToDOC.docx");

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

    auto saveOptions = MakeObject<DocSaveOptions>();
    saveOptions->set_Format(DocSaveOptions::DocFormat::DocX);

    // Definir outros parâmetros do DocSaveOptions
    // ...

    // Salvar o arquivo no formato de documento do MS

    try {
        // Salvar o arquivo no formato de documento do MS
        document->Save(_dataDir + outfilename, saveOptions);
    }
    catch (Exception ex) {
        std::cerr << ex->get_Message();
    }

    std::clog << __func__ << ": Finish" << std::endl;
}

Veja Também

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

Formato: Formato Microsoft Word DOC

Formato: Formato Microsoft Word DOCX

Format: DOC

Format: DOC