1

Et évidemment j'ai dû me planter quelque part wink

Les fichiers ont pourtant été générés (.c et .php), et j'ai rajouté la dernière ligne :

$content = ob_get_clean();
require_once(dirname(__FILE__).'/../html2pdf.class.php');
$pdf = new HTML2PDF('P','A4', 'fr');
$pdf->pdf->AddFont('trebuchet');

qui ne me donne que :

FPDF error: Undefined font: trebuchet


Pour info, avec : $pdf->AddFont('trebuchet');
cela donne : Fatal error: Call to undefined method HTML2PDF::AddFont() in /var/www/web1/web/pdf/exemples/apercu_pdf.php on line 72

J'ai tenté plusieurs changements, mais aucun n'a porté ses fruits, là je sèche :'(
Ca peut venir d'où ?

2

misterphil (./1) :
Pour info, avec : $pdf->AddFont('trebuchet'); cela donne : Fatal error: Call to undefined method HTML2PDF::AddFont() in /var/www/web1/web/pdf/exemples/apercu_pdf.php on line 72


ca c'est normal, ton objet principal est de type HTML2PDF, pour accéder à l'objet fpdf, il faut bien utiliser la propriété pdf.

d'ailleurs, pour plus de clareté, je te conseille d'appeler ton objet pdf $html2pdf. Il faut donc faire l'instruction suivante :

$html2pdf->pdf->AddFont(....)

après, comme il est marqué dans la faq de fpdf : http://fpdf.org/fr/tutorial/tuto7.htm

$html2pdf->pdf->AddFont('Comic','','comic.php');

le seul truc, c'est que ton fichier de font .php doit être dans le répertoire ./_fpdf/font/

par contre, ton problème, c'est lié au chargement de la fonte ? ou à son utilisation ? si c'est son utilisation, je pense savoir pourquoi...
Ancien pseudo : lolo

3

Tu veux dire ainsi ?

$content = ob_get_clean();
require_once(dirname(__FILE__).'/../html2pdf.class.php');
$html2pdf = new HTML2PDF('P','A4', 'fr');
$html2pdf->pdf->AddFont('Trebuchet', '', 'trebuchet.php');
$html2pdf->setTestTdInOnePage(false);
$html2pdf->WriteHTML($content);

Mais j'obtiens :
FPDF error: Undefined font: trebuchet


4

J'ai maté le fichier PHP généré, le name était TrebuchetMS alors je l'ai mis à la place de Trebuchet, mais cela me donne :
FPDF error: Undefined font: trebuchetms

Je ne pense pas que ce soit un souci qu'il me le mette en minuscules ? Les fichiers .z et .php sont bien dans le dossier des fonts.

5

je crois savoir d'ou ca vient...

ta fonte trebuchet, tu l'ustilises dans un table ?

si oui, est-ce que tu pourrais la tester en ne l'utilisant que dans un span ? un code html simple comme le suivant suffira :

<span style="font-family: trebuchet">Test de fonte</span><br>
<span>Test de fonte</span><br>
Ancien pseudo : lolo

6

Alors j'ai testé ton code, car dans le PDF, il y a notamment des tableaux HTML, effectivement, et ca fonctionne...

tromb Fichier joint : 7KVH (test-trebuchet.jpg)

7

j'en étais sur sad ca vient du fait que la lib crée des sous PDF pour chaque case des tableaux, et que j'ai oublié de passer les fontes chargées à ces sous objets...

ca sera corrigé dans la prochaine version !
Ancien pseudo : lolo

8

C'est pas banal comme bug... bon ok pour la prochaine session. Tu penses que tu en feras une d'ici le 15 décembre ?

9

je vais voir, vu que c'est un bug pénalisant et pas une amélioration, et qu'un autre bug (ici : topics/117183-php5-v315-erreur-2-phrase-de-1000-lignes-trop-long vient de m'être signalé, je pense que je vais essayer de sortir une nouvelle version rapidement, pour stabiliser tout ca
Ancien pseudo : lolo

10

Ca c'est du dévouement ! Merci pour tes efforts, Spipu ;-)
__________________
Ralph Sicabol

11

Bonjour,

déjà bravo pour ce convertisseur !!

Je suis dans le même cas que Sicabol !
J'ai effectué les même tests et j'ai la dernière version de HTML2DF.
Quelles modifications dis-je faire??

Merci d'avance
Que c bien le web, quand l'info est bonne

12

en premier, il faut toujours essayer de charger et d'utiliser la nouvelle font directement avec FPDF.

tant que la fonte ne marche pas avec FPDF, ca ne pourra pas marcher avec html2pdf

http://fpdf.org/en/tutorial/tuto7.htm
Ancien pseudo : lolo

13

J'ai effectué le petit test de font en mettant un texte simple en html avec font-family: helvetica.
Et ça fonctionne!
Mais quand je l'utilise sur mes données,
J'ai le message d'erreur "FPDF error: Undefined font: ";
Sachant que dans mes données , j'ai des tableaux.
je pense avoir le même problème.
Que c bien le web, quand l'info est bonne

14

ta fonte utilisée c'est helvetica également ?

tu as fait un test simple avec juste un tableau d'une seule case ?

Ancien pseudo : lolo

15

J'ai effectué plusieurs tests!
Et ça fonctionne sauf pour mes données quand elles sont générées en php et mysql.
Si je copie le code des données en html, ça passe!!!

Je continue de fouiner !!
Si t'as eu une idée d'ou ça peut venir ?

Merci encore !!
Que c bien le web, quand l'info est bonne

16

tu veux dire qu'utiliser directement le code HTML apres génération ne marche pas, mais utiliser le code HTML dans un autre script qui ne fait rien d'autre marche ?
Ancien pseudo : lolo

17

Oui!
On dirait que c'est ça!
je tiens au courant !
Que c bien le web, quand l'info est bonne

18

C'est bien ça!
J'ai généré un fichier qui contient le code html (dans un répétoire) ensuite je l'ai inséré pour créer mon pdf !!!!

Je ne sais pas d'où vient le problème mais en tout cas ça marche!

Peut-être que le serveur y est pour quelque chose!

Mon site est hébergé chez ovh.

Que c bien le web, quand l'info est bonne

19

normalement il ne devait pas y avoir de différence.

dans quand ca marche, à part le fait que tu a préparé ton code HTML à part, tu utilises quand même le moteur de ton site ? ou tu génères ton PDF complètement en dehors de l'environnement du site ?
Ancien pseudo : lolo

20

J'utilise le moteur de mon site !!

Que c bien le web, quand l'info est bonne

21

alors là c'est encore plus zarb !
et comme message d'erreur, il te dit ca : "FPDF error: Undefined font: " ? sans préciser la fonte qu'il manque ?
Ancien pseudo : lolo

22

Il me donne le message d'erreur en précisant la font qu'elle existe ou pas.
Que c bien le web, quand l'info est bonne

23

tu as bien copié les fichiers de fonte dans le répertoire de fonte de fpdf (le fichier php et le fichier z)

pour info, je viens de mettre à disposition un script pour faciliter la création d'une nouvelle fonte : topics/119805-explication-creer-et-ajouter-une-fonte-dans-html2pdf
Ancien pseudo : lolo