Форум » [x]Harbour » ANN: Вышел релиз FastReport for [x]Harbour » Ответить

ANN: Вышел релиз FastReport for [x]Harbour

Sergey Spirin: Здравствуйте. Рад сообщить, что вышел релиз FastReport for [x]Harbour. Как всегда, информацию можно посмотреть: http://www.paritetsoft.ru/frh.htm Возможным русскоязычных покупателей лучше контактировать со мной напрямую по email. Цена для оплаты в рублях банковским переводом по выставленному счету- 9999 рублей. -- Спирин Сергей. Компания "Паритет Софт". FRH sales: http://www.paritetsoft.ru/frh.htm FRAX sales: http://www.hotsoft.ru/ALASKA/frax_eng.htm

Ответов - 258, стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 All

Andrey: Возвращаюсь опять к нерешенной проблеме ! Сделал пример ! Ссылка здесь: http://files.mail.ru/5PBFFP Выяснил опытным путем что размер файла лучше иметь меньше 200 кбайт, при других значениях просто ТОРМОЗА, а больше 1 Мбайта - просто виснет ! Я думаю лучше наверно сделать показ файла через загрузку его FastReport"ом, но я так и не смог его загрузить напрямую ! Буду признателен за помошь.

Sergey Spirin: Andrey пишет: Возвращаюсь опять к нерешенной проблеме ! Сделал пример ! На выходных посмотрю

Andrey: Уже вторые выходные проходят.....


Andrey: Уже месяц прошел .....

Sergey Spirin: Andrey пишет: Уже месяц прошел Увы, Андрей, некогда. Ждите.

Andrey: Понял, жду !!!

Sergey Spirin: Вышел FastReport for [x]Harbour (FRH) 4.8. Основная новость - это полностью переписанный PDF-экспорт. Решена проблема рендеринга вертикального и под углом текста, добавлена полная поддержка Unicode, увеличена скорость работы, уменьшены требования к памяти. Также может быть интересна поддержка двоичных данных в UserDataSet и специальная встроенная функция для загрузки картинок просто из Харбор-переменной. Также изменился дизайн страниц про FRH (заходите ), добавлены новые примеры. -- Спирин Сергей. Компания "Паритет Софт". FRH : http://www.paritetsoft.ru/frh.htm FRAX: http://www.paritetsoft.ru/frax.htm

Andrey: Sergey Spirin пишет: специальная встроенная функция для загрузки картинок просто из Харбор-переменной. Что то не нашел примера по этой функции....

Sergey Spirin: Andrey пишет: Что то не нашел примера по этой функции.... Даже интересно, а где искали? В харборе: MyVar := memoread("C:\MyPicture.jpg") В отчете: procedure ReportHOnStartReport(Sender: TfrxComponent); begin LoadImageFromHbVar(Picture1, 'MyVar'); end;

Andrey: Sergey Spirin пишет: В отчете: procedure ReportHOnStartReport(Sender: TfrxComponent); begin LoadImageFromHbVar(Picture1, 'MyVar'); end; Так я этим уже давно пользуюсь вовсю.....

Sergey Spirin: Серьезно? Функция LoadImageFromHbVar() существует в FRH 3 дня

Andrey: Sergey Spirin пишет: Серьезно? Код примерно одинаков, давали вы его сами: В харборе: MyLogoFirma := "путь до картинки" В отчете: procedure Picture1OnBeforePrint(Sender: TfrxComponent); begin Picture1.Picture.LoadFromFile(GetHbVar('MyLogoFirma')); end;

Andrey: И опять будет "беда" по передачи переменной.... Если картинка будет большая 1 или 2 Мб ...... Опять наверно будут тормоза... Так я и не дождался пока решение моей проблемы... Пришлось проверку вставлять, если текстовый файл меньше 500 Кб то показываю в Фасте, если больше, приходиться ВОРД грузить с файлом или БЛОКНОТ с файлом.... А хотелось бы от ВОРДА избавиться вообще....

