2013-12-09 2 views
0

Я использую html2pdf и передаю $ this-> renderpartial ('view', array (..), true) в $ content.html2pdf не полностью конвертирует арабский язык и RTL немного испорчен

Вот код:

$content = $this->renderpartial('view',array(..),true);  
$html2pdf = new HTML2PDF('P','A4','en'); 
$html2pdf->pdf->SetDisplayMode('real'); 
$html2pdf->WriteHTML($content); 
$html2pdf->Output('/var/www/myapp/images/example.pdf','F'); 

мнение объявляет OTF шрифт .. который я успешно импортирован в TCPDF с помощью онлайн-конвертер.

Но выход в формате pdf имеет некоторые арабские, но некоторые буквы и странно английские буквы на квадраты. Хуже всего то, что хотя в моем html есть директива RTL .. некоторые части документа все еще находятся в LTR.

У меня есть выходной html со мной, если вам нужно его увидеть .. без бит html2pdf .. прямо из $ this-> renderpartial. Если вам это нужно, я вставляю его или прикрепляю как изображение.

+0

запомнить вам нужен полный HTML в вашей точке зрения, что в настоящее время renderParialed, как HTML открытия и окончание тела тега и ... – tinybyte

+0

Все, что есть .. <мета кодировки = 'UTF-8'> ... Там какая-то PHP вещи внутри, хотя, но это в любом случае renderpartial берет на себя право? –

+0

Очевидно, html2pdf не поддерживает арабский. См. Эту тему http://stackoverflow.com/questions/12647917/converting-html-to-pdf-with-arabic –

ответ

0

Хорошо, поэтому проблем нет. Просто шрифт, который я использовал, полностью не преобразовывался в желаемый формат tcpdf. Некоторые символы отсутствуют, включая английский набор символов.

Я пробовал использовать еще один арабский шрифт, и все было в порядке.

Это важно: html2pdf поддерживает utf-8 из коробки при использовании с библиотекой tcpdf.

0

html2pdf поддерживает арабский Я использую его. Вы должны указать шрифт в теге страницы и обернуть остальную часть вашего HTML-кода в теге.

<page backtop="10mm" backbottom="20mm" backleft="20mm" backright="20mm" style="font-family: dejavusans"> 
 

 
#rest of HTML code here 
 

 
</page>

Смежные вопросы