DOM PDF рендерится на Mac, но не на ПК - PullRequest
3 голосов
/ 20 марта 2012

Я использую DOM PDF для преобразования простой HTML-страницы в PDF - все работает на Mac, но на ПК я получаю сообщение: PDF error on windows

Есть ли журнал, который я могу проверить?Что может заставить это работать на Mac (с помощью предварительного просмотра), но не Adobe на Windows?

Редактировать

Как и предположил bfavaretto, я открыл PDF в textedit.Вот ошибка:

<p>Message:  Function set_magic_quotes_runtime() is deprecated</p>
<p>Filename: lib/class.pdf.php</p>
<p>Line Number: 4332</p>

Вот мой код CI:

function pdf($id)
    {
        // Setup fields
        $this->load->helper('htm_to_pdf');
        $data['data'] = $this->home_model->getReport(array('id'=>$id));
        $html = $this->load->view('HTML2PDF/Code/index', $data, true);
        pdf_create($html, 'filename');
    }

Ответы [ 3 ]

1 голос
/ 20 марта 2012

set_magic_quotes_runtime больше не используется в dompdf 0.6.Я предлагаю вам загрузить последнюю версию (0.6 beta 3) или удалить вызов set_magic_quotes_runtime в lib/class.pdf.php.

Это предупреждение выдается PHP, потому что эта функция устарела.

0 голосов
/ 20 марта 2012

Я видел сообщения о похожих проблемах (у меня была куча проблем с DOMPDF), похоже, что есть другой текст в потоке вывода, который заставляет Acrobat отклонять PDF как поврежденный.

Попробуйте добавить setlocale (LC_NUMERIC, "C"); прежде чем позвонить в DomPDF Взгляните на эту тему для получения дополнительной информации: http://code.google.com/p/dompdf/issues/detail?id=418

0 голосов
/ 20 марта 2012

Некоторые вики использование информация

require_once("dompdf_config.inc.php");


$html_to_string = $this->load->view('', array(), true);


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

force_download('sample.pdf', file_get_contents($dompdf->render()));

-

Вместо принудительной загрузки вы можете использовать

$dompdf->stream("sample.pdf");
...