Dans cet article


Offres d'emploi

Tags

PDFBox – Aligner un texte à droite en JAVA

Dans cet article nous allons voir comment aligner un texte à droite avec PdfBox.

Pour rappel, PdfBox est une librairie OpenSource JAVA disponible à l’adresse suivante, supportée par Apache. Actuellement en version 1.8.6, cette librairie permet de créer facilement des PDF en JAVA.

L’objectif de cet article est d’arriver à:

Alignement texte à droite avec PdfBox

Malheureusement le positionnement de texte avec PdfBox n’est pas forcement facile. En effet, il est souvent question de positionnement absolu, ce qui implique de calculer des tailles fixes pour chaque élément que l’on souhaite positionner.

Un cas classique est l’alignement du texte. Dans cet exemple, nous utilisons PdfBox pour générer une facture avec des montants. Généralement on affiche les montants alignés à droite avec deux chiffres après la virgule. Pour afficher les deux chiffres après la virgule, le plus simple est d’utiliser NumberFormat.

NumberFormat formatter  = new DecimalFormat("##,##0.00 EUR");
String lText = formatter.format(lDevis.getOptionsTotal());

Une fois converti en String, il faut maintenant calculer la taille de la chaîne de caractère en fonction de la police. Pour ce faire, on utilise une méthode sur la police avec laquelle on va écrire le texte

PDFont mDefaultFont = PDType1Font.HELVETICA;
float textWidth = (mDefaultFont.getStringWidth(lText) / 1000) * mFontSize;

En utilisant la font, on peut calculer la taille en pt qu’il faut diviser par 1000 puis multiplier par la taille de la police, ici 10 pt. Ainsi on obtient la taille (float) du texte.

Une fois cette étape réalisée, on peut positionner son texte correctement en calculant l’espace allouée – l’espace du texte et ainsi le mettre correctement à droite!

L'équipe AXOPEN

Voir aussi les articles suivants

AWT – Génération de graphique et BufferedImage

Le 17/06/2014 par Pierre Liseron

Dans cet article nous allons voir comment créer ses propres graphiques avec la librairie JAVA AWT. Nous utiliserons les bufferedImage pour générer des png en sortie. AWT et la création de graphique Il existe de nombreux outils et librairies pour réaliser des graphiques en JAVA.
Lire l'article

Dans cet article, nous allons comparer de la manière la plus objective possible deux langages et technologies de programmation pour la réalisation d’un site web ou d’une application web.
Lire l'article

L’utilisation des streams en mode parallèle est très simple d’utilisation. En revanche, il n’est pas forcément évident de savoir si un traitement particulier va bénéficier, ou non, d’une amélioration de performance lors du passage en parallèle.
Lire l'article