Comment implémenter des fonts personnalisées dans TCPDF

Dans TCPDF, vous ne pouvez choisir que quelques fonts pour créer des fichiers pdf. Je veux définir Tahoma comme ma police pdf. Comment puis-je inclure Tahoma dans TCPDF?

La dernière version de TCPDF convertit automatiquement les fonts au format TCPDF en utilisant la méthode addTTFfont (). Par exemple:

 // convert TTF font to TCPDF format and store it on the fonts folder $fontname = TCPDF_FONTS::addTTFfont('/path-to-font/FreeSerifItalic.ttf', 'TrueTypeUnicode', '', 96); // use the font $pdf->SetFont($fontname, '', 14, '', false); 

Pour plus d’informations et des exemples, consultez la page de documentation des fonts TCPDF .

REMARQUE: Une fois la police convertie, TCPDF ne nécessite plus le fichier TTF ou l’appel ci-dessus à addTTFfont() !

J’ai découvert un très bon outil en ligne. La seule chose que vous devez faire est de télécharger votre fichier .ttf, puis de télécharger les fichiers et de les copier dans le dossier / fonts.

http://www.xml-convert.com/fr/convert-tff-font-to-afm-pfa-fpdf-tcpdf

La méthode addTTFfont n’est pas disponible sur la classe principale TCPDF.

 // convert TTF font to TCPDF format and store it on the fonts folder $fontname = TCPDF_FONTS::addTTFfont('pathto/arial.ttf', 'TrueTypeUnicode', '', 96); // use the font $pdf->SetFont($fontname, '', 14, '', false); 

J’espère que cela t’aides!

Je ne connais rien à tcpdf ou php, mais j’ai trouvé ceci:

http://www.tcpdf.org/examples/example_033.phps

Apparemment, vous utilisez simplement le nom de la police, pas le nom du fichier.


Frappez un!

Ok, que diriez-vous de cette page ? Pour préparer une police à utiliser par TCPDF, vous devez exécuter le fichier via un utilitaire de ligne de commande et un script PHP.

$ ttf2ufm -a -F myfont.ttf

Et alors:
$ php -q makefont.php myfont.ttf myfont.ufm
ou
MakeFont(ssortingng $fontfile, ssortingng $fmfile [, boolean $embedded [, $enc="cp1252" [, $patch=array()]]])

ttf2ufm est dissortingbué avec TCPDF dans le répertoire TCPDF / fonts.

les lignes ci-dessous vont générer 3 fichiers dans le dossier de fonts ur 1.rotisserifi56.php 2.rotisserifi56.ctg 3.rotisserifi56.rar

  use this to generate the required php and other files $fontname = $this->pdf->addTTFfont('D:/wamp/www/projectname/sites/all/modules/civicrm/packages/tcpdf/fonts/Rotis Serif Italic 56.ttf', 'TrueTypeUnicode', '', 32); // use the font $this->pdf->SetFont($fontname, '', 14, '', false); 

À présent,

utilisez les fonts comme ceci:

  $this->pdf->AddFont('rotisserifi56', '', 'rotisserifi56.php'); $this->pdf->SetFont('rotisserifi56'); 

–hope ça aide quelqu’un 🙂

J’ai trouvé la méthode addTTFfont un peu compliquée (ok, probablement pas très difficile) et l’outil en ligne mentionné ci-dessus fonctionne pour FPDF mais manque le fichier ctg.z requirejs par TCPDF.

Celui-ci – http://fonts.snm-portal.com/ – génère les 3 fichiers requirejs (.php, .z et .ctg.z) pour TCPDF. Convertissez le TTF, téléchargez les trois fichiers dans votre dossier de fonts et vous êtes prêt à partir.

Commencez par créer .php, .afm, .z depuis http://www.xml-convert.com/en/convert-tff-font-to-afm-pfa-fpdf-tcpdf et déplacez les trois dans le même répertoire contenant .ttf fichier. puis utilisez ceci:

 $pdf->AddFont(path-to/universe.ttf','',path-to/universe.php'); $pdf->SetFont(path-to/universe.ttf','',10); 

Le dernier TCPDF prend en charge les fonts personnalisées.

La documentation sur l’utilisation de fonts personnalisées avec TCPDF peut être lue ici .

la meilleure façon dont j’ai été essayé et travaillé 100% mettre votre police TTF dans le dossier de fonts, puis utiliser cette constante K_PATH_FONTS + FONT NAME

  $font1 = $this->pdf->addTTFfont(K_PATH_FONTS . 'arial.ttf', 'TrueTypeUnicode', '', 8); $this->pdf->SetFont($font1, '', 15, '', false); 

Il ne sert à rien d’utiliser addTTFfont () si vous n’avez pas le fichier .ttf.

Et tout le problème est le suivant: s’il n’y a pas de fichier ttf , comment peut-on utiliser la fonction addTTFfont ()?

Par exemple, il n’y a pas de fichier cid0cs dans font / directory (TCPDF 6.0.20), mais uniquement cid0cs.php, qui n’est PAS un fichier de police .

Je n’ai pas pu trouver addTTFFont () dans la dernière version de tcpdf. Cependant, j’ai pu inclure un fichier TTF personnalisé moi-même. Dans le dossier tcpdf se trouve un dossier nommé tools qui inclut un fichier PHP appelé tcpdf_addfont.php .

Je l’ai lié à mon répertoire personnel (vous pouvez omettre cette étape) et le lancer comme ceci: shell ./addfont.php -b -t TrueTypeUnicode -f 32 -i myfont.ttf

Ça y est, ça va jeter quelque chose de similaire à ceci: “ `

Conversion de fonts pour TCPDF: *** Répertoire de sortie défini sur /Users/pascalraszyk/XXX/XXX/pdf/vendor/tecnick.com/tcpdf/fonts/ +++ OK: / Users / pascalraszyk / XXX / XXX / pdf / myfont .ttf ajouté comme processus myfont complété avec succès! “ `

Remarque: le dossier tools contient d’autres exemples pour différents types de fonts. J’ai utilisé le compositeur pour vérifier tcpdf.

Tant que vous mettez vos fichiers de définition de police dans le dossier tcpdf/fonts , vous devriez être tcpdf/fonts à partir!

J’ai utilisé HTML2PDF qui utilise tcpdf sous le capot et cela a fonctionné comme un charme.

J’ai eu ce problème en dépit d’avoir tous les bons fichiers. Je devais changer les noms de fichiers en minuscules

Lorsque ce n’était pas possible, convertir de manière standard la police GothamRounded, je cherchais un autre outil et seul celui-ci http://fonts.snm-portal.com/ fonctionnait pour moi.