![Faire pivoter du texte dans des documents PDF en Java](images/Rotate-Text-in-PDF.jpg#center)
PDF est un format de document multiplateforme qui fournit une mise en page cohérente sur différents systèmes d’exploitation. Il est largement utilisé pour générer et partager des documents, tels que des articles de recherche, des factures, etc. Lors de la génération de fichiers PDF par programmation, vous devez souvent modifier la position et l’orientation du texte en fonction de la mise en page du document. Dans cet article, nous allons vous montrer comment faire pivoter du texte dans des documents PDF en Java.
API Java pour faire pivoter du texte dans un PDF
Pour faire pivoter du texte dans des fichiers PDF, nous utiliserons Aspose.PDF for Java. Il s’agit d’une bibliothèque puissante qui fournit des fonctionnalités de manipulation PDF de base et avancées. Vous pouvez télécharger l’API ou l’installer à l’aide des configurations Maven suivantes.
Repository:
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
Dependency:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-pdf</artifactId>
<version>22.4</version>
</dependency>
Faire pivoter le texte dans un PDF en Java
Il existe plusieurs façons de faire pivoter un texte dans un document PDF. Vous pouvez soit faire pivoter un fragment de texte, soit le paragraphe complet. Voyons comment fonctionne chacune de ces rotations de texte.
Rotation de texte PDF à l’aide de TextFragment en Java
Voici les étapes pour faire pivoter un fragment de texte dans un document PDF à l’aide de Java.
- Tout d’abord, créez un nouveau document en utilisant la classe Document.
- Ensuite, ajoutez une page au document et obtenez sa référence à l’aide de la méthode Document.getPages().add().
- Après cela, créez un nouveau fragment de texte en utilisant la classe TextFragment.
- Définissez la position et la police du fragment de texte.
- Définissez l’angle de rotation à l’aide de la méthode TextFragment.getTextState().setRotation().
- Créez un nouvel objet TextBuilder et initialisez-le avec l’objet Page.
- Utilisez la méthode TextBuilder.appendText(TextFragment) pour ajouter du texte à la page.
- Enfin, enregistrez le document PDF en utilisant la méthode Document.save(string).
L’exemple de code suivant montre comment faire pivoter du texte dans un document PDF en Java.
// Initialiser l'objet document
Document pdfDocument = new Document();
// Obtenir une page particulière
Page pdfPage = pdfDocument.getPages().add();
// Créer un fragment de texte
TextFragment textFragment1 = new TextFragment("main text");
textFragment1.setPosition(new Position(100, 600));
// Définir les propriétés du texte
textFragment1.getTextState().setFontSize(12);
textFragment1.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));
// Créer un fragment de texte pivoté
TextFragment textFragment2 = new TextFragment("rotated text");
textFragment2.setPosition(new Position(200, 600));
// Définir les propriétés du texte
textFragment2.getTextState().setFontSize(12);
textFragment2.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));
textFragment2.getTextState().setRotation(45);
// Créer un fragment de texte pivoté
TextFragment textFragment3 = new TextFragment("rotated text");
textFragment3.setPosition(new Position(300, 600));
// Définir les propriétés du texte
textFragment3.getTextState().setFontSize(12);
textFragment3.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));
textFragment3.getTextState().setRotation(90);
// Créer un objet TextBuilder
TextBuilder textBuilder = new TextBuilder(pdfPage);
// Ajouter le fragment de texte à la page PDF
textBuilder.appendText(textFragment1);
textBuilder.appendText(textFragment2);
textBuilder.appendText(textFragment3);
// Enregistrer le document
pdfDocument.save("Rotate_Text_TextFragment.pdf");
Production
![Rotation de texte PDF à l'aide de TextFragment en Java](images/PDF-Text-Rotation_TextFragment.png#center)
Rotation de texte PDF à l’aide de TextParagraph en Java
Vous pouvez également appliquer une rotation au texte lors de la création d’un nouveau paragraphe. Ceci peut être réalisé en utilisant la classe TextParagraph. Voici les étapes pour appliquer la rotation du texte à l’aide de la classe TextParagraph.
- Tout d’abord, créez un nouveau document en utilisant la classe Document.
- Ensuite, ajoutez une page au document et obtenez sa référence à l’aide de la méthode Document.getPages().add().
- Après cela, créez un nouvel objet TextParagraph.
- Créez un nouveau fragment de texte à l’aide de la classe TextFragment et définissez le texte et la police.
- Définissez l’angle de rotation à l’aide de la méthode TextFragment.getTextState().setRotation().
- Ajoutez du texte au paragraphe à l’aide de la méthode TextParagraph.appendLine(TextFragment).
- Créez un nouvel objet TextBuilder et initialisez-le avec l’objet Page.
- Utilisez la méthode TextBuilder.appendParagraph(TextParagraph) pour ajouter un paragraphe à la page.
- Enfin, enregistrez le document PDF en utilisant la méthode Document.save(string).
L’exemple de code suivant montre comment faire pivoter du texte à l’intérieur d’un paragraphe dans un PDF par programmation.
// Initialiser l'objet document
Document pdfDocument = new Document();
// Obtenir une page particulière
Page pdfPage = (Page) pdfDocument.getPages().add();
// Créer un paragraphe de texte
TextParagraph paragraph = new TextParagraph();
paragraph.setPosition(new Position(200, 600));
// Créer un fragment de texte
TextFragment textFragment1 = new TextFragment("rotated text");
// Définir les propriétés du texte
textFragment1.getTextState().setFontSize(12);
textFragment1.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));
// Définir la rotation
textFragment1.getTextState().setRotation(45);
// Créer un fragment de texte
TextFragment textFragment2 = new TextFragment("main text");
// Définir les propriétés du texte
textFragment2.getTextState().setFontSize(12);
textFragment2.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));
// Créer un fragment de texte
TextFragment textFragment3 = new TextFragment("another rotated text");
// Définir les propriétés du texte
textFragment3.getTextState().setFontSize(12);
textFragment3.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));
// Définir la rotation
textFragment3.getTextState().setRotation(-45);
// Ajouter les fragments de texte au paragraphe
paragraph.appendLine(textFragment1);
paragraph.appendLine(textFragment2);
paragraph.appendLine(textFragment3);
// Créer un objet TextBuilder
TextBuilder textBuilder = new TextBuilder(pdfPage);
// Ajouter le paragraphe de texte à la page PDF
textBuilder.appendParagraph(paragraph);
// Enregistrer le document
pdfDocument.save("Rotate_Text_TextParagraph.pdf");
Production
![Rotation de texte PDF à l'aide de TextParagraph en Java](images/PDF-Text-Rotation_TextParagraph.png#center)
Obtenez une licence API gratuite
Vous pouvez essayer gratuitement Aspose.PDF for Java en obtenant une licence temporaire.
Conclusion
Dans cet article, vous avez appris à faire pivoter du texte dans un PDF par programmation à l’aide de Java. Nous avons expliqué comment faire pivoter du texte à l’aide des classes TextFragment et TextParagraph. De plus, vous pouvez en savoir plus sur Aspose.PDF for Java en utilisant la documentation. Si vous avez des questions ou des questions, vous pouvez nous contacter via notre forum.