Sergey Spirin: Andrey пишет: И опять будет "беда" по передачи переменной... Андрей, давайте без фантазий, тем более абсолютно беспочвенных. LoadImageFromHbVar() позволяет грузить картинки уже загруженные приложением в память, а не использовать внешний файл. Этого очень хотели fivewin-щики, которые любят хранить картинки в ресурсах. Суть операции в просто копировании одного куска памяти в другой. Нечему здесь тормозить. ---- Что касается проблемы с большим текстом. Здесь ситуация другая. Дней 5 назад я вспомнил об этой вашей проблеме, и честно говоря, был сильно удивлен, что она действительно существует Я отписал об этой проблеме Дэну (Зубов - сейчас ведущий по ядру 4-ки). Он поставил это в TODO. Дело в том, что в 4-ке WordWrap и разбивка по страницам для мемо происходит при каждой операции. И получается, что чем больше страниц занимает одно мемо, тем большое количество одних и тех же операций выполняется. В предыдущих версиях такого не было... Но, в любом случае, раз есть такой нюанс, то не нужно грузить файл в одно мемо. А нужно использовать для печати больших текстов UserDataSet. Просто, одна строка текста - это будет одна "запись" UserDataSet-а. Если текст уже выровнен по ширине, то вообще проблем нет, если нет, то придется сначала выровнить.

Andrey: Sergey Spirin пишет: Но, в любом случае, раз есть такой нюанс, то не нужно грузить файл в одно мемо. А нужно использовать для печати больших текстов UserDataSet. Просто, одна строка текста - это будет одна "запись" UserDataSet-а. А можно пример который я вам высылал - переделать под этот UserDataSet ? Буду очень признателен

Sergey Spirin: Andrey пишет: А можно пример который я вам высылал - переделать под этот UserDataSet ? Ладно. Пожалуй, сделаю что-нибудь типа SetTxtDataSet(), то есть весь функционал на своей стороне. Деньков 5 подождите. Просто глянул реализацию и подход MemoLine(), там также будет тормозить, так как будет проход по всему файлу при каждом обращении за следующей строкой... Просто не знаю, есть ли в Харборе аналогичные типовые средства, поэтому сделаю все чисто дельфийским кодом.

Sergey Spirin: Андрей. Я пересобрал вашу копию с новым функционалом. В общую сборку пока не выкладываю. Скачайте. Жду тестирования. Добавлен SetTxtDataSet() метод. Использование: FrPrn:SetTxtDataSet("MyText", "C:\MyText.txt") FrPrn:Show/DesignReport() В отчете появляется датасет, который выдает по одной строке текста. У датасета одно поле с именем LineOfText. В отчете добавьте MasterData и мемо на это поле. Оба - растягиваемые (Stretch). Собственно все. Протестируйте. Поддерживаются как обычные текстовые файлы, так unicode-тексты. Жду респонса, чтобы выложить в общую сборку.

Andrey: Спасибо, буду тестировать !

Andrey: Сделал тестовый пример ! Ошибки и что нужно доделать: 1) Сбивается источник данных. Сделал форму все работает, потом выходим из программы, заново заходим, смотрим "Просмотр отчета" и ошибка "Набор данных "MyText" не найден !. Заходим в Дизайнер, меню "Отчет", меню "Данные" и опять ставим "галочку" на "MyText" ... Т.е. при новом входе в программу "галочка" скидывается.... Может что-то я не так делаю... Исходник и пример высылаю.... 2) Если кодировка файла в ДОС (OEM) то показывает в отчете кракозябы. Есть ли переключатель для кодировок OEM, ANSI и др. ? Пример и исходник высылаю. Напоминаю сборка примера: HBMAKE frx-view2file.bc http://files.mail.ru/TK72SO Вообще классно получилось... Файл грузится моментально !!!

Sergey Spirin: Andrey пишет: 1) Сбивается источник данных. Ну, Андрей, это же же уже стало "общим местом" Надо наизусть заучить Все источники данных должны быть определены ДО загрузки отчета, а все переменные ПОСЛЕ. Поэтому, сначала: IF LEN(cFileText) > 0 //----------- Load text file for FastReport ------------------ FrPrn:SetTxtDataSet("MyText", cFileText) ENDIF А потом: FrPrn:LoadFromFile( cFileForm ) Поймите, отчет "грузясь", "разыскивает" все источники, которые в нем определены. Andrey пишет: 2) Если кодировка файла в ДОС (OEM) то показывает в отчете кракозябы. Есть ли переключатель для кодировок OEM, ANSI и др. ? Есть конечно, называется Font.Charset Для OEM поставьте OEM_CHARSET.



полная версия страницы