Как справиться с dompdf Двухколонным дизайном? - PullRequest
1 голос
/ 27 июля 2011

Я хочу использовать dompdf для создания HTML в PDF. У меня есть дизайн с двумя колонками. Каждый столбец может быть выше, чем обычная страница dina4. Итак, у меня есть разрыв страницы.

Я не хочу использовать float, потому что dompdf float иногда глючит, и я не хочу что-то плавать, я хочу два контейнера исправлений (слева, справа).

Если я использую позицию: абсолютный; этот контейнер не может сделать разрыв страницы. С положением: фиксированный; этот контейнер находится на каждом сайте dina4 (хорош для нижнего колонтитула и заголовка, плох для моего решения).

Если я использую таблицу с двумя столбцами, dompdf не может обработать таблицу в таблице, и я получаю сообщение об ошибке. Но я должен использовать таблицу для моего контента.

Есть ли другие решения для этой проблемы? позиция: абсолютная с правильным разрывом страницы или что-то еще?

EDIT:

Моя страница: заголовок div (позиция: фиксированная;) нижний колонтитул div (позиция: фиксированная;) содержимое div (2 колонки - слева и справа с разрывами страницы)

С наилучшими пожеланиями

Ответы [ 3 ]

5 голосов
/ 21 декабря 2011

Вы можете использовать относительное положение и абсолютное положение с левыми полями. Это работает на одной странице, поэтому должно работать более чем на одной странице.

<div style="clear:both; position:relative;">
    <div style="position:absolute; left:0pt; width:192pt;">
        LEFT COLUMN
    </div>
    <div style="margin-left:200pt;">
        RIGHT COLUMN
    </div>
</div>
3 голосов
/ 27 июля 2011

Я уже сталкивался с этой проблемой (разметка столбцов более чем на одну страницу), и с помощью DomPdf самый простой способ получить разметку столбцов - это использовать таблицы для разметки страницы и сделать что-то вродерассчитать, когда создавать новые строки и столбцы.Это сработало для меня, но это не идеальное решение, так как в конечном итоге вам пришлось создать совершенно новый макет и сложную логику для PDF.

Если бы мне пришлось сделать это снова, я бы посмотрелhttp://code.google.com/p/wkhtmltopdf/, что настоятельно рекомендуется.Для этого есть расширение PHP ... https://github.com/mreiferson/php-wkhtmltox

Вот обзор ... http://ciaranmcnulty.com/blog/2009/04/converting-html-to-pdf-using-wkhtmltopdf

Пожалуйста, дайте мне знать, как вы справляетесь с этим.

Удачи:)

2 голосов
/ 13 декабря 2013

Вы можете использовать:

 display:inline-block;
...