HTML-таблица Codeigniter не отрисовывается с помощью TCPDF - PullRequest
2 голосов
/ 17 января 2012

Я создаю генератор отчетов с codeigniter и использую tcpdf для создания своих файлов PDF.

Сначала я создаю таблицу из результата запроса в codeigniter следующим образом:

$query = $this->db->query($sql);
$html = $this->table->generate($query);

Затем я использую html в качестве содержимого PDF следующим образом:

$pdf->writeHTMLCell($w = 0, $h = 0, $x = '', $y = '', $html, $border = 0, $ln = 1, $fill = 0, $reseth = true, $align = '', $autopadding = true);
$pdf->Output($data['path'] . $data['file_name'] . '.pdf', 'F');

Все хорошо, но иногда таблица просто не отображается, остальная часть PDF, например, заголовок, просто отлично, но таблица не отображается.

Я думаю, что это какое-то переполнение, потому что таблица выиграла 't появляется, когда содержимое внутри строки слишком длинное.

Я пытался установить максимальную ширину столбцов, делая это:

.normal_row{
    background-color: #FFFFFF;
    height: 1em;
    max-width: 200px;
}

Но это не сработало.

Есть идеи как решить эту проблему?

Ответы [ 2 ]

1 голос
/ 04 мая 2012

У меня была похожая проблема с исчезновением текста внутри таблиц HTML.Вероятно, причина была не та, что у вас, но для дальнейшего использования - моя проблема была с буквой «š» и шрифтом dejavusans.Когда я переключился на freesans, содержимое моей таблицы было нарисовано правильно.

0 голосов
/ 18 января 2012

Как я недавно обнаружил, TCPDF не поддерживает все стандартные функции CSS.Он не присущ CSS-функциям, в которых каждая из них должна быть запрограммирована (т. Е. Padding, margin и т. Д.), И демонстративно не передает их определения.Вам придется сохранить его как можно более старым и использовать как можно меньше CSS.Также взгляните на это: соответствующий пост .

Это можно сделать, как я выяснил, но это нелегко, я думаю, что с текущим стилем кодирования TCPDF действительно нуждается в капитальном ремонте, гдеCSS особенно касается CSS-функций среднего уровня.

Надеюсь, я хотя бы сэкономил вам часы поиска и тестирования, вам действительно нужно найти функции, которые будет выполнять TCPDF, и попытаться приспособить их к вашим потребностям.TCPDF по-прежнему является выдающейся библиотекой, которую нужно просто обновить.

...