Печать HTML-контента

отредактировано 13:52 Раздел: FastReport 3.0
У меня есть BLOB-поле БД, c HTML-контентом. Реально в поле содержатся полноценные HTML-страницы, но только с простым форматированием(нет таблиц и графики)...Передо мной стоит задача: Печать содержимого этих полей в том виде, в котором они выводятся в браузере. Хотелось бы услышать все мнения и рекомендации по решению этой задачи в FR3. Пока у меня есть время, поэтому буду очень признателен за любые предложения.
С уважение, Шагин Александр

Комментарии

  • отредактировано 13:52
    У Memo, есть свойство AllowHTMLTag. Ставте в True. Простое HTML-форматирование отобразится.
  • отредактировано 13:52
    Содержимое-не просто простое(извиняюсь за тафтологию ;) HTML-форматирование, а полноценные HTML-страницы, которые реально отображаются в браузере...Задача в отображении именно таких страниц, т.е. в перспективе и с более сложным форматированием...есть ли готовые решения , или возможна ли разработка(модификация) компонент для расширения функциональности FR3? Какой вариант посоветуете?
  • отредактировано 13:52
    Почему вы не хотите что бы пользователи печатали это из браузера? Это же естественнее ;)
  • отредактировано 13:52
    Браузер как таковой явно не используется, только как ActiveX Contlol(точнее TDHTMLEdit) для отображения нужных страниц из БД. Говорить о конвертировании в RichText пока не хотелось бы.... Более примечательным кажется универсальное решение в виде специализированного компонента FR3 для этих целей: Возможно ли создание в FR3 подобного компонента с использованием возможностей ActiveX Control'ов для отображения HTML? Если принципиально возможно, то достаточно ли в документации по FR3 материала для этой работы?
  • отредактировано 13:52
    написал:
    Говорить о конвертировании в RichText пока не хотелось бы....
    Мне кажется придется конвертировать. HTML как таковой совершенно не подходит для печати. Отображение на экране и отображение на бумаге вещи разные.
  • отредактировано 13:52
    написал:
    написал:
    Говорить о конвертировании в RichText пока не хотелось бы....
    Мне кажется придется конвертировать. HTML как таковой совершенно не подходит для печати. Отображение на экране и отображение на бумаге вещи разные.
    Полностью согласен. Писать свой движок(а фактически свой браузер ;) ) отображения HTML на чем бы то ни было - вещь малоприятная...Я в архитектуре компонентов FR3 так подробно пока еще не разбирался и поэтому поднял вопрос об интегрировании возможностей ActiveX в FR3...Тогда 2-ой вариант: Конвертирование HTML в RichText - необходимо что-то свое или возможно обойтись фильтрами экспорта поставляемыми в комплекте(идет разговор о конвертировании отдельных элементов отчета, но не всего отчета в целом)
  • отредактировано 13:52
    Можно динамически конвертировать и в FastReport'е уже печатать RTF.
    Как вариант можно все страницы перегнать в RTF-формат и хранить их в RTF-е.
    Фильтры экспорта не подходят - они уже готовый отчет конвертируют.
  • отредактировано 13:52
    В случае предварительной конвертации данных задачу можно считать решенной...В моем же случае подходит только конвертирование "на лету". "Шкурный вопрос": не подскажете где посмотреть добропорядочные фильтры(производители, расположение и т.п.) для моей задачи...Буду благодарен очень...
    Меня еще очень заинтересовал механизм отображения TChart в FR3...возможен ли такой же фокус с TWebBrowser или TDHTMLEdit? Как я понял в целом решение сводится к преобразованию образа элемента в TMetafile, верно?
  • отредактировано 13:52
    Можно попробовать отобразить через OLE, с помощью TfrxOLEView. Правда, только одну страницу без разбивки на страницы.
  • отредактировано 13:52
    Как я понял из смежного форума "Как отформатировать строку по время постоения" из ответа AlexTZ " Этот объект полностью реализуется виндой. В процесс отображения вмешаться не можем." FR3 позволяет выодить на печать данные в том виде, в котором его отображают WindowsControls. Это то что могло бы полностью решить мою задачу. Хотелось бы услышать комментарии по этому поводу.
  • отредактировано 13:52
    Предварительный результат моих изысканий при решении этой проблемы:
    (Вариант 1 ) Прикрутить TWebBrowser для отображения содержимого не получилось - вышло криво и что надо в отчете не показывается...пока эту идею оставил.
    (Вариант 2 ) Попробовал конвертирование: Конверторы нашел такие: http://docfrac.sourceforge.net (Free) и http://www.easybyte.com/products/rtf2html.html (Trial) - использовать их не составило проблем(испытывал на RTF2HTML v5) ...Результат полностью соответствовал моим требованиям и даже несколько превзошел ожидания.
    Пока что вывод могу сделать такой: Для решения этой задачи необходимы хорошие конверторы из HTML в RTF...
    Большая просьба, кто встретит в сети подобные решения поделиться ссылкой или опытом работы.
  • отредактировано 13:52
    В продолжение когда-то поднятой темы...
    На просторах бескрайней сети мне как-то повстречались Delphi-исходники
    функции RtfToHtml. Код достаточно прозрачный и от его авторов каких-либо специальных требований к его использованию и модификации нет(
    Author list: Troels Skovmand Eriksen,TSEriksen@cyberdude.com, TSErikse@post8.tele.dk; Christopher Matthew Sansone ChrisSansone@rocketmail.com).
    Работает достаточно быстро и качественно...если чего не хватает дописать не составит большого труда - написано в лучших традициях программирования.
    Кого интересует, вышлю исходники (исх. ссылку к сожалению не помню)
    пишите на : saaivs ( собака ) gmail ( point ) com
  • отредактировано 13:52
    Посмотри TRichView(www.TRichView.ru) вроде как наиболее продвинутый компонент для отображения и редактирования RTF, но за деньги. Обёртки под FR 3.xx пока нет, но автор обещает в скором времени.

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

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