15 мая 2023 года "Исходники.РУ" отмечают своё 23-летие!
Поздравляем всех причастных и неравнодушных с этим событием!
И огромное спасибо всем, кто был и остаётся с нами все эти годы!

Главная Форум Журнал Wiki DRKB Discuz!ML Помощь проекту




Как загрузить документ Word в RitchText контрол или как преобразовать DOC в RTF при помощи OLE

Создайте новое приложение и пометите на него:
  кнопку с именем Button3,
  объект RitchText с именем WordEditor
  и компонент OpenDialog.
Теперь посмотрим, как пролистывать все файлы *.doc и загружать их в объект RitchText.

ЗАМЕЧАНИЕ: Format:=6 указывает Word-у на необходимость сохранять файл как RTF. Расширения недостаточно.
Другие форматы файлов:
.Format     File
Argument    Format
--------    ------

   0        Нормальный (формат Word)
   1        Шаблон документа
   2        Только текст (extended characters saved in ANSI character set)
   3        Текст+Переносы (plain text with line breaks; extended
            characters saved in ANSI character set)
   4        Только текст (PC-8) (extended characters saved in IBM PC
            character set)
   5        Текст+Переносы (PC-8) (text with line breaks; extended
            characters saved in IBM PC character set)
   6        Формат Rich-text (RTF)


***********************************************************************
procedure TImport_Form.ToolButton3Click(Sender: TObject);
Var
  WordApp:Variant;
begin
if OpenDialog1.Execute then
Begin
  Edit1.Text:=ExtractFileName(OpenDialog1.FileName);
  StatusBar1.SimpleText:=OpenDialog1.FileName;
  WordApp := CreateOleObject('Word.Basic');
  If not VarIsEmpty(WordApp) then
   Begin
    WordApp.FileOpen(OpenDialog1.FileName);
    WordApp.FileSaveAs(Name := 'c:\temp_bb.rtf', Format:=6);
    WordApp.AppClose;
    WordApp:=Unassigned;
    WordEditor.Lines.LoadFromFile('c:\temp_bb.rtf');
   End Else ShowMessage('Could not start MS Word');
End;

end;
*************************************************************************