Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 25.04.2008, 20:24
mike1 mike1 вне форума
Прохожий
 
Регистрация: 25.04.2008
Сообщения: 5
Репутация: 10
По умолчанию Cделать из документа .doc страницу HTML

Подскажите, как из Вордовского документа сделать страницу HTML так чтобы сохранились картинки.
Ответить с цитированием
  #2  
Старый 25.04.2008, 22:53
san-46 san-46 вне форума
Активный
 
Регистрация: 25.04.2008
Сообщения: 383
Репутация: 33
По умолчанию

Документ надо сохранить в виде HTML документа (все делается в MS Word).
Файл/Сохранить как...
1. Изображение сохраняется в отдельном каталоге, на файлы из которого в HTML документе генеряться ссылки. В диалоге надо выбрать "Тип файла" - html.
2. Изображение сохраняется вместе с текстом в одном файле (так называемый веб-архив). В диалоге надо выбрать "Тип файла" - mht.
Другой вариант XML, но что касается картинок, то это ничем не будет отличаться от первого варианта.

Последний раз редактировалось san-46, 25.04.2008 в 22:59.
Ответить с цитированием
  #3  
Старый 26.04.2008, 15:01
mike1 mike1 вне форума
Прохожий
 
Регистрация: 25.04.2008
Сообщения: 5
Репутация: 10
По умолчанию

за ответ спасибо, но я имел ввиду - как это сделать из Делфи.
Я делаю программу которая из файла .doc делает страницу HTML. Чтобы данный документ можно было просматривать в инете.
Ответить с цитированием
  #4  
Старый 26.04.2008, 22:22
san-46 san-46 вне форума
Активный
 
Регистрация: 25.04.2008
Сообщения: 383
Репутация: 33
По умолчанию

Очень интересно. Никогда не слышал чтобы MS открыл (для общественного пользования) проприетарный (закрытый) формат своих файлов, который используется в документах MS Word и MS Excel.
"Я делаю программу...", мало делать программу, надо знать формат файлов .doc, чтобы прочитать из нее данные. А для этого, как минимум, надо быть в команде разработчиков MS Word (а вы когда-нибудь были в Рендмоде?).

Впрочем, выход все равно есть. Если мы не можем напрямую работать с файлами формата Word, то воспользуемся возможностью Delphi работать с Word'ом через OLE. Например, так: открыть документ Word (не показывая самого Word'а) и выполнить одну из выше приведенных мной команд.
Код:
procedure Doc2html;
var
  WApp : Variant;
begin
  try
    WApp:= CreateOleObject('Word.Application');
  except
    on E : EOleError do begin
      MessageDlg('MS Word на компьютере не найден!', mtError, [mbOk], 0);
      Exit;
    end;
  end;
  
  try
    WApp.DisplayAlerts := false;
    WApp.Documents.Open(<имя файла doc>); 
    WApp.ActiveDocument.SaveAs(FileName:=<имя файла html>, 
          FileFormat:= wdFormatHTML);
  finally
    WApp := Unassigned;
  end;
end;
В секции uses надо указать один из OLE серверов "word2000", "wordXP" или "word97". Чтобы знать какие есть, смотрите исходники (находятся в Delphi\Ocx\Servers\).
Недостаток: на компе должен быть установлен MS Word.

Последний раз редактировалось san-46, 27.04.2008 в 08:28.
Ответить с цитированием
  #5  
Старый 27.04.2008, 18:04
mike1 mike1 вне форума
Прохожий
 
Регистрация: 25.04.2008
Сообщения: 5
Репутация: 10
По умолчанию

Спасибо, за совет. Сейчас попробую))
Ответить с цитированием
  #6  
Старый 27.04.2008, 18:38
san-46 san-46 вне форума
Активный
 
Регистрация: 25.04.2008
Сообщения: 383
Репутация: 33
По умолчанию

Надо только закрыть Word. Этого оператора в приведенном коде нет.
Иначе запущенные Word'ы будут торчать в диспетчере задач и сколько будет обращение к такой процедуре, столько их и будет.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 21:58.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025