2010-08-21 5 views
1

J'utilise FPDF pour créer un PDF et tFPDF pour autoriser les caractères Unicode, tels que le chinois, le japonais ou le coréen. J'utilise l'ex.php qui était dans les fichiers d'exemple tFPDF.Pourquoi les caractères Unicode asiatiques n'apparaissent pas sur PDF en utilisant FPDF en PHP?

J'ai ajouté des caractères japonais et chinois au fichier Hello World.txt, mais ces caractères ne s'affichent pas, même dans la police DejaVu par défaut incluse.

Que dois-je faire pour afficher d'autres caractères comme le japonais, le chinois ou le coréen?

+0

Est-ce que le PDF a cette police intégrée? Pouvez-vous vérifier cela (via les propriétés du document)? Aussi, vérifiez si c'est essayer de remplacer les polices ou non (lorsque vous ouvrez le fichier PDF dans un visualiseur). – dirkgently

+0

tFPDF "incorpore uniquement les parties nécessaires des polices utilisées dans le document, ce qui rend la taille du fichier beaucoup plus petite que si toutes les polices étaient incorporées". Il essaye de substituer la police et montre seulement des carrés à sa place en ce moment. – zeckdude

+0

L'incorporation ou le remplacement de polices est sans importance si l'API ne prend pas en charge les pages de codes nécessaires pour encoder les caractères que vous ajoutez au document. – Rowan

Répondre

1

L'API que vous utilisez doit fournir un support spécifique pour l'encodage des caractères Unicode que vous essayez d'ajouter au document. Ceci est fait au moyen d'une page de codes/charset pour ces caractères. Il existe un certain nombre de jeux de caractères différents pour les caractères japonais, chinois et coréens tels que Hangeul, GB2312, Big 5 chinois, Shift JIS, etc.

L'API que vous utilisez doit prendre en charge le jeu de caractères correspondant au texte que vous essayez d'ajouter. Il semble que FPDF supporte certaines pages de codes chinoises car il y a des informations sur leur forum concernant l'ajout de texte en utilisant GB2312 and Chinese Big 5, mais comme elles ne semblent pas mentionner unicode sur leurs pages principales, je suppose qu'elles ne fournissent pas de soutien pour cela.

+0

J'ai réussi à utiliser la police Arial Unicode. La police utilisée par l'exemple ne prend pas en charge les caractères CJK. – zeckdude

1

Il existe une version multi-octets de fpdf appelée mbfpdf (disponible gratuitement, je suppose). Avec cela et la police PGOTHIC, il est possible d'afficher des caractères asiatiques. J'ai utilisé cette classe (mbfpdf) pour créer quelques fichiers pdf moi-même et cela a bien fonctionné.

Questions connexes