1

le :

style="max-width:50%"

ne marche pas sur un tableau par exemple.

merci

2

en effet. Tout ce qui est max-quelquechose n'est (et ne sera) pas implémenté.

Je rappelle que HTML2PDF n'est pas fait pour afficher n'importe quelle page HTML mais pour faciliter la création de fichiers PDF (comme c'est marqué dans le fichier about.pdf)

déjà qu'elle prend pas mal de ressources mémoire et CPU, si en plus elle devait vraiment agir comme un vrai navigateur, en étant intelligent sur le calcul de la largeur maximal des éléments par exemple, elle ne pourrait plus générer des PDFs en temps réel...

désolé wink
Ancien pseudo : lolo

3

Ok mais mon problème est que j'ai un tableau avec des cellules trop larges et qui dépasse dès lors de la marge droite de ma page.

Une petite astuce pour pallier à cela ?

merci

4

ben identifier ce qui fait que la celllule est trop large, et modifier en conséquence... ou adapter la largeur des colonnes...
Ancien pseudo : lolo

5

Si c'est trop large sans le style="max-width:50%", c'est donc que tu veux exactement 50% comme largeur (parce que c'est bien ça la largeur que ça va donner si la largeur calculée dépasse 50%), alors autant mettre un bon vieux tag width="50%", n'est-ce pas?
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

6

En fait je veux faire tenir un tableau avec un nombre de colonnes variables sur une largeur de page.

J'ai essayé avec "width=100%" mais sans succès non plus.

J'ai essayé de définir les largeurs de chaque colonne mais le problème est que j'ai 8 tableaux de 4 colonnes bien remplies et que le pdf met trop longtemps pour se charger et le délai d'expiration du chargement de ma page est dépassé (30s).

Pendant que j'y suis, lorsque je génére ce même pdf sans définir les colonnes ça prend entre 10 et 12 secondes.

Pour résumé 2 problèmes :

- je ne peux pas définir la largeur de toutes les cellules
- le temps de génération est très très long dans ce cas là

merci

7

il faudrait que tu essayes de prédéterminer la largeur des colonnes en fonction du nombre de colones, et de faire les tests avec un seul tableau dans un premier temps.

ensuite tu généralise aux 7 autres, et tu appeles writeHTML pour chaque sous ensemble
Ancien pseudo : lolo

8

Soit.

Voilà un exemple simple qui illustre bien mon problème je pense :

<table style="width:100%" >
<tr>
<td style="width:50%">
texte trèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèès long
</td>
<td style="width:50%">
ma deuxième cellule qu'on ne verra pas sur le pdf
</td>
</tr>
</table>


Si vous testez vous verrez que, dans la première cellule, le texte trop long ne revient pas à la ligne et que la cellule est, par conséquent , trop large.



9

ca, c'est "normal", ca dépassera aussi en html dans ton navigateur... la preuve ? réduit la largeur de ta fenettre, tu vera que le texte n'est pas coupé et depasse à droite de l'écran...

comme je l'ai dis souvent dans ce forum, HTML2PDF ne sait pas adapter la largeur de toutes les colonnes à cause d'une colonne qui se voit agrandit à cause d'un contenu trop large. Le contenu d'un TD doit tjrs pouvoir rentrer dans la largeur de celui-ci car sinon la mise en page sera mauvaise.
Ancien pseudo : lolo

10

En effet en html sort de la fenêtre si on zoom ...

Ca m'embête vraiment étant donné que je ne peux pas contrôler la largeur du contenu de mes cellules ...

Même avec un max-width en html ça dépasse ....

Je suis consterné, l'html serait mal fait ?

11

non, c'est normal...

il faut pré-découper le contenu quand les mots sont trop long...
Ancien pseudo : lolo

12

(ou un coup de overflow:hidden si on privilégie la mise en page au contenu)

13

(sauf que overflow: hidden ne marche pas avec html2pdf sad)
Ancien pseudo : lolo

14

(OK dsl je ne savais pas sad)

15

Est ce que ce serait compliqué de faire fonctionner overflow:hidden avec html2pdf ?

merci

16

ben franchement oui...

pour tes mots trop long, c'est simple, tu les coupes via une expression régulière avec un preg_match_callback
Ancien pseudo : lolo

17

Ce ne sont pas les mots qui sont trop longs mais plutôt les suites de mots.
Mais je ne vois pas trop le rapport avec la fonction "preg_match_callback" (qui n'existe pas soit dit en passant, il y a la fonction preg_replace_callback et la fonction preg_match ).

Ces fonctions permettent de remplacer des éléments dans des chaines de caractères par des autres éléments.

Et comment les afficher dans ma cellule une fois coupés ?

Un petit exemple ? Je pense que ça pourrait vraiment m'éclairer.

Merci beaucoup

18

heu, normalement les suites de mot ne devraient pas poser problème, html2pdf gère le retour à la ligne automatiquement (si la largeur de l'élément contenant est précisée) tu appelles quoi par "suite de mots" ? une phrase classique ? ou autre chose ?

(lol vi pardon, je voulais dire preg_replace_callback, pardon )
Ancien pseudo : lolo