Отображение RTF-текста в поле Memo

отредактировано August 2006 Раздел: FastReport 3.0
Собственно, и вопрос: Вычитываю с CLOB-a текст (в RTF формате) , и хочу его отобразить в МемоControl поле для редактирования. Вывод идет в уникоде. чего изменить надо для читабельности???? Если можно - подоходчивей, впервые взялся за FastReport ;) )
вычитываю так вот примерно
MEM3.Lines.Text:=<qVAR."Text">;
где MEM3 - поле MemoControl
qVAR."Text" - результат запроса к таблице с текстом

Заранее сенкс )

Комментарии

  • Stalker4Stalker4 123
    отредактировано 01:32
    Если текст у тебя RTF, то и использовать надо соответствующий компонент RichText из FR3.
  • отредактировано August 2006
    Так вот и вопрос в том, как мне его применить к MemoControl в форме ввода, (DialogPage). Повторяюсь, с FR малознаком ;)
  • Stalker4Stalker4 123
    отредактировано August 2006
    А, так вот что ты хочешь ;)

    Ну тут простого пути нет, так как в FR3 диалоговый контрол для RTF отсутствует.

    Так что у тебя два выхода: Либо уговорить разработчиков FR3 его туда добавить (но на это ИМНО мало шансов) либо сделать его самому. Там работы на пару часов от силы. В качестве примера можешь посмотреть в модуле frxDCtrl компонент TfrxMemoControl ну и документацию по созданию компонент в среде FR3 так же не забудь почитать.
  • отредактировано 01:32
    А может все-же можно как-то RTF текст преобразовать в обычный путем использования переменных какого-нить типа? ;) )
    Ну не очень хочется заморачиваться с написанием компонент....
  • Stalker4Stalker4 123
    отредактировано 01:32
    Ну переменных такого типа конечно нет. ;)

    Но если тебя устроит обычный текст из RTF то выход конечно есть.
    Напиши пользовательскую функцию которая будет принимать текст в формате RTF и возвращать его в виде простого текста.

    Сама эта функция в простейшем виде содержит в себе создание стандартного TRichEdit, загрузка в него RTF и выгрузка из него в виде обычного текста.

    Либо можешь написать сам или поискать в инете подобные функции которые умеют из RTF вытаскивать обычный текст.
  • gpigpi
    отредактировано 01:32
    Попробуйте в скрипте Memo1.Lines:=Rich1.RichEdit.Lines;
    Но не уверен, что правильно будет отображаться Unicode
  • отредактировано 01:32
    gpi написал:
    Попробуйте в скрипте Memo1.Lines:=Rich1.RichEdit.Lines;
    Но не уверен, что правильно будет отображаться Unicode
    К сожалению, не помогло....
    мож кто подкинет функцию преобразования, буду очень благодарен...
    (на Delphi не пишу, просто нужно исправить отчеты, разработанные не мной много раньше...)

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

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