Custom Fonts for DOMPDF

59,251

Solution 1

  1. go to your DOMPDF folder
  2. copy your font's as .ttf (TrueType Font) or .otf (OpenType Font) into the DOMPDF's root
  3. open your command line and run
    php load_font.php your_fonts_name ./your-normal.ttf ./your-bold.ttf ./your-bold-italic.ttf
  4. DOMPDF now created Adobe Font Metrics and copied it to lib/fonts/* - you can now use it with
    font-family: your_fonts_name;

Solution 2

you can add css font :

@font-face {
    font-family: new_font;
    src: url('my_font.ttf');
}

and than

div.ClJ{
    font-family: new_font; 
}

Solution 3

If you want to install custom fonts to the server without a command-based interface then you can do the following web-based model to install the custom fonts

  1. Download ejaz.php from here
  2. Put this file to the root of dompdf and follow the instruction written in it

no need for root or command/terminal access

Share:
59,251

Related videos on Youtube

pinaldesai
Author by

pinaldesai

Project Lead effective in leading and directing website development projects from inception to launch. In total 8 years of IT experience including more than 4 years of progressive management experience and repeated success in developing project initiatives, directing project plans, work flow planning and staff retention strategies. Boosts productivity through innovative management and mentorship. High-achieving management professional possessing excellent communication, organizational, analytical capabilities and having the ability to work with the minimum of supervision whilst leading a team of twenty or more. Devises innovative solutions to resolve business and technology challenges.

Updated on July 09, 2022

Comments

  • pinaldesai
    pinaldesai almost 2 years

    I'm Using DOM PDF 0.6.0 Beta 2. I want to use custom fonts (Fonts: 'Segeo Print', 'Lucida Handwriting','Airplanes in the Night Sky') in PDF file.

    I followed the guidelines to install and use fonts in my PHP Code, which is given here http://code.google.com/p/dompdf/wiki/CPDFUnicode

    But I'm not able to get desire fonts in my PDF. You can find my code in this post. Please Let me know how I can resolve this issue.

    <?php     
        require_once("dompdf_config.inc.php");
    
       $html = "<html>
                    <head>   
                        <meta http-equiv='Content-Type' content='text/html;charset=utf-8'>
                        <style>
                            *{font-size:15px;}  
                            div.ClJ{font: nightsky;}   
                        </style>      
                    </head>
                    <body>            
                       <div class='ClJ'>This text is in DIV Element</div><br /><br />
                    </body>
              </html>";
    
        $dompdf = new DOMPDF();    
        $dompdf->load_html($html);
        $dompdf->render();
        $pdf = $dompdf->output();
        $dompdf->stream("dompdf_out.pdf", array("Attachment" => false));
    
    ?>    
    
    • BrianS
      BrianS over 11 years
      If you're still on beta 2, try upgrading to beta 3. It has better support for custom fonts, now supports font-subetting, and has an easier font-loading mechanism (the how-to needs to be updated to reflect these changes).
    • BrianS
      BrianS over 11 years
      FYI, your code looks fine so it's probably an issue with the font itself (e.g. font didn't load correctly).
    • pinaldesai
      pinaldesai over 11 years
      Thank your the comment. Will try to upgrade to beta 3 lets see how its turn out.
  • pinaldesai
    pinaldesai over 11 years
    I don't think so this is accessory as I have already installed fonts for DOM PDF and definition of fonts are already available in dompdf_font_family_cache.dist file
  • logan
    logan almost 10 years
    @ueli : I dont did not instal but just copy pasted dompdf. how shall i do?
  • logan
    logan almost 10 years
    where should i keep this css part ?
  • Macumbaomuerte
    Macumbaomuerte over 9 years
    I think there's a comma after the second filename that may cause error, the code should be: php load_font.php your_fonts_name ./your-normal.ttf ./your-bold.ttf ./your-bold-italic.ttf
  • FooBar
    FooBar about 9 years
    This does not work for me. Pulled in fresh version from github (github.com/dompdf/dompdf). When running the command, I get: Warning: require_once(/Users/me/Downloads/dompdf-master/lib/php-font-‌​lib/classes/Font.php‌​): failed to open stream: No such file or directory in /Users/me/Downloads/dompdf-master/dompdf_config.inc.php on line 332
  • Ueli
    Ueli almost 9 years
    @Kannu why is it inappropriate?
  • Chris Gibb
    Chris Gibb about 8 years
    @Mattias and anybody else who pulls DOMPDF from github. You must initialise and update the submodules. This is why you got file not found error "git submodule init && git submodule update"
  • Bhumi Shah
    Bhumi Shah over 6 years
    answer doesn't work for composer based insallatation of DomPDF. Also, this is not correct way to change core directory