Размер поля с текстом в LazReport

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Размер поля с текстом в LazReport

Сообщение krab » 23.07.2010 12:29:18

Как сделать, чтобы высота поля с текстом в отчете LazReport подстраивалась автоматически, в зависимости от длины текста в ней (с переносом слов)?

Добавлено спустя 5 часов 21 минуту 46 секунд:
Нашел сам. Установить во всплывающем меню:
  • у Detail Data Band
    Stretched = true
  • у Text rectangle в том же band
    Word wrap = true
    Word break = true
    Autosize = false (работает только на увеличение ширины)
Text rectangle растянуть по высоте, чтобы выдавался за пределы band'а (который все равно покажет только то, что поместится в него).
krab
постоялец
 
Сообщения: 108
Зарегистрирован: 17.02.2010 18:23:08

Re: Размер поля с текстом в LazReport

Сообщение gNEV » 24.07.2010 03:01:11

Примерно схожая проблема. В самом lazreport все элементы memo выстраиваются нормально. Форматирую текст по правому краю (хотя пытался и по левому краю, результат тот же). Смотрю превью, текст отформатирован правильно (визуально). Отправляю на печать и получаю полный разброд текста (по горизонтали). Похоже зависит от количества символов в строке. Такое впечатление, что в конце каждой строки добавляются пробелы. Получается, что спозиционировать текст в конкретном месте по правому его краю не удается. Может быть кто-то встречался с такой проблемой?
Ось Ubuntu 10.4 gtk2 lazarus 0.9.29 (code typhon)
gNEV
новенький
 
Сообщения: 26
Зарегистрирован: 23.07.2010 14:20:06
Откуда: Санкт-Петербург

Re: Размер поля с текстом в LazReport

Сообщение Timid » 24.07.2010 09:56:02

Шрифты для печати и для вывода на экран различаются.
Попробуй курьер.
Timid
постоялец
 
Сообщения: 290
Зарегистрирован: 21.11.2007 21:33:15

Re: Размер поля с текстом в LazReport

Сообщение gNEV » 24.07.2010 17:51:56

Курьер не помог. Та же петрушка, строки прыгают. Завтра на работе отсканирую результат и попробую выложить, чтобы проблема была более понятна. Мне эту вещь надо побеждать однозначно! Тут два варианта - или я ее побеждаю или иду топиться... :) Все труды по переносу проектов с Дельфей на Линукс становятся обреченными в один миг из-за такой казалось бы ерунды...

Добавлено спустя 1 час 21 минуту 20 секунд:
Вот, что в дизайнере:
http://picasaweb.google.ru/lh/photo/pp6BxEWoRjjP4do18wChGQ?feat=directlink
Вот превью отчета:
http://picasaweb.google.ru/lh/photo/9U81zcuuzJZertrMtjFYSQ?feat=directlink
Ну и это после печати на бумаге:
http://picasaweb.google.ru/lh/photo/Zuei1F7Io9Sui-Nhz8ULdA?feat=directlink
Шрифты не те почему-то, но я пробовал и с курьером, принцип не меняется...
gNEV
новенький
 
Сообщения: 26
Зарегистрирован: 23.07.2010 14:20:06
Откуда: Санкт-Петербург

Re: Размер поля с текстом в LazReport

Сообщение krab » 24.07.2010 19:41:51

gNEV писал(а):Курьер не помог. Та же петрушка, строки прыгают.

"Унифицированная..., утверждена...постановлением....от 5" - все это можно сделать одним большим текстовым полем (многострочным) с align вправо вместо нескольких однострочных. И напиши свойства полей(text rectangle) и band'ов (те, что в контекстном меню с флажками у band/rectangle).
krab
постоялец
 
Сообщения: 108
Зарегистрирован: 17.02.2010 18:23:08

Re: Размер поля с текстом в LazReport

Сообщение gNEV » 24.07.2010 20:00:52

Делал конечно и одним полем с форматированием по правому краю, тоже самое... Поэтому и начал построчно делать.
Свойства которые в popup - чеки на Растянутое и Перенос слов (в текстовых). В band чеков нет нигде. Пробовал менять свойства, результата нет.
gNEV
новенький
 
Сообщения: 26
Зарегистрирован: 23.07.2010 14:20:06
Откуда: Санкт-Петербург

Re: Размер поля с текстом в LazReport

Сообщение krab » 24.07.2010 20:21:00

gNEV писал(а):на Линукс

Если при печати получаешь другой шрифт, не такой как в Designer, дело может быть в настройках Linux. Еще неизвестно, как LazReport с ним взаимодействует. Попробуй напечатать в .ps-файл, открыть его в KPDF (программа из KDE, заодно увидишь, как он там выглядит), а оттуда уже подавать на принтер. В КДЕ обычно настройки более-менее рабочие.
krab
постоялец
 
Сообщения: 108
Зарегистрирован: 17.02.2010 18:23:08

Re: Размер поля с текстом в LazReport

Сообщение gNEV » 24.07.2010 20:46:46

krab писал(а):
gNEV писал(а):на Линукс

Если при печати получаешь другой шрифт, не такой как в Designer, дело может быть в настройках Linux. Еще неизвестно, как LazReport с ним взаимодействует. Попробуй напечатать в .ps-файл, открыть его в KPDF (программа из KDE, заодно увидишь, как он там выглядит), а оттуда уже подавать на принтер. В КДЕ обычно настройки более-менее рабочие.

