Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > PDF > FPDF
FPDF Forum d'entraide pour la bibliothèque FPDF permettant de générer des documents PDF en PHP. Avant de poster -> tutoriels FPDF
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/02/2011, 20h24   #1
Nouveau Membre du Club
 
Inscription : mars 2003
Messages : 75
Détails du profil
Informations forums :
Inscription : mars 2003
Messages : 75
Points : 36
Points : 36
Par défaut FPDF et problème d'accent/euro dans un makefont

Bonjour a tous,

Je vous imagine déjà en train de vous dire "ENCORE UN QUI NE RECHERCHE PAS DANS LE FORUM..." Et vous avez tord Je m'explique

J'utilise FPDF pour générer des pdfs afin de transmettre des fichiers CMJN pour faire de l'impression professionnelle.

Après maint test, j'ai un souci avec les accents dans une police que je génère moi même, l'historique "LUCIDA CONSOLE".

Je génère correctement ma police avec le MAKEFONT fourni de FPDF. Voici la ligne de commande utilisée :

Code :
MakeFont('lucon.ttf','lucon.afm','ISO-8859-15');
J'utilise le charsert ISO-8859-15 pour être certain d'avoir l'euro, accent etc.

Pour récupérer le texte de ma base de donnée, je fais :

Code :
$variable=utf8_decode($out['champ']);
et là, vous vous dites :
Citation:
ha, il a peut être recherché en fait !
1er problème, le signe euro ne s'affiche pas. Pour forcer l'affichage, je fais la manip suivant (donc oui, je l'affiche, mais je trouve cela bizarre) :

Code :
1
2
3
J'ouvre le fichier généré par makefont lucon.php
je change le texte chr(164)=>603 par 'Euro'=>603
Je met en commentaire la ligne :$diff='128 /.notdef 130 /.notdef /... 164 /Euro 166 /Scaron ... /Ydieresis';
L'euro s'affiche après seulement si mon fichier PHP est en ANSI, si je le met en UTF8, l'euro devient un carré. Les accents qu'en à eux, ne s'affiche qu'en UTF8 et disparaissent en ANSI !

Maintenant, mon problème se situe aussi sur les majuscules. Je converti donc en faisant :

Code :
$pdf->Cell(28,15, mb_convert_case($variable, MB_CASE_UPPER, "UTF-8"), 0, 0, 'C');
Les accents majuscule disparaissent, même si mon fichier est en UTF8/ANSI...

Je ne comprend plus et surtout, je ne sais même plus ou cherché !!

Pouvez-vous me conseiller svp.

Merci.
Arrown est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/02/2011, 20h56   #2
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Travaille intégralement en ISO plutot que de faire des conversions.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/02/2011, 21h18   #3
Nouveau Membre du Club
 
Inscription : mars 2003
Messages : 75
Détails du profil
Informations forums :
Inscription : mars 2003
Messages : 75
Points : 36
Points : 36
Bonsoir à toi,
Je ne vois pas ou je peux spécifier de l'iso ailleur que sur la création de police en fait.

Peux tu développer stp.
Arrown est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h54.


 
 
 
 
Partenaires

Hébergement Web