Dompdf et de définir différentes font-family
Lors de la génération d'un fichier PDF il ignore totalement mon font-family
attribut appliqué à mon CSS. Au lieu de dire Verdana, il utilise Times New Roman. Donc mon CSS ressembler à:
.sub-header {
font-size: 1.4rem;
text-transform: uppercase;
font-family: NeutraText-Book !important;
padding-bottom: 1.5rem;
}
Le PDF est généré comme ceci:
$pdf = PDF::loadHTML($view);
return $pdf->stream();
Comment puis-je définir une police que je veux?
OriginalL'auteur John | 2014-06-25
Vous devez vous connecter pour publier un commentaire.
Documents PDF en interne soutenir les polices suivantes: Helvetica, Times-Roman, Courrier, Zapf-Dingbats, & Symbole (tous à l'aide de Windows le codage ANSI). dompdf intégrera référencé de police dans le fichier PDF en tant qu'il a été pré-chargé ou est accessible à dompdf et référencées dans un CSS
@font-face
règle. Le processus de chargement est nécessaire pour produire les mesures de police utilisé pour le paramètre type.dompdf prend en charge les polices de caractères sous-jacents de la R&OS PDF classe: Type 1 (.pfb) et TrueType (.ttf) tant que les mesures de police (.afm/.upm) sont disponibles. Le logiciel, basé sur PHP php-font-lib fournit un support pour le chargement et le sous-paramètre de polices.
Le processus de chargement d'une police de caractères varie en fonction de vos besoins et de l'accès au serveur. Il ya trois façons dont vous pouvez charger une police:
Utiliser les CSS @font-face des règles de charger une police au moment de l'exécution
Pas de ligne de commande d'accès requis. Aussi longtemps que la police que vous souhaitez charger est disponible en ligne, vous pouvez le charger facilement via CSS.
À partir de la ligne de commande utilisation dompdf/load_font.php
Si vous avez accès à la ligne de commande puis le chargement d'une police est aussi simple que:
Exécuter la commande sans paramètres pour voir le texte d'aide. Rapidement, cependant, les paramètres sont les suivants: nom de la police, normal fichier de police, gras fichier de police, italique fichier de police, gras-italique fichier de police
Parcourir pour dompdf/www/fonts.php dans l'admin du site
Auto-explicatif (l'échantillon). La seule chose que vous devez faire est de vous assurer que vous avez modifié le nom d'utilisateur administrateur/mot de passe combo
Note: load_font.php et l'admin du site ne seront pas inclus par défaut à partir de dompdf 0.7.0
Adapté de la dompdf wiki (Unicode Comment, Sur les Polices de Caractères et Encodage) et d'autres sources.
OriginalL'auteur
Vous avez besoin d'avoir la police chargé de DomPDF. Vérifier cette page pour plus de détails.
OriginalL'auteur cOle2
Merci pour la réponse, par Brians ci-dessus, mais dans mon cas, la seule option disponible est travaillé par l'installation des polices à l'aide de "dompdf/www/fonts.php"
installé la police par
La navigation à dompdf/www/fonts.php dans l'admin du site. (il sera quelque chose comme http://yoursite.com/sites/all/modules/print/lib/dompdf/www/fonts.php)
Aller en bas de la page, et cliquez sur un lien
il est livré avec alerte disant "mot de passe doit être changé dompdf_config.custom.inc.php".
le mot de passe dans le bas du fichier. vous pouvez trouver
"DOMPDF_ADMIN_USERNAME" et "DOMPDF_ADMIN_PASSWORD". décommenter ces
2 lignes et ajouter un nom d'utilisateur et le mot de passe pour l'installation de la police.
Maintenant, à nouveau, cliquez sur
[Authenticate to access this section][2]
, il demandepour le nom d'utilisateur et mot de passe. entrez utilisateur nom d'utilisateur et le mot de passe que vous avez donné lors de la première étape.
si vous parcourez le même fonts.php chemin de nouveau dans votre navigateur, vous pouvez trouver d'installer de nouvelles polices de caractères dans la section en bas de la page( vous pouvez le voir dans l'image),(cependant, j'ai déplacé mon rockwell.ttf et rockwell.afm de fichiers vers le dossier polices d'abord et ensuite j'ai installé ici)
choisir votre choix de la police ttf fichier puis de l'installer. il est installé et en montrant dans les polices installées, mais il ne fonctionne pas pour moi. j'ai donc dû créer pour .fichier afm pour ma nouvelle police.(ici, j'ai voulu utiliser rockwell police)
étapes que j'ai fait pour créer mon rockwell.fichier afm.
1
Je l'ai fait comme dompdf autres 14 des polices, je ne suis pas sûr de savoir comment acceptable est présent. mais il a travaillé pour moi. Je voulais juste le faire.
J'ai ajouté ma rockwell de police où j'ai trouvé le dompdf natif de noms de polices dans les fichiers php
Ajoutée "rockwell" à
public static $native_fonts
tableau dans dompdf/include/dompdf.cls.php fichierdompdf/lib/fonts/dompdf_font_family_cache.dist.php fichier comme ci-dessous
c'est tout. il a généré de rockwell.fichier afm pour moi comme ce
simplement utiliser quelle que soit la famille de polices que vous souhaitez utiliser comme
Notez que je ne voudrais pas ajouter à votre police à la
$native_fonts
de tableau ou de modifier les bibliothèques de classe pour ajouter à votre police. J'ai aussi ne pas modifier dompdf_font_family_cache.dist.php. Il devrait y avoir un fichier similaire sans l' .dist extension qui contient vos informations de police. Si ce n'est pas ce qui se passe alors des choses qui vont mal avec le processus d'installation.Sinon, une belle étape-par-étape.
OriginalL'auteur Developer
Dompdf de Sur les Polices de Caractères et Encodage dit la police utilitaire est inclus, mais ne vous dit pas comment l'obtenir et l'exécuter. Voici comment:
Télécharger load_font.php dans le répertoire racine de votre projet.
curl -o load_font.php https://raw.githubusercontent.com/dompdf/utils/master/load_font.php
Ouvrir load_font.php avec un éditeur de texte (par exemple vim). Changement
require_once "autoload.inc.php";
àrequire_once "vendor/autoload.php";
Exécuter l'utilitaire avec le nom de la police vous vous inscrivez et le chemin d'accès à la FFT fichier. Par exemple:
php load_font.php 'Brush Script MT' https/fonts/brush-script-mt.ttf
Lire le code pour load_font.php pour plus d'informations sur la façon d'utiliser cette commande.
OriginalL'auteur Jay Bienvenu