Вариант с текстфилдами по размеру страницы я уже рассматривал, он мне показался очень сложным, так как надо не простой текст разбивать, а HTML, да еще и так, что бы текст заполнял каждую страницу до конца, а не обрывался посередине...
Сегодня я придумал и реализовал другой интересный вариант, может кому-то пригодится еще:
Перед печатью с помощью таймера увеличиваем высоту TextArea (сначала она равна 100%) до тех пор, пока не исчезнет вертикальная полоса прокрутки (при этом свойство TextArea.maxVerticalScrollPosition станет равным 0), и тогда запускаем печать. После печати устанавливаем высоту TextArea опять в 100%. При таком способе распечатывается весь текст на несколькихз страницах:

Код:
public function print() : void
{
if (briefingText.maxVerticalScrollPosition == 0)
{
var printJob : FlexPrintJob = new FlexPrintJob();
if (printJob.start())
{
printJob.addObject(briefingText);
printJob.send();
}
briefingText.percentHeight = 100;
briefingText.verticalScrollPolicy = "auto";
}
else
{
briefingText.verticalScrollPolicy = "off";
setTimeout(expandCanvas, 100);
}
}
private function expandCanvas() : void
{
briefingText.height += 500;
setTimeout(print, 100);
}