Extraire les tableaux d’un document PDF via C++

Comment extraire un tableau d’un PDF à l’aide de la bibliothèque C++

Comment extraire des tableaux d'un document PDF à l'aide de la bibliothèque C++

Afin d’extraire le tableau d’un PDF, nous utiliserons l’API Aspose.PDF for C++ qui est une API de manipulation de documents riche en fonctionnalités, puissante et facile à utiliser pour la plate-forme cpp. Ouvrez le gestionnaire de packages NuGet, recherchez Aspose.pdf et installez. Vous pouvez également utiliser la commande suivante depuis la console du gestionnaire de packages.

Package Manager Console

PM > Install-Package Aspose.PDF.Cpp

Extraire des tableaux d’un PDF via C++


Vous avez besoin de Aspose.PDF for C++ pour essayer le code dans votre environnement.

  1. Chargez le PDF avec une instance de Document.
  2. Créez un objet TableAbsorber pour rechercher des tables.
  3. Visitez la première page avec absorbeur.
  4. Obtenez le premier tableau de la page.
  5. Enlevez la table. Enregistrez le fichier.

Extraire les tableaux du PDF - C++


auto document = MakeObject<Document>(_dataDir + u"the_worlds_cities_in_2018_data_booklet 7.pdf");
    for (auto page : document->get_Pages())
    {
        auto absorber = MakeObject<Aspose::Pdf::Text::TableAbsorber>();
        absorber->Visit(page);
        for (auto table : absorber->get_TableList())
        {
            for (auto row : table->get_RowList())
            {
                for (auto cell : row->get_CellList())
                {
                    auto textfragment = MakeObject<TextFragment>();
                    auto textFragmentCollection = cell->get_TextFragments();
                    for (auto fragment : textFragmentCollection)
                    {
                        String txt;
                        for (auto seg : fragment->get_Segments())
                        {
                            txt += seg->get_Text();
                        }
                        Console::WriteLine(txt);
                    }
                }
            }
        }
    }