Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 547

/ вопрос открыт /

Здравствуйте, уважаемые эксперты!
Вот мой вопрос!
Мне нужно в дельфях выцепить изображение из файла формата doc не используя word, ни где не могу найти спецификации для этого формата (rtf не подходит) ПАМАГИТЕ!

егоров Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: егоров (статус: Посетитель)
Вопрос отправлен: 3 мая 2007, 16:12
Состояние вопроса: открыт, ответов: 4.

Ответ #1. Отвечает эксперт: Вадим К

Здравствуйте, егоров!
Формат вордовских документов как бы официально не разглашается. Тоесть явной спецификации вы не найдёте. Есть отдельные наработки ентузиастов.
Есть такие пути.
- Поставить на форму OLEContainer и загрузить в него документ. Корявенько, да и ворд всё равно нужен
- Скачать исходники OpenOffice и изучать, изучать.

З.Ы. Небось формулы отображать захотелось?:)

Ответ отправил: Вадим К (статус: Академик)
Время отправки: 3 мая 2007, 17:44
Оценка за ответ: 3

Ответ #2. Отвечает эксперт: Матвеев Игорь Владимирович

Здравствуйте, егоров!
Решить данную задачу без использования Word'а довольно сложно, это связано с тем, что формат DOC значительно отличается от RTF, хотя и имеет схожую структуру.

Есть программа Word2Pictutre - http://www.wordcnv.com/word2pictures.html, которая делает именно то, что Вам нужно, и без использования OLE.
К сожалению разработчики не разглашают алгоритмов ее работы, поэтому, если это нужно Вам именно в своей программе остается только использование OLE.

Ответ отправил: Матвеев Игорь Владимирович (статус: Студент)
Время отправки: 4 мая 2007, 06:25
Оценка за ответ: 3

Ответ #3. Отвечает эксперт: min@y™

Я по натуре исследователь всяких разных фич и пр. Поскольку на простые вопросы мне здесь отвечать не дают (не успеваю, получаю почту раз в сутки), т.е. открываю вопросы, а на них уже ответили, я решил задуматься над твоим вопросом.

Знач так, вот что я сделал.
1) Открыл Word,
2) создал пустой документ,
3) вставил туда картинку JPEG,
4) открыл картинку и сохранённый документ в Total Commander по F3 в HEX-режиме.

Угадай, что я увидел! JPEG-картинка в документе валяется в совершенно неизменном виде!

Все JPEG-картинки начинаются одинаково: с символов яШя (FF D8 FF), так что найти начало каждой картинки в документе труда не составит.

Теперь надо определиться с размером картинки. Размер вставленного мной файла = 9362 байт = 2492h, т.е. в документе должна быть сигнатура 92 24 00 00 (младшими байтами вперёд). Тут меня ждал обломчик: такой сигнатуры я не нашёл. Однако, по смещению в -11h байт от начала картинки сидит сигнатура A3 24 00 00, это Integer-число, ровно на 11h большее размера файла картинки!

Здесь меня позвал начальник, пойду тащить изделие №ххххх в цех. Дальше давай сам.

З.Ы. Вопросы будут - в мыло.

Ответ отправил: min@y™ (статус: Доктор наук)
Время отправки: 4 мая 2007, 08:49
Оценка за ответ: 5

Ответ #4. Отвечает эксперт: Новаковский Юрий Аврамович

Здравствуйте, егоров!
Формат вордовских документов не только не разглашается, но и защищен авторским правом,
использовать документы ворд можно только при наличии лицензионной версии Microsoft Office,
и только через OLEContainer.
Можете обратиться в компанию Microsoft и получить там разрешение, как Borland и сделала.
Иначе Вы рискуете попасть, как тот директор школы, да и других подставить.
Удачи!

Ответ отправил: Новаковский Юрий Аврамович (статус: 4-ый класс)
Время отправки: 5 мая 2007, 11:43
Оценка за ответ: 3


Мини-форум вопроса

Всего сообщений: 1; последнее сообщение — 3 мая 2007, 19:06; участников в обсуждении: 1.
Denisss

Denisss (статус: 2-ой класс), 3 мая 2007, 19:06 [#1]:

Формат Office Document является закрытым. Более того, с каждой новой версией Word претерпевает некие изменения. Именно поэтому, все Европейские страны сидят на формате документов ODT, являющемся открытым и входящим в стандарт ISO. Поэтому, Вам придется самостоятельно изучать формат doc (для каждой версии Word) и извлекать из него изображения.

Удачи!

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:29
Выполнено за 0.02 сек.