Explorons les scénarios liés à la rotation dans les documents PDF. Il peut y avoir des situations où vous pourriez avoir un document PDF numérisé inversé que vous devez corriger. Vous pouvez réparer un tel document en faisant pivoter les pages du document. Vous pouvez également ajouter des filigranes de texte ou d’image à un document PDF en les faisant pivoter. À cette fin, cet article vous apprendra comment faire pivoter des pages, du texte et des images PDF par programmation à l’aide de C++.

API C++ pour la rotation de pages, de texte et d’images PDF

Aspose.PDF for C++ est une bibliothèque C++ qui vous permet de créer, lire et mettre à jour des documents PDF. En plus de cela, l’API prend en charge la rotation des pages PDF, du texte et des images. 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

Faire pivoter des pages PDF à l’aide de C++

Faire pivoter des pages avec Aspose.PDF for C++ est un jeu d’enfant. Avec seulement quelques lignes de code, vous pouvez faire pivoter toutes les pages du document PDF. Voici les étapes pour faire pivoter des pages PDF à l’aide de C++.

L’exemple de code suivant montre comment faire pivoter des pages PDF à l’aide de C++.

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

// Boucle à travers les pages
for (System::SharedPtr<Page> page : pdfDocument->get_Pages())
{
	// Faire pivoter la page
	page->set_Rotate(Aspose::Pdf::Rotation::on180);
}

// Enregistrez le fichier PDF
pdfDocument->Save(u"OutputDirectory\\Rotated_out.pdf", SaveFormat::Pdf);

Rotation de texte sur des pages PDF à l’aide de C++

Lors de l’ajout de texte à des documents PDF, vous pouvez modifier de nombreuses propriétés du texte, y compris son angle. Dans l’exemple suivant, nous allons ajouter du texte à une page PDF et le faire pivoter à un angle de 45 degrés. Voici les étapes pour y parvenir.

L’exemple de code suivant montre comment faire pivoter du texte sur une page PDF à l’aide de C++.

// Créer une instance de la classe Document
auto pdfDocument = MakeObject<Document>();

// Ajouter une nouvelle page
System::SharedPtr<Page> page = pdfDocument->get_Pages()->Add();

// Créer un objet TextFragment
System::SharedPtr<TextFragment> textFragment = MakeObject<TextFragment>(u"Rotated Text");

// Définir la position du texte
textFragment->set_Position(MakeObject<Position>(200, 600));

// Définir les propriétés du texte
textFragment->get_TextState()->set_FontSize(12);
textFragment->get_TextState()->set_Font(FontRepository::FindFont(u"TimesNewRoman"));
textFragment->get_TextState()->set_BackgroundColor(Aspose::Pdf::Color::get_LightGray());
textFragment->get_TextState()->set_ForegroundColor(Aspose::Pdf::Color::get_Red());
textFragment->get_TextState()->set_Rotation(45);
textFragment->get_TextState()->set_Underline(true);

// Créer un objet TextBuilder
System::SharedPtr<TextBuilder> textBuilder = MakeObject<TextBuilder>(page);

// Ajouter texc à la page
textBuilder->AppendText(textFragment);

// Enregistrez le fichier PDF
pdfDocument->Save(u"OutputDirectory\\Rotated_text_out.pdf", SaveFormat::Pdf);

Faire pivoter une image sur une page PDF à l’aide de C++

Lors de l’ajout d’images à des documents PDF, vous pouvez définir de nombreuses propriétés telles que la hauteur, la largeur, l’opacité, la rotation, etc. Dans cet exemple, nous allons ajouter une image à une page PDF et la faire pivoter à un angle de 90 degrés. Voici les étapes pour faire pivoter une image sur une page PDF.

L’exemple de code suivant montre comment faire pivoter une image sur une page PDF à l’aide de C++.

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

// Créer un objet ImageStamp
System::SharedPtr<ImageStamp> imageStamp = MakeObject<ImageStamp>(u"SourceDirectory\\aspose.png");

// Définir les propriétés ImageStamp
imageStamp->set_XIndent(250);
imageStamp->set_YIndent(350);
imageStamp->set_Height(100);
imageStamp->set_Width(300);
imageStamp->set_Rotate(Rotation::on90);
imageStamp->set_Opacity(0.5);

// Ajouter ImageStamp à la page
pdfDocument->get_Pages()->idx_get(1)->AddStamp(imageStamp);

// Enregistrez le fichier PDF
pdfDocument->Save(u"OutputDirectory\\Rotated_image_out.pdf", SaveFormat::Pdf);

Obtenez une licence gratuite

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

Conclusion

Dans cet article, vous avez appris à faire pivoter des pages, du texte et des images dans des documents PDF à l’aide de C++. Aspose.PDF for C++ est une vaste API qui fournit de nombreuses fonctionnalités supplémentaires pour travailler avec des fichiers PDF. Vous pouvez explorer l’API 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