Криво понимаем Rtf. Пример внутри.

отредактировано October 2007 Раздел: FastReport 4.0
Здравствуйте.

1. Скачиваю с сайта прекомпиленную демку 4.4.25. Устанавливаю, запускаю. Открываю первый пример (100.fr3, но какая разница?) в дизайнере...

2. Кладу на страницу компонент TfrxRichView.

3. Открываю в "ворде" (MS Word 2003, но, опять-же, не суть в каком) приложенный файл sample.doc. Делаю "Правка"-"Выделить всё", "Правка"-"Копировать"

4. перехожу в дизайнер фаста и вставляю (Ctrl+V) в TfrxRichView выделенную в ворде таблицу. Результат мне уже не нравится, TfrxRichView явно уже не так всё понял, однако нажимаю зелёную галочку (ОК) и вызываю превью отчёта...

5. Таблица отображается так-же криво...

вопрос очевиден - что делать и как решить проблему некорректного отображения таблицы в TfrxRichView ?

Спасибо.

Комментарии

  • отредактировано 07:34
    Для отображения rtf используются стнадартные системные библиотеки. Предлагаю "рисовать" таблицы родными средствами FR.
  • отредактировано 07:34
    Речь идёт не о рисовании таблиц, а об отображении в отчёте некоего поля "содержание", которое пользователи вводят совершенно независимо от остального отчёта. Один из способов ввода - вставка через буфер обмена кусков текста, например из "ворда". И вот, когда в этом вставленном тексте есть такая таблица - она печатается жутко криво. Вопрос - как бороть?
  • отредактировано October 2007
    Да там вообще весь делфийский richedit глючит (если сравнивать его с word'ом)...
    я сам в шоке от него.
  • Stalker4Stalker4 123
    отредактировано 07:34
    написал: »
    Да там вообще весь делфийский richedit глючит (если сравнивать его с word'ом)...
    я сам в шоке от него.

    По поводу RichEdit в Delphi вообще и в FR в частности:

    1) Тот RichEdit, что есть в D2-D7 поддерживает только стандарт RTF 1.0, где нет ни таблицы ни разных выравниваний.
    И только в D2005-D2007 по словам некоторых пользователей RichEdit стал поддерживать RTF 2.0, но не известно насколько полно. Но и в RTF 2.0 таблицы тоже нет.

    2) Тот frxRichEdit что есть в FR4, это почти точная копия RxRichEdit из RxLib, который поддерживает RTF 2.0 тоже с рядом ограничений. Скажем если в ворде создать несложную таблицу, сохранить ее в rtf и открыть в RxRichEdit, то внешне данные будут в виде таблицы, но вот линий таблицы там не будет.

    3) Таблицы, выравнивания по ширине некоторые другие вкустности формата RTF, появились только в стандарте RTF 3.0, но насколько я знаю на текущий момент не существует компонент для Delphi которые поддерживали бы RTF 3.0.

    Так что ИМНО нормальной поддержи формата RTF в Delphi не существует.

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

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