Вполне возможно. Просто эта ситуация настолько примитивна, в смысле, что без правильного форматирования текста смысл самого lazreporta теряется напрочь.
Вот еще один скан, более наглядное положение дел при включенной рамке. Видно, как сдвигается рамка. Впечатление такое, что просто добавляются пробелы. В редакторе рамка была строго по правому краю текста. Сверху вниз (выравнивание по правому краю, по левому, по центру):
http://picasaweb.google.ru/lh/photo/A3HVo5i2bgV5y-fDHXBT2A?feat=directlink
gNEV
новенький
 
Сообщения: 26
Зарегистрирован: 23.07.2010 14:20:06
Откуда: Санкт-Петербург

Re: Размер поля с текстом в LazReport

Сообщение Padre_Mortius » 25.07.2010 00:37:55

Я рекомендовал бы сначала скомпилить примеры от LazReport'а и посмотреть будет ли там все хорошо или взять отчеты от alex'а c shamangrad.net. Если и с примерами все нормально, то стоит уже разбираться со своим шаблоном. Если и примеры будут криво отображаться, то стоит уже смотреть параметры ghostscript
Последний раз редактировалось Padre_Mortius 25.07.2010 00:39:10, всего редактировалось 1 раз.
Padre_Mortius
энтузиаст
 
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Re: Размер поля с текстом в LazReport

Сообщение krab » 25.07.2010 00:38:37

Как вариант можешь еще попробовать печатать результат работы TfrHtmlExport отчета.
krab
постоялец
 
Сообщения: 108
Зарегистрирован: 17.02.2010 18:23:08

Re: Размер поля с текстом в LazReport

Сообщение alexs » 25.07.2010 22:54:05

Проблема обычно с только с GTK(1/2) приложениями - там идёт печать через пост-скрипт. Вот тут косяки обычно со шрифтами и вылазят. В КДЕ всё ок - там испольузется для печати вызовы API от KDE.
В любом случае - смотри в сторону соответсвия шрифтов в отчёте и в ghostscript.
PS
Народ - давайте библиотеку форм под LazReport равивать!
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4060
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: Размер поля с текстом в LazReport

Сообщение gNEV » 26.07.2010 10:54:19

alexs - вот решу проблему с форматированием и с удовольствием добавлю кадровые формы (приказы типовые и пр.). В Виндах у меня все уже давно работает, вот теперь начал переводить на Линукс.
По своей теме. Получатся, что надо использовать шрифты Type 1, я правильно понял? Добавив их соответственно в директорию шрифтов gs.
P.S.
Забыл сказать, что при выборе шрифтов из дизайнера фактически ничего не происходит визуально. При выборе из popup menu изменения происходят и шрифты там более знакомые появляются в отличии от дизайнера. Сильно не пинайте, я в печати и шрифтах практический нуль. Для меня всегда печать состояла из просмотрел - напечатал, ну предварительно создал форму конечно.

Добавлено спустя 1 час 37 минут 44 секунды:
Качнул пару форм с Шаманграда - вроде печатает вполне прилично, ну не на 5, но твердая 4 есть. Обратил внимание на шрифт используемый в формах Liberation Sans. Наверное с ним более-менее жить можно. Хотя, например если делать "шапку" документа из 4-х строк, как у меня на сканах, все равно слово "УТВЕРЖДЕНА" (в заглавных буквах) съезжает вправо. Зато остальные три строчки практически ровно. Поскольку количество строк в данном вопросе не принципиально, то буду делать как у alexs-а из трех строчек. При таком построении текста (и в его написании) печатается ровно по правому краю.
PS
Огромное спасибо alexs за форму Т-2! :) Я ее за долгие годы так и не сдюжил нарисовать...
gNEV
новенький
 
Сообщения: 26
Зарегистрирован: 23.07.2010 14:20:06
Откуда: Санкт-Петербург

Re: Размер поля с текстом в LazReport

Сообщение AkANz » 17.08.2010 07:16:18

Пытаюсь создать отчет.
Помещаю band Мастер-данные (у него выставлено свойство Растягиваемый)
на band Мастер-данные помещаю поля из набора данных (следуют друг под другом)
[zqDnevnikHospitalIn."date_osmotr"]
[zqDnevnikHospitalIn."dnevnik_text"] тип поля Text (выставлено свойство Растягиваемый)
Если в таком виде оставить, то band автоматически расширяется по высоте и поле [zqDnevnikHospitalIn."dnevnik_text"] отображается полностью,
но мне необходимо ниже поместить еще одно поле [zqDnevnikHospitalIn."name_spr_doctor"], т.е так:
[zqDnevnikHospitalIn."date_osmotr"] высота фиксир.
[zqDnevnikHospitalIn."dnevnik_text"] высота переменная
[zqDnevnikHospitalIn."name_spr_doctor"] высота фиксир.
В таком случае поле [zqDnevnikHospitalIn."dnevnik_text"] перестает растягиваться и отображает только одну строчку.

В букваре к FastReport 2.3 что то подобное оговаривается в п.4.6, но мне не понятна фраза: "... Аналогичные отчеты можно построить используя регионы (regions)...". В lazreport я что-то регионов не нашел.

Подскажите, пожалуйста, как мне побороть это.
AkANz
новенький
 
Сообщения: 26
Зарегистрирован: 16.03.2010 13:59:02
Откуда: Алтайский край


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 40

Рейтинг@Mail.ru