Переполнение блока XSL fo продолжается в другом блоке

Допустим, у меня есть страница, которая содержит два основных блока текста. Один в верхней половине, один в нижней половине страницы. Верхний блок содержит статические данные, нижний - динамические данные, отображаемые в виде "списка маркеров".

Задача теперь заключается в том, чтобы - если количество элементов в списке маркеров превышает максимально доступное пространство для нижнего блока - я хочу, чтобы страница была "продублирована", и листинг продолжался на второй странице, но также и в нижнем блоке. (Верхний блок должен содержать те же данные, что и на первой странице)

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

Это возможно с xsl-t / xsl-fo? Как этого добиться?

Большое спасибо заранее, Хейко

1 ответ

Если верхняя половина всегда одинакова и имеет известную высоту, вы можете поместить содержимое в fo:static-content что вы бы направили на подходящий размер fo:region-before, Затем вы можете поместить содержимое списка в fo:flow так что это заканчивается в fo:region-body область, край.

Вероятно, вы можете выполнить "продолжение на следующей странице" и "продолжение с последней страницы" с помощью маркеров ( https://www.w3.org/TR/xsl11/). Должен ли текст занимать некоторое место в списке или он должен отображаться ниже / выше области списка?

Если высота вашей верхней половины статических данных не фиксирована, то вам, возможно, придется поместить все в fo:table со статическими данными в fo:table-header,

Другие вопросы по тегам