J’ai un problème avec la description des produits sur la génération de document (propal, facture, etc…)
En effet, lorsqu’on utilise des puces, un padding ou margin important se rajoute entre le titre du produit et sa description.
Voici un exemple :
J’utilise le modèle azur que j’ai un peu modifier mais pas sur la partie description.
J’ai essayé de rajouter ces lignes CSS dans contents.css du dossier /includes/ckeditor/ckeditor/ :
Mais je pense que c’est à la génération du document, et non à l’affichage sur le produit.
Sur la fonction pdf_writelinedesc qui doit faire partie de pdflib.php.
Il faut remonter plus loin… La fonction pdf_writelinedesc utilise writeHTMLCell de la librairie TCPDF.
Je ne connais pas trop cette librairie mais peut être qu’il y a moyen de configurer la manière dont s’affiche les différents éléments…
EDIT : Ha ! J’ai mal lu le post d’origine ! Je croyais que le soucis était la marge à gauche des puces. Je viens de me rendre compte que c’est entre le titre et la description. Ceci dit, ça peut aussi se trouver au niveau de TCPDF qui ajoute une marge au-dessus d’une liste à puce (du coup tu as une marge classique entre le titre et la description + une marge pour la liste à puce.
Effectivement le problème vient de la librairie TCPDF.
Mon module corrige cela (InfraSPackPlus).
Sinon il faut modifier le modèle PDF et avant la ligne $pdf->Open(); il faut ajouter :
Il y en a un peu moins mais encore trop entre le titre et la description.
C’est peut être la posy de la description qui laisse un espace avant le titre.
En tous cas un grand merci pour votre retour si rapide les gars.
C’est cool d’avoir une entraide communautaire de ce genre.
Quoi que non, puisque lorsqu’il n’y a pas de puces, la description est bien juste en dessous du titre.
C’est donc bien que avec la génération du PDF avec les puces.
Sur la description du produit, si j’essaie d’appliquer un style CSS, celui-ci disparait.
Et quand je modifie le fichier contents.css, ce n’est pas pris en compte, comme si il y avait un cache interne à Dolibarr.
Je ne pense pas que le CSS soit pris en compte au moment de générer le PDF. Je n’ai pas vérifié mais je pense que TCPDF va générer un document PDF en fonction des balises HTML sans tenir compte du CSS.
Sur les listes à puce, tu as 2 balises : ul pour débuter la liste à puces et li pour chaque puce. Le code donné par Sylvain paramètre 1 espace de valeur 0.0001 sur la balise ouvrante ul. Peut-être faudrait-il rajouter la même chose pour la balise li ?
Et si tu regardes le HTML de ton document avant d’en faire un PDF, tu n’as pas une autre balise HTML qui s’intercale avant le UL ? Un SPAN par exemple ? Ou autre chose ?
Si, en fait l’espace se place si la description est en HTML.
J’ai mis la description du produit du dessous en l’englobant dans une balise P et là un espace se rajoute (que je n’ai pas sans les balises HTML).
Je cherchais dans la fonction pdf_writelinedesc sans avoir vu qu’elle faisait appel à la fonction pdf_getlinedesc
Voici le résultat :
Bon alors je pense qu’il est nécessaire de rajouter un espace entre le titre et la description mais l’espace doit être divisé par deux par rapport ce qu’il était.
Je vais donc voir pour en rajouter un léger.
Le __N__ est un saut de ligne mais ensuite tu peux peut-être adapté un truc. Par exemple en ajoutant une balise puis en fixant la taille de l’espace de cette balise avec setHtmlVSpace par exemple
Yes, bien joué/trouvé
Je m’y attaque immédiatement
D’ailleurs il serai mieux je pense de réduire la taille de la description afin qu’elle prenne moins de place et soit moins visible par rapport au titre (priorité).