Я использую dompdf 0.5.2 и имею проблему, что когда есть акцент на строке, первый символ из следующей строки перемещается в него, например:
This is a first line with áccent. T his is a second line.
Обратите внимание на T в конце первой строки, он принадлежит ко второму. Это происходит как со стандартным, так и с пользовательским загруженным шрифтом. Также пробовал кодирование UTF-8 и ISO-8859-1.
Если у кого-то такая же проблема с версией 0.7.0 beta, решение добавляет следующую строку в файл src / Dompdf / FrameReflower / Text.php в строке 272 (как раз перед if ($split == 0) {
) :
$split = mb_strlen(mb_substr($this->_frame->get_text(), 0, $split), 'UTF-8');
Решение, отработанное здесь , добавляет следующую строку кода в файл dompdf include/text_frame_reflower.cls.php
после строки 246:
$split = mb_strlen(mb_substr($this->_frame->get_text(), 0, $split), 'UTF-8');
Другое решение, которое сработало для меня, – это использовать функцию wordwrap PHP для вашего текста / строки.