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
- Faire pivoter des pages PDF à l’aide de C++
- Rotation de texte sur des pages PDF à l’aide de C++
- Faire pivoter une image sur une page PDF à 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++.
- Chargez le document PDF source à l’aide de la classe Document.
- Parcourez les pages du document. Si vous souhaitez faire pivoter uniquement les pages sélectionnées, vous pouvez définir cette logique dans cette boucle.
- Faites pivoter chaque page à l’aide de la méthode Page->setRotate(Rotation value).
- Enregistrez le fichier PDF de sortie à l’aide de la méthode Document->Save(System::String outputFileName, SaveFormat format).
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.
- Créez une instance de la classe Document pour représenter un nouveau document PDF.
- Ajouter une nouvelle page au document PDF.
- Créez une instance de la classe TextFragment avec le texte que vous souhaitez ajouter.
- Définissez la position, l’angle et d’autres propriétés du texte.
- Ajoutez du texte à la page PDF à l’aide de TextBuilder->AppendText(System::SharedPtr textFragment) méthode.
- Enregistrez le fichier PDF de sortie à l’aide de la méthode Document->Save(System::String outputFileName, SaveFormat format).
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.
- Chargez le document PDF source à l’aide de la classe Document.
- Créez une instance de la classe ImageStamp avec l’image que vous souhaitez ajouter.
- Définissez la rotation et d’autres propriétés de l’image.
- Ajoutez l’image à la page PDF en utilisant Document->getPages()->idxget(1)->AddStamp(System::SharedPtr tampon) méthode.
- Enregistrez le fichier PDF de sortie à l’aide de la méthode Document->Save(System::String outputFileName, SaveFormat format).
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.