dompdf – текст на одной странице / page_script не работает

Я использую dompdf 0.7.0 и пытаюсь записать текст в PHP на моем pdf после рендеринга. Мне нужен текст на конкретных страницах и нашел следующее из ответа от Brian DomPDF {PAGE_NUM} не на первой странице

Функция page_script звучит как правильный ответ. Я мог бы проверить, находится ли цикл в настоящее время на странице 3 или что-то еще.

Должен ли я включать любые опции для этой функции?

Пример:

$dompdf = new Dompdf( $options ); $dompdf->set_option('default_font', 'open sans'); $dompdf->set_option('fontHeightRatio', 1); $dompdf->setPaper('A4') $dompdf->set_option('enable_html5_parser', true); $dompdf->set_option('enable_php', true); $dompdf->loadHtml( $html ); $dompdf->render(); $canvas = $dompdf->get_canvas(); $canvas->page_script(' if ($PAGE_NUM > 1) { $current_page = $PAGE_NUM-1; $total_pages = $PAGE_COUNT-1; $canvas->text(0, 0, "$current_page / $total_pages", "open sans condensed", 10, array(0,0,0)); } '); 

Это все еще будет показано на моей первой странице.

Solutions Collecting From Web of "dompdf – текст на одной странице / page_script не работает"

$canvas не будет доступен из скрипта страницы, поскольку он выходит за рамки. Объект canvas можно ссылаться внутри вашего скрипта страницы как $pdf .

page_script этого попробуйте page_script следующий вызов page_script :

 $canvas->page_script(' if ($PAGE_NUM > 1) { $current_page = $PAGE_NUM-1; $total_pages = $PAGE_COUNT-1; $font = $fontMetrics->getFont("open sans condensed", "normal"); // or bold, italic, or bold_italic $pdf->text(0, 0, "$current_page / $total_pages", $font, 10, array(0,0,0)); } }; 

Внутри скриптов страниц или встроенного скрипта имеется несколько переменных:

  • $PAGE_NUM : номер текущей страницы
  • $PAGE_COUNT : общее количество страниц
  • $pdf : объект холста
  • $fontMetrics : экземпляр класса FontMetrics

Если вы используете текст страницы, у вас есть доступ к следующим переменным шаблона:

  • {PAGE_NUM} : номер текущей страницы
  • {PAGE_COUNT} : общее количество страниц

Примечание. Поддержка разбора встроенных сценариев или скриптов страниц по умолчанию отключена. Включите его с помощью следующей команды: $dompdf->set_option("isPhpEnabled", true); , Это необходимо сделать до вызова $dompdf->render(); ,