Распечатать 2 страницы вместо 1 - PullRequest
1 голос
/ 31 марта 2011

Я хочу создать страницу, например, со статическим текстом и циклом, который будет отображать список продуктов.Когда я его печатаю, она может быть длиннее одной страницы, но на второй мне нужно отобразить не только оставшиеся продукты из списка, но и статический текст.

например:

Содержание первой страницы:

статический текст + список товаров из цикла

Второйсодержимое страницы (если список достаточно длинный):

статический текст + список оставшихся продуктов из того же цикла

Как мне этого добиться?Я знаю, что этой информации недостаточно, но, по крайней мере, можете ли вы дать мне подсказку или концепцию этого?!

Ответы [ 3 ]

2 голосов
/ 31 марта 2011

Вероятно, это излишне, но построитель отчетов CF (и, соответственно, <cfreport>) создан специально для такого рода вещей.

Вы определяете полосы заголовка и отображаются ли они на каждой странице, в каждом разделе, только в начале / конце отчета и т. Д.

2 голосов
/ 31 марта 2011

Поскольку разные принтеры могут вести себя немного по-разному, первый шаг, который я хотел бы сделать, - это создать PDF с использованием встроенных в CF инструментов PDF.

Если статический текст короткий и простой, вам может не понравиться использование заголовка страницы, который сделает это автоматически. Поиграйте с этим, прежде чем смотреть на что-то более сложное, но имейте в виду, что (IIRC) вы не можете стилизовать заголовки страниц.

Далее я бы выяснил, сколько товаров умещается на странице. Если продукт может занимать переменное пространство, у вас есть выбор. Вы можете поместить каждый в div статического размера, достаточно большой, чтобы вместить самый большой продукт. Вы можете сделать div достаточно большим для других продуктов и использовать свойство overflow CSS, чтобы скрыть список больших продуктов. Вы можете использовать простой список и надеяться, что он не переполнится. : -)

Между этими разделами страницы используйте атрибуты разрыва страницы CSS (например, page = break-before и page-break-after), чтобы принудительно разрывать страницы там, где вы хотите. Обратите внимание, что они не могут предотвратить разрыв страницы, только принудительный, поэтому я бы использовал один из первых двух предложенных мной способов, чтобы убедиться, что вы не переполняете свою страницу.

1 голос
/ 31 марта 2011

Ответ Бена - лучшее, что вы, вероятно, найдете.Работая с печатью и PDF-файлами, это может быть дерьмо в зависимости от содержимого.Иногда перерыв будет вести себя, а иногда - нет.Лучше всего, чтобы ваши куски контента были как можно меньше, а разметка страниц PDF / CSS справится с этим хорошо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...