Проблема с печатью больших изображений

alexghaashalexghaash Йошкар-Ола
отредактировано November 2008 Раздел: FastReport 4.0
Возник вопрос: каким образом печатать картинку, которая по высоте не помещается на один лист отчета(длинная диаграмма)?
Поскольку автоматически она FastReport-ом не разбивается, даже при включенном AllowSplit (начинается бесконечная генерация страниц, пока не закончится память(в техподдержке уже 2 недели мне не отвечают почему то и этот баг, тянущийся с 3-й версии не правят).

Пока я использовал 2 решения:

1) Предварительное разбиение картинки на несколько частей, каждая по размеру листа, последняя часть - остаток и печать
частей через UserDataSet.

Недостаток: 1 лист включает в себя заголовок и далее идет пустое место. Картинка начинается с нового листа, а на последнем листе остается хвост в виде остатка картинки и опять же пустого места ниже, что ведет к лишнему расходу бумаги. Хотелось бы чтобы на первом листе была часть картинки, которая на него поместится, в т.с. на 1 лист расход бумаги меньше. Высота свободного пространства на первом листе мне заранее неизвестна(там много вариантов настройки отчета и вставка произвольного RTF из файла).

2) Предварительное разбиение картинки на много частей, каждая очень малая по высоте (1-3 см) , и дальнейшая печать через UserDataSet.

Бумага экономится, но имеется другое но: При экспорте в RTF, PDF при просмотре и печати на картинке возникают горизонтальные разрывы. Если в PDF они едва заметны, то в RTF в 2-3 пиксела.

Комментарии

  • stan5stan5 Новошахтинск
    отредактировано 20:08
    Можно так выйти из положения (конечно же лучше - если бы опция allowsplit в master data работала корректно, но...):

    1. Помещаем picture object под заголовком листа отчета (на сам отчет а не на master data), выбираем рисунок, делаем autosize;
    2. Два раза щелкаем на свободном месте отчета и в page options вручную устанавливаем значение page height (напр. 140 см) - так, чтобы уместился весь наш рисунок.
    3. Выводим на предпросмотр и печать, указав в настройках принтера что надо разбить большую страницу на куски формата А4.

    Получается приемлемо.
  • alexghaashalexghaash Йошкар-Ола
    отредактировано 20:08
    stan5 написал: »
    Можно так выйти из положения (конечно же лучше - если бы опция allowsplit в master data работала корректно, но...):

    1. Помещаем picture object под заголовком листа отчета (на сам отчет а не на master data), выбираем рисунок, делаем autosize;
    2. Два раза щелкаем на свободном месте отчета и в page options вручную устанавливаем значение page height (напр. 140 см) - так, чтобы уместился весь наш рисунок.
    3. Выводим на предпросмотр и печать, указав в настройках принтера что надо разбить большую страницу на куски формата А4.

    Получается приемлемо.

    Увы, не подойдет. Во первых нужна нумерация страниц(печатаются диаграммы длинной от 10 см до 2.5 метров), а в т.с. ее не будет.
    Во вторых научить теток-юзеров на десятках предприятий ставить галочку в настройках их принтера нереально(к тому же они все разных моделей).
    В третьих большая часть отчетов печатается вообще автоматом или сериями, без выбора принтера и предпросмотра.
    В общем пока надежда на то что разработчики сделают корректный Split или изобретать какой то шаманский метод.
  • stan5stan5 Новошахтинск
    отредактировано 20:08
    alexghaash написал: »
    Увы, не подойдет. Во первых нужна нумерация страниц(печатаются диаграммы длинной от 10 см до 2.5 метров), а в т.с. ее не будет.
    Во вторых научить теток-юзеров на десятках предприятий ставить галочку в настройках их принтера нереально(к тому же они все разных моделей).
    В третьих большая часть отчетов печатается вообще автоматом или сериями, без выбора принтера и предпросмотра.
    В общем пока надежда на то что разработчики сделают корректный Split или изобретать какой то шаманский метод.


    Ну что ж, в любом случае согласен с тем, что полностью работающее приложение лучше любых шаманских методов :) Ждем поправок.
  • отредактировано 20:08
    Я думаю эта программа подойдет для печати по частям, я на ней постеры печатал :)

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

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