Dans cet article nous allons voir comment aligner un texte à droite avec PdfBox.
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 à:

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!
Etude de la performance de l'utilisation de la nouvelle API JAVA 8 Stream pour le traitement de string (chaîne de caractère)
Les audits de code source font partie de notre expertise. À force de relire des codes, nous voyons des erreurs qui reviennent invariablement, impactant la performance, la sécurité et la qualité des applications. Voici les 5 principales !
Vous vous êtes peut être déjà retrouvé confronté à des attaques de spam venant de certains pays en particulier sur vos serveurs web.