Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

RichEdit и RTF с картинками [D7, XP]


uniken1 ©   (2009-12-07 10:58:00) 

Поискав в инете инфу про поддержу картинок RichEdit'ом, я так понял что стандартный компонент использует версия 1, а поддержка картинок появилась с версии 2. Посмотрел исходник RichEdit'а там действительно подгружается библиотека и класс для версии 1. Сделал наследника и переопределил класс и библитеку, т.е. RichEdit должен быть версии 4.1(если смотреть в dll).

type
 TMyRich = class(TRichEdit)
 protected
 procedure CreateParams(var Params: TCreateParams); override;
 end;

procedure TMyRich.CreateParams(var Params: TCreateParams);
const
 RichEditModuleName = 'msftedit.dll';
 HideScrollBars: array[Boolean] of DWORD = (ES_DISABLENOSCROLL, 0);
 HideSelections: array[Boolean] of DWORD = (ES_NOHIDESEL, 0);
begin
 if FRichEditModule = 0 then
 begin
   FRichEditModule := LoadLibrary(RichEditModuleName);
   if FRichEditModule <= HINSTANCE_ERROR then FRichEditModule := 0;
 end;
 inherited CreateParams(Params);
 CreateSubClass(Params, 'RICHEDIT50W');
 with Params do
 begin
   Style := Style or HideScrollBars[false] or
     HideSelections[HideSelection];
   WindowClass.style := WindowClass.style and not (CS_HREDRAW or CS_VREDRAW);
 end;
end;


Но при вставке из буфера или через LoadFromFile картинки все равно не отображаются.
Подскажите пожалуйста, чего еще не хватает для того чтобы картинки отображались?


clickmaker   (2009-12-07 12:14:00) [1]

word до хрена всякой служебной инфы еще прописывает


KilkennyCat   (2009-12-07 12:07:00) [2]

Да, и по поводу

> RTF файл созданный и в WordPad и в Word,

они будут отличаться. Непомню уже где и как, но когда-то я тоже возился с ртф, и забавлялся по поводу такому соответствию стандартов.


KilkennyCat   (2009-12-07 12:05:00) [3]


> Т.е. стандартый компонетн использовать не получится?

У тебя уже нестандартный.


uniken1   (2009-12-07 11:53:00) [4]


> чтобы они были в формате RTF.

Но я открывл RTF файл созданный и в WordPad и в Word, или под RichEdit нужен какой-то свой собственный формат?


> например: http://forum.sources.ru/index.php?showtopic=114186

Т.е. стандартый компонетн использовать не получится? Только сторонний JVCL?


KilkennyCat   (2009-12-07 11:30:00) [5]

например: http://forum.sources.ru/index.php?showtopic=114186


KilkennyCat   (2009-12-07 11:27:00) [6]

чтобы они были в формате RTF.


Наверх

Титульная страница Поиск, карта сайта Написать письмо