ошибка чтения PDF-файла, созданного с использованием dompdf - PullRequest
1 голос
/ 20 июля 2011

Я пытаюсь сгенерировать таблицу из html в pdf, используя dompdf, но при открытии файла на устройстве чтения foxit или adobe, я получаю ошибку, связанную с повреждением файла. Sumatra может открыть файл, который dompdf создает без проблем*

 <table border="1">
            <tr>
                <th>Name</th>
                <th>Course</th>
            </tr>
            <?php   
            foreach($select as $s){     
            ?>
            <tr>
                <td><?php echo $s->strName; ?></td>
                <td><?php echo $s->strCourse; ?></td>
            </tr>       
            <?php } ?>

 </table>

Вот файл, который генерирует PDF.Вывод приведенного выше кода просто сохраняется в сеансе, и этот файл просто извлекает его содержимое:

require_once('../classes/dompdf/dompdf_config.inc.php');
$dompdf = new DOMPDF();


$data = $_SESSION['view'];

ob_start();
?>

<!--css-->


<?php
$subj = $_SESSION['view']['bi'];

echo $subj.'<hr/>';

foreach($data as $d){


        echo $d.'<br/>';

}

$print = ob_get_contents(); 
ob_end_flush();

$tym = date('g:i s');
$filename = 'print '.$subj. $tym;
$dompdf->load_html($print);

    $dompdf->render();
    $dompdf->stream($filename. ".pdf", array("Attachment" => 0));

Как определить ошибку для этого.

1 Ответ

2 голосов
/ 28 сентября 2011

У меня была точно такая же проблема.Решение, которое я предложил, заключалось в простом обновлении до DOMPDF 0.6.0 beta 2 .Я протестировал сгенерированный PDF с помощью Evince (Linux), Acrobat Reader и встроенного средства просмотра (Mac) и Adobe Reader снова в Windows.Все работают отлично.

Обновление довольно просто, однако для меня (поскольку мои параметры конфигурации такие же, как по умолчанию), я закомментировал все в dompdf_config.custom.inc.php и оставил все по умолчанию, что работает для большинстваслучаи.

...