Travailler avec des images dans des fichiers PDF à l'aide de C++

Les images peuvent être utilisées pour montrer une variété de choses allant des photographies de produits aux flux de travail et aux organigrammes. Les fichiers PDF peuvent contenir des images en fonction du type d’informations dont ils disposent. Par exemple, un guide d’installation de chaise comprendra des images de la chaise montrant comment l’assembler. Il peut y avoir des scénarios dans lesquels vous devez manipuler des images dans des fichiers PDF par programme. Dans de tels cas, cet article vous apprendra comment travailler avec des images dans des fichiers PDF à l’aide de C++.

API C++ pour travailler avec des images dans des fichiers PDF

Aspose.PDF for C++ est une bibliothèque C++ robuste qui vous permet de créer, lire et modifier des fichiers PDF. De plus, l’API prend en charge le travail avec des images dans des documents PDF. Vous pouvez soit installer l’API via NuGet ou la télécharger directement à partir de la section downloads.

PM> Install-Package Aspose.PDF.Cpp

Ajouter une image à un fichier PDF en utilisant C++

Voici les étapes pour ajouter une image à un fichier PDF.

L’exemple de code suivant montre comment ajouter une image à un fichier PDF à l’aide de C++.

// Charger le fichier PDF
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\PDF\\Sample 1.pdf");

// Récupérer la première page
auto page = pdfDocument->get_Pages()->idx_get(1);

// Créer une instance de la classe Rectangle
double x = 100.0, y = 600.0, width = 200.0, height = 200.0;
auto rectangle = MakeObject<Aspose::Pdf::Rectangle>(x, y, x + width, y + height);

// Ajouter une image à la page
page->AddImage(u"SourceDirectory\\Images\\AsposeLogo.png", rectangle);

// Enregistrez le fichier PDF
pdfDocument->Save(u"OutputDirectory\\add_image_output.pdf");

Extraire des images d’un fichier PDF à l’aide de C++

Pour extraire des images d’un fichier PDF, suivez les étapes ci-dessous.

L’exemple de code suivant montre comment extraire une image d’un fichier PDF à l’aide de C++.

// Charger le fichier PDF
auto pdfDocument = MakeObject<Document>(u"OutputDirectory\\add_image_output.pdf");

// Extraire une image particulière
auto image = pdfDocument->get_Pages()->idx_get(1)->get_Resources()->get_Images()->idx_get(1);

// Créer un objet de flux pour enregistrer l'image de sortie
System::SharedPtr<System::IO::FileStream> outputImage = System::IO::File::Create(u"OutputDirectory\\extract_image_output.jpg");

// Enregistrer l'image de sortie
image->Save(outputImage, System::Drawing::Imaging::ImageFormat::get_Jpeg());

// Fermer le flux
outputImage->Close();

Supprimer une image d’un fichier PDF à l’aide de C++

Voici les étapes pour supprimer une image d’un fichier PDF à l’aide de C++.

L’exemple de code suivant montre comment supprimer une image particulière d’un fichier PDF à l’aide de C++.

// Charger le fichier PDF
auto pdfDocument = MakeObject<Document>(u"OutputDirectory\\add_image_output.pdf");

// Supprimer une image particulière
pdfDocument->get_Pages()->idx_get(1)->get_Resources()->get_Images()->Delete(1);

// Enregistrez le fichier PDF
pdfDocument->Save(u"OutputDirectory\\delete_image_output.pdf");

Remplacer une image dans un fichier PDF à l’aide de C++

Pour remplacer une image existante dans un fichier PDF, suivez les étapes ci-dessous.

Le code suivant montre comment remplacer une image dans un fichier PDF à l’aide de C++.

// Charger le fichier PDF
auto pdfDocument = MakeObject<Document>(u"OutputDirectory\\add_image_output.pdf");

// Ouvrez la nouvelle image avec FileStream
System::SharedPtr<System::IO::FileStream> newImage = System::IO::File::OpenRead(u"SourceDirectory\\Images\\aspose.png");

// Remplacer l'ancienne image
pdfDocument->get_Pages()->idx_get(1)->get_Resources()->get_Images()->Replace(1, newImage);

// Fermer le flux
newImage->Close();

// Enregistrez le fichier PDF
pdfDocument->Save(u"OutputDirectory\\replace_image_output.pdf");

Obtenez une licence gratuite

Vous pouvez essayer l’API sans limitation d’évaluation en demandant une licence temporaire gratuite.

Conclusion

Dans cet article, vous avez appris à travailler avec des images dans des fichiers PDF à l’aide de C++. Plus précisément, vous avez appris à ajouter, extraire, remplacer et supprimer des images de fichiers PDF à l’aide de l’API Aspose.PDF for C++. L’API fournit un ensemble de fonctionnalités supplémentaires pour travailler avec des fichiers PDF que vous pouvez explorer en détail en visitant la documentation officielle. En cas de questions, n’hésitez pas à nous contacter sur notre forum d’assistance gratuit.

Voir également