ANS-0819 · IMPRESSION, PDF ET MODèLES D’E-MAILS

Comment aligner à gauche un texte sur plusieurs lignes dans les modèles PDF avancés de NetSuite

Alignez correctement le texte sur plusieurs lignes dans les cellules des modèles PDF/HTML avancés en appliquant l'alignement du texte directement à l'élément « paragraphe » du contenu.

Solution courte

Pour aligner à gauche un texte sur plusieurs lignes dans une cellule PDF avancée de NetSuite, intégrez la valeur du champ dans une balise <p> et appliquez le style text-align: left; à ce paragraphe. Cela garantit une mise en forme correcte même lorsque les lignes dépassent la largeur de la cellule, ce qui évite les problèmes d'alignement souvent observés lorsque l'on applique directement l'alignement à l'élément <td>.

Scénario

Les utilisateurs rencontrent souvent des difficultés lorsqu’ils tentent d’aligner à gauche du texte sur plusieurs lignes dans les cellules des modèles PDF/HTML avancés de NetSuite. Lorsque certaines lignes de texte dépassent la largeur définie de la cellule, l’application directe de styles d’alignement à la cellule du tableau () peut ne pas produire le résultat souhaité d’alignement à gauche, ce qui entraîne un formatage incohérent.

Solution

Pour aligner correctement à gauche un texte sur plusieurs lignes dans une cellule d’un modèle NetSuite Advanced PDF/HTML, le style d’alignement doit être appliqué à un élément de paragraphe (

) qui englobe la valeur du champ, plutôt qu’directement à la cellule du tableau (). Cette méthode garantit que le texte s’ajuste et s’aligne correctement, même lorsque certaines lignes dépassent la largeur de la cellule. Prenons l’exemple suivant, extrait du code d’origine, où les champs record.billaddress et record.shipaddress sont placés directement à l’intérieur d’éléments :

<body header="nlheader" header-height="10%" footer="nlfooter" footer-height="20pt" padding="0.5in 0.5in 0.5in 0.5in" size="Letter">
    <table align="left" style="margin-top:10px;width:100%;"><tr>
<td colspan="3" style="font-size: 8pt; padding: 6px 0 2px; font-weight: bold; color: #333333">${record.billaddress@label}</td>
<td colspan="3" style="font-size: 8pt; padding: 6px 0 2px; font-weight: bold; color: #333333">${record.shipaddress@label}</td>
<td colspan="5" style="font-size: 12pt; background-color: #e3e3e3; font-weight: bold;">${record.total@label?upper_case}</td>
</tr>
<tr>
<td colspan="3" style="padding: 0">${record.billaddress}</td>
<td colspan="3" style="padding: 0">${record.shipaddress}</td>
<td align="right" colspan="5" style="font-size: 28pt; padding-top: 20px; background-color: #e3e3e3;">${record.total}</td>
</tr></table>

Pour obtenir un alignement à gauche correct des adresses sur plusieurs lignes, modifiez le code en plaçant les champs record.billaddress et record.shipaddress entre des balises

, comme indiqué dans le code mis à jour ci-dessous :

<body header="nlheader" header-height="10%" footer="nlfooter" footer-height="20pt" padding="0.5in 0.5in 0.5in 0.5in" size="Letter">
    <table align="left" style="margin-top:10px;width:100%;"><tr>
<td colspan="3" style="font-size: 8pt; padding: 6px 0 2px; font-weight: bold; color: #333333">${record.billaddress@label}</td>
<td colspan="3" style="font-size: 8pt; padding: 6px 0 2px; font-weight: bold; color: #333333">${record.shipaddress@label}</td>
<td colspan="5" style="font-size: 12pt; background-color: #e3e3e3; font-weight: bold;">${record.total@label?upper_case}</td>
</tr>
<tr>
<td colspan="3" style="padding: 0">*<p style="text-align: left;">*${record.billaddress}*</p>*</td>
<td colspan="3" style="padding: 0">*<p style="text-align: left;">*${record.shipaddress}*</p>*</td>
<td align="right" colspan="5" style="font-size: 28pt; padding-top: 20px; background-color: #e3e3e3;">${record.total}</td>
</tr></table>

Support expert NetSuite

Besoin d’aide pour cet enjeu NetSuite ?

Accompagnement-conseil et configuration pour Impression, PDF et modèles d’e-mails

Parler à un consultant