проблема CSS с domPDF - PullRequest
       2

проблема CSS с domPDF

1 голос
/ 29 июля 2011

Следующий фрагмент кода показан «Использование DOMPDF для рендеринга PDF».Здесь у меня есть два вопроса:

1.Куда добавить код CSS?

2.Как сделать HTML-код вне одного кода (см. $ html переменная)?

Заранее спасибо и очень признателен за любую помощь.

<?php
require_once("dompdf_config.inc.php");
$html =
    '<html><body>'.
    '<p>Hello World!</p>'.
    '</body></html>';

$dompdf = new DOMPDF();
$dompdf->load_html($html);

$dompdf->render();
$dompdf->stream("hello_world.pdf");

?>

Ответы [ 4 ]

3 голосов
/ 10 августа 2011

DOMPDF читает HTML так же, как веб-браузер.Поэтому, если вы хотите добавить некоторые стили в приведенный выше пример кода, вы можете создать заголовок:

$html =
  '<html><head>' .
  '<style>body { font-family: sans-serif; font-size: 150%; }</style>' .
  '</head><body>'.
  '<p>Hello World!</p>'.
  '</body></html>';

или встроенный в документе:

$html =
  '<html><body style="font-family: sans-serif; font-size: 150%;">'.
  '<p>Hello World!</p>'.
  '</body></html>';
0 голосов
/ 03 ноября 2012

Привет, как показано ниже, вы можете сделать html-переменную со стилем CSS в pdf

<?php
$html = <<<EOF
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<head>
     <style>
     body,html{
        color:#272727;
        font-size:14px;
        font-family: 'dejavu sans';
        line-height:0.9;!important
        font-size:14px;
        }
</head>
<body>
<div>
This is testing content
</div>
    </body></html>
    EOF;

        $dompdf = new DOMPDF();
        $dompdf->load_html($html);
        $dompdf->render();
        $dompdf->stream("filename.pdf");
        ?>
0 голосов
/ 17 сентября 2012

Хай, вы можете сделать html-переменную со стилем CSS, как показано ниже, и использовать ее для генерации pdf

<?php
$html = <<<EOF
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<head>
     <style>
     body,html{
            margin: 0px;
            padding: 0px;
        color:#272727;
        font-size:14px;

            }
        body,html
        {
        font-family: 'dejavu sans';
        line-height:0.9;!important
        font-size:14px;
        }
</head>
<body>
<div>

</div>
    </body></html>
    EOF;

        $dompdf = new DOMPDF();
        $dompdf->load_html($html);
        $dompdf->render();
        $dompdf->stream("filename.pdf");
        ?>
0 голосов
/ 11 августа 2011

вы можете динамически генерировать HTML-файл, используя шаблонизатор (Smarty) или другим способом. Если используется Smarty, то $ smarty-> fetch (имя файла шаблона) , который сгенерирует HTML-код, и это можно использовать для создания PDF. Будьте осторожны с использованием CSS, так как все CSS должны быть упомянуты на странице.

...