1

Bonjour,
Veuillez touver en pièce jointe un patch (sur 4.03) qui introduit les changements suivants:
- Dégroupage de tcpdf.
- Utilisation de tcpdf 6.0.17.
- Dégroupage des exemples.
- Liens aux bookmarks dans CreateIndex().
- Possibilité de créer plusieurs PDF en même temps ("réentrance").

Les principaux problèmes rencontrés pour utiliser tcpdf 6.0.17 sont:
- clonage de la classe.
- <hr> met à zero la taille de police dans tcpdf.
- Suppression du lien automatique vers le site de tcpdf.

Merci pour cette classe.
tromb Fichier joint : php-html2pdf-4.03-system_tcpdf.patch

2

Bonsoir,

J'ai trouvé une version tcpdf_6_0_017, mais j'ai des erreurs après application du patch.

Je testerais encore demain soir.

Bonne journée.
html2pdf 4.03

3

@guppy,
Bonjour,
Le patch dégroupe tcpdf, c-a-d que le dossier de ce dernier (tcpdf) doit être accessible via l'include_path.
En l'absence de + d'info, je présume que ton problème vient de là.
Je tourne avec ce patch et tcpdf 6.0.42 sans problèmes depuis plusieurs mois. (Fedora 18 x86_64).

4

Bonjour,

J'ai réussi à éviter l'erreur qui venait du fichiers tcpdf_colors.php, mais je ne suis pas sûr que mon patching est complet (je ne suis pas programmeur, mais agronome :P )
J'ai utilisé Netbeans pour appliquer le patch (Menu "Tools, Apply Diff Patch).

J'espérais gagner en rapidité, mais apparemment rien de ce côté là.
Par contre je remarque que quand je génère des fichiers en russe ou tchèque la nouvelle version produit un résultat nettement plus léger:
Exemple pour le russe:
5.0.002 = 1,26 Mb
6.0.017 = 328 kb
html2pdf 4.03

5

Rapidité : C'est même très mauvais pour la version 6.0.017 dans la page que je génère.
Extrait du debug jusqu'au premier tableau "gourmand". 6,5 secondes contre moins d'une seconde...

Nouvelle version
Step                                  time       delta         memory           peak
Init debug                          0.0 ms      0.0 ms    13 352.0 Ko    13 419.9 Ko
  DIV Begin                        62.4 ms     62.4 ms    13 664.1 Ko    14 115.0 Ko
  DIV End                          78.0 ms     15.6 ms    13 713.2 Ko    14 115.0 Ko
  DIV Begin                        78.0 ms      0.0 ms    13 712.6 Ko    14 115.0 Ko
  DIV End                         109.2 ms     31.2 ms    13 730.5 Ko    14 121.6 Ko
  DIV Begin                       109.2 ms      0.0 ms    13 730.0 Ko    14 121.6 Ko
  DIV End                         124.8 ms     15.6 ms    13 730.8 Ko    14 141.4 Ko
  DIV Begin                       124.8 ms      0.0 ms    13 730.2 Ko    14 141.4 Ko
  DIV End                         140.4 ms     15.6 ms    13 731.0 Ko    14 141.8 Ko
  DIV Begin                       140.4 ms      0.0 ms    13 730.4 Ko    14 141.8 Ko
  DIV End                         639.6 ms    499.2 ms    13 736.1 Ko    14 184.8 Ko
  DIV Begin                       639.6 ms      0.0 ms    13 735.5 Ko    14 184.8 Ko
  DIV End                         670.8 ms     31.2 ms    13 736.3 Ko    14 184.8 Ko
  DIV Begin                       670.8 ms      0.0 ms    13 735.7 Ko    14 184.8 Ko
  DIV End                         717.6 ms     46.8 ms    13 736.6 Ko    14 184.8 Ko
  DIV Begin                       717.6 ms      0.0 ms    13 736.0 Ko    14 184.8 Ko
  DIV End                         733.2 ms     15.6 ms    13 775.6 Ko    14 223.1 Ko
  DIV Begin                       733.2 ms      0.0 ms    13 775.0 Ko    14 223.1 Ko
  DIV End                         764.4 ms     31.2 ms    14 029.6 Ko    14 235.0 Ko
  DIV Begin                       764.4 ms      0.0 ms    14 029.0 Ko    14 235.0 Ko
    Table n1 Begin                920.4 ms    156.0 ms    14 075.2 Ko    14 998.4 Ko
    Table 1 End                 6 552.0 ms  5 631.6 ms    14 092.2 Ko    14 998.4 Ko


Ancienne version
step                                  time       delta         memory           peak
Init debug                          0.0 ms      0.0 ms     3 334.2 Ko     3 341.3 Ko
  DIV Begin                        62.4 ms     62.4 ms     3 657.9 Ko     3 754.6 Ko
  DIV End                          78.0 ms     15.6 ms     3 668.5 Ko     3 816.3 Ko
  DIV Begin                        78.0 ms      0.0 ms     3 667.9 Ko     3 816.3 Ko
  DIV End                          78.0 ms      0.0 ms     3 685.4 Ko     3 831.6 Ko
  DIV Begin                        78.0 ms      0.0 ms     3 684.8 Ko     3 831.6 Ko
  DIV End                          78.0 ms      0.0 ms     3 688.5 Ko     3 856.1 Ko
  DIV Begin                        78.0 ms      0.0 ms     3 687.9 Ko     3 856.1 Ko
  DIV End                          93.6 ms     15.6 ms     3 689.4 Ko     3 856.1 Ko
  DIV Begin                        93.6 ms      0.0 ms     3 688.8 Ko     3 856.1 Ko
  DIV End                         202.8 ms    109.2 ms     3 702.4 Ko     3 883.5 Ko
  DIV Begin                       202.8 ms      0.0 ms     3 701.8 Ko     3 883.5 Ko
  DIV End                         218.4 ms     15.6 ms     3 707.3 Ko     3 883.5 Ko
  DIV Begin                       218.4 ms      0.0 ms     3 706.7 Ko     3 883.5 Ko
  DIV End                         218.4 ms      0.0 ms     3 699.9 Ko     3 886.3 Ko
  DIV Begin                       218.4 ms      0.0 ms     3 699.3 Ko     3 886.3 Ko
  DIV End                         234.0 ms     15.6 ms     3 722.5 Ko     3 886.3 Ko
  DIV Begin                       234.0 ms      0.0 ms     3 721.9 Ko     3 886.3 Ko
  DIV End                         249.6 ms     15.6 ms     3 975.4 Ko     4 128.9 Ko
  DIV Begin                       249.6 ms      0.0 ms     3 974.8 Ko     4 128.9 Ko
    Table n1 Begin                312.0 ms     62.4 ms     4 020.7 Ko     4 212.8 Ko
    Table 1 End                   686.4 ms    374.4 ms     4 091.0 Ko     4 344.6 Ko
html2pdf 4.03

6

J'ai trouvé l'origine du ralentissement avec la version 6.0.017 de TCPDF. Ca vient quand je répète plusieurs fois la même image PNG (pourtant que 1 kb...). Si j'utilise le format JPG ça ne se produit pas.
J'ai un tableau avec 4 cellules. Temps d'exécution en secondes :
16s si 4 fois la même
11s si 3 fois la même
6s si 2 fois la même
1s si 1 fois la même (= 4 images différentes)
C'est assez étrange !

J'ai trouvé une autre personne faisant le même constat:
http://www.webhostingtalk.com/showthread.php?t=1266035
html2pdf 4.03

7

Il y a de fortes chances que ça vienne de tcpdf lui-même: il y avait un bug sur la répetition d'une image png.
Voir https://bugzilla.redhat.com/show_bug.cgi?id=1035392.
Ce bug est corrigé dans la 6.0.049. J'ai essayé, ça fonctionne, mais je n'ai pas fait de tests de performances.