IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[FPDF] tFPDF ou FPDF et UTF-8


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2006
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2006
    Messages : 120
    Par défaut [FPDF] tFPDF ou FPDF et UTF-8
    Bonjour,

    J'ai du convertir tous mon site en UTF-8 (traduction polonaise prévu pour bientôt).
    Avant, certains fichiers étaient en ISO-8859-1, d'autres en UTF-8 et pour la base de données, c'était pareil : certaines tables en UTF-8, d'autres en latin1.
    Mais ça c'était avant...

    Via un script, j'ai passé tous mes fichiers en UTF-8. De même, pour ma base de données.

    Dans plusieurs page php, j'utilise des fonctions relatives au chaîne de caractère comme strtoupper,... et ces fonctions ne prennent pas en charge l'UTF-8.
    Dans mon php.ini, j'ai donc activé les deux directives suivantes qui évite le remplacement par leurs équivalent mb_ (il y en a trop) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    mbstring.internal_encoding = UTF-8
    mbstring.func_overload = 7
    Le problème que j'ai aujourd'hui, c'est que le site génère des PDF grâce à la librairie FPDF.
    Or, je n'arrive pas à faire fonctionner FPDF ou tFPDF sans désactiver les deux directives dans mon php.ini.

    Je vous donne les cas des figure que j'ai testé :

    Pour tFPDF avec mbstring.func_overload activé et mbstring.internal_encoding activé ou non, j'ai l'erreur suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FPDF error : mbstring overloading must be disabled.
    Pour FPDF avec mbstring.func_overload activé et mbstring.internal_encoding desactivé, ça fonctionne mais les caractères accentués ressemble à ¨A et les strtoupper de mon site ne fonctionne pas si j'ai des caractères accentués.

    Pour FPDF avec mbstring.func_overload activé et mbstring.internal_encoding activé (ce que je voudrais dans l'idéal), le fichier PDF est illisible : fichier corrompu, et aucune erreur qui puisse m'éclairer.

    J'ai également essayé de desactiver les directives avec un ini_set avant de générer mon PDF, mais ça ne fonctionne pas non plus.

    Quelqu'un aurait-il une idée ?

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    que ""mbstring.func_overload" dans ton php.ini ?

    pour FPDF, il ne gère pas UTF8 dont tu peux arrêter.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre confirmé
    Femme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2006
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2006
    Messages : 120
    Par défaut
    J'ai abandonné tFPDF car complètement incompatible avec func_overload et j'ai besoin de cette fonction.

    J'ai fait un autre test avec FPDF, func_overload activé et mbstring.internal_encoding desactivé grâce à ini_set en début de script.

    Du coup, tout ce que j'envoi dans mon FPDF, je fais un utf8_decode() dessus. Et ça fonctionne.
    Sauf que pour le cyrillique, je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    iconv('UTF-8', 'CP1251',$string);
    Et ça ne fonctionne pas, contrairement à utf8_decode qui fonctionne (pour le français avec nos caractères accentués).
    Mes caractères cyrilique sont remplacés par des points d'interrogation.

  4. #4
    Membre confirmé
    Femme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2006
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2006
    Messages : 120
    Par défaut
    [EDIT]

    En fait, iconv fonctionne mais j'obtiens ceci dans mon PDF :
    Je suis proche du but, mais ce n'est pas encore ça...

Discussions similaires

  1. [FPDF] Chevauchement de lignes après passage ISO vers UTF-8
    Par boteha dans le forum Bibliothèques et frameworks
    Réponses: 15
    Dernier message: 14/09/2018, 21h53
  2. [FPDF] Encodage UTF-8
    Par navis84 dans le forum Bibliothèques et frameworks
    Réponses: 17
    Dernier message: 08/09/2018, 12h43
  3. [FPDF] instabilité sur tfpdf
    Par kitana dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 17/09/2010, 11h22
  4. [FPDF] Rechercher dans des pdf
    Par snike dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 09/09/2005, 09h58
  5. [FPDF] Cellule sans bordure en haut et en bas
    Par nebule dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 16/12/2004, 16h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo