2016-12-23 1 views
1

J'utilise le wrapper Laravel 5.1 SnappyPDF, qui utilise la bibliothèque WKHTMLTOPDF. J'essaie d'inclure des polices google personnalisées pour mon fichier PDF, mais ces polices ne fonctionnent pas dans le fichier PDF généré.Les polices personnalisées ne fonctionnent pas en PDF généré à l'aide de la bibliothèque WKHTMLTOPDF

J'ai essayé, en convertissant les polices en Base64 et a également essayé d'inclure des polices par URL absolue et URL relative, a également essayé de nombreuses réponses disponibles au débordement de la pile, mais aucun d'entre eux a travaillé pour moi. Comment résoudre ce problème.

//Calling fonts 
@font-face { 
    font-family: Roboto Condensed; 
    src: url("/fonts/RobotoCondensed-Regular/RobotoCondensed-Regular.ttf"); 
} 
@font-face { 
    font-family: 'Open Sans';src: url("/fonts/OpenSans/OpenSans-Regular.ttf"); 
} 

@font-face { 
    font-family: 'Open Sans Semi Bold Italic'; 
    src: url("/fonts/OpenSans/OpenSans-SemiboldItalic.ttf"); 
} 

//implenting fonts 
.report-page2-col-wrapper .col-heading{ 
    font-family:"Open Sans Semi Bold Italic"; 
    font-size:12pt; 
    line-height:17pt; 
} 

voir la différence dans les captures d'écran

1) Ceci est un navigateur web Version HTML, semble trouver et polices mettre en œuvre correctement


enter image description here

2) Ceci est la version PDF générée, les polices n'appliquant pas correctement


enter image description here

Répondre

1

Il existe de multiples solutions pour y parvenir:

1) Si vous utilisez la police Google, essayez ci-dessous: Utilisez <link> pour inclure la police google

<link href='http://fonts.googleapis.com/css?family=YOURFONTFAMILY' rel='stylesheet' type='text/css'> 

Utilisez <style> pour appliquer l'effet police

<style type = "text/css"> 
    p { font-family: 'YOURFONTFAMILY'; } 
</style> 

2) police Encode avec Base64 encode tool et l'utiliser dans css

@font-face { 
    font-family: 'YOURFONTFAMILY'; 
    src: url(data:font/truetype;charset=utf-8;base64,AAEAAAATAQA... 
} 

Espoir de ce qui précède est votre solution!

Taken ref: use custom fonts with wkhtmltopdf, helvetica font not working in wkhtmltopdf

+0

Option 1 a fonctionné correctement. – Qazi

+0

Content de vous aider ...! –

+0

Que faire si vous n'utilisez pas une police Google? La méthode Base64 n'a pas fonctionné pour moi. – Bobe