Как правило, вы не можете.
Способ, которым указан XSL, не может ограничивать количество страниц.Существует свойство force-page-count
(см. https://www.w3.org/TR/xsl11/#force-page-count), но это для принудительного завершения fo:page-sequence
на нечетной или четной странице, а не для принудительного задания определенного количества страниц. Вы можете попробовать установить fo:page-sequence-master
(см. https://www.w3.org/TR/xsl11/#fo_page-sequence-master), чтобы исчерпать альтернативы после определенного количества страниц, но вы, вероятно, обнаружите, что средство форматирования будет восстанавливаться после ошибки (как это разрешено делать), продолжая повторно использовать последний-используемый мастер страниц.
Рекомендация FOP об использовании памяти находится на https://xmlgraphics.apache.org/fop/2.3/running.html#memory
Можете ли вы (как говорится в рекомендации FOP) разбить ваши таблицы на несколько fo:page-sequence
? FOP склонен кОсвободите часть памяти после того, как закончите с последовательностью страниц.
Вы можете попробовать использовать другой форматер. Он может работать лучше в ваших таблицах, он может иметь двухпроходную обработку (наиболее полезно, когда есть много прямых ссылок), или он может иметь опцию форматирования только ограниченного числа страниц. Например, AH Formatter может выполнять двухпроходное форматирование и может выводить только страницы между указанным start и end страниц (см. https://www.antennahouse.com/product/ahf66/ahf-xslcmd.html),, и XEP может выводить первые n страниц для вывода SVG и XHTML (см. http://www.renderx.com/reference.html#Generate_Each_Page_as_separate_file).