Частичное заполнение страницы, с переносом на другую

отредактировано 23:47 Раздел: FastReport 4.0
Нужно разбить текст в Memo на страницы, таким образом чтобы страница была заполнена не полностью, а на половину. Т.е. допустим на первой странице выводится 20 строк одной и той же записи, ниже пустота или какие-то элементы, далее создается следующая страница на ней выводится еще 20 строк (все той же записи) и так далее.
Сейчас я пытаюсь сделать таким образом:

MasterData:
AllowSplit = True;
StartNewPage = True;
Strached = False;

Memo:
StretchMode = smActualHeight.

Однако MasterData все равно растягивается до конца страницы.

Комментарии

  • отредактировано 23:47
    Мне кажется, что-то вроде такого:
    1) Заводим в скрипте в глобальных переменных стринглист со всем текстом;
    2) В мемо OnBeforePrint грузим нужное кол-во строк (по желанию - проверяя на макс. высоту через CalcHeight)
    3) Удаляем из стринглиста то, что загрузили в мемо
    4) Engine.StartNewPage (или подобное)

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.