B>>Возможно ли в принципе получить официальный доступ к формату сабжа? M>на вряд ли
Вообще-то есть вариант.
Документ "Information about how to extract Office file formats and schemas" http://support.microsoft.com/default.aspx?scid=kb;en-us;840817
Попробуем получить лицензию
B>>Под доступом я имею в виду возможность легально читать документ без наличия установленного Word'а на компе. M>какая именно информация интересует — только текст или что-то еще?
Для начала хотелось бы конечно получить текст, а потом возможно получить лицензию на право использовать в своих продуктах.
Здравствуйте, bigwizard, Вы писали:
B>Возможно ли в принципе получить официальный доступ к формату сабжа? B>Под доступом я имею в виду возможность легально читать документ без наличия установленного Word'а на компе.
Офисный файл — это compound document, читать содержимое можно апишными функциями, без офиса. Текст получить так можно, а вот если интересуют все "навороты" формата, то нужно разбираться с форматами потоков. Отправная точка для изучения — МСДН, поиск по compound document или storage.
У меня такой вопрос:
Возможно ли в принципе получить официальный доступ к формату сабжа?
Под доступом я имею в виду возможность легально читать документ без наличия установленного Word'а на компе.
"bigwizard" <28925@users.rsdn.ru> wrote in message news:1243252@news.rsdn.ru... > У меня такой вопрос: > Возможно ли в принципе получить официальный доступ к формату сабжа? > Под доступом я имею в виду возможность легально читать документ без наличия установленного Word'а на компе.
Ну OpenOffice же читает его легально (?). И ничего, MS на него в суд не подает. Хотя насколько я знаю, они всю инфу реверс-инжинирингом добывали, так что можно в исходниках опенофиса посмотреть.
Здравствуйте, bigwizard, Вы писали:
B>У меня такой вопрос: B>Возможно ли в принципе получить официальный доступ к формату сабжа? B>Под доступом я имею в виду возможность легально читать документ без наличия установленного Word'а на компе.
На счет легальности не знаю, но в старых MSDN, когда еще VB5 был, была документяция на форматы EXCEL и WORD и вполне легально. Потом они прикрыли эту лавочку, но форматы универсальные и в новых версиях скорей всего только тэги новые добавились.
Здравствуйте, YuriKobets, Вы писали:
B>>У меня такой вопрос: B>>Возможно ли в принципе получить официальный доступ к формату сабжа? B>>Под доступом я имею в виду возможность легально читать документ без наличия установленного Word'а на компе.
YK>На счет легальности не знаю, но в старых MSDN, когда еще VB5 был, была документяция на форматы EXCEL и WORD и вполне легально. Потом они прикрыли эту лавочку, но форматы универсальные и в новых версиях скорей всего только тэги новые добавились.
Тэги? Ну-ну... А эту "документацию" и сейчас на wotsit можно найти, вот только написать по ней что-либо не получится
Здравствуйте, bigwizard, Вы писали:
B>Доброго Всем Дня!
B>У меня такой вопрос: B>Возможно ли в принципе получить официальный доступ к формату сабжа?
Где искать описание, тебе уже ответили.
B>Под доступом я имею в виду возможность легально читать документ без наличия установленного Word'а на компе.
Реально и читать и писать... Если есть большое желание, могу выслать кусочки класса, который пишет в формате Word-документа. Есть еще более менее полное описание электронных таблиц: файл объемом 990К
B>С уважением, B>bw.
Здравствуйте, denis_orri, Вы писали:
B>>Под доступом я имею в виду возможность легально читать документ без наличия установленного Word'а на компе.
_>Реально и читать и писать... Если есть большое желание, могу выслать кусочки класса, который пишет в формате Word-документа.
Если не сложно, будь добр, вышли и на . Сколько не искал пример кода нашел только в OpenOffice. Но этот код сильно уж наворочен.
_>Реально и читать и писать... Если есть большое желание, могу выслать кусочки класса, который пишет в формате Word-документа. Есть еще более менее полное описание электронных таблиц: файл объемом 990К
Спасибо, Денис. Кусочек можно послать на <my nick> at mail.ru
Про описание электронных таблиц, увы считать полным его не приходится
1.2.1 Project Status
Chapter Contents Status
1 Introduction Common information = Done
2 Document Structure Raw document structure overview = Done
3 Common Record Substructures Parts of records for common use = Done
4 Formulas
— Structure of RPN token arrays = Done
— Detailed description of all tokens = In progress
5 Worksheet/Workbook Structure Abstract description of complex features represented
by several records = In progress
6 Worksheet/Workbook Records Detailed description of all records of the
worksheet/workbook stream = In progress
7 Drawing Objects, Escher Layer = Not started
8 Charts = Not started
9 PivotTables = Not started
10 Change Tracking = Not started
С уважением,
bw.
Re[2]: Формат MS Word документа
От:
Аноним
Дата:
28.06.05 12:54
Оценка:
Здравствуйте, denis_orri, Вы писали:
_>Реально и читать и писать... Если есть большое желание, могу выслать кусочки класса, который пишет в формате Word-документа. Есть еще более менее полное описание электронных таблиц: файл объемом 990К
Может я что-то не понимаю...
А разве нельзя интегрировать функциональность того же excel-a в программу используя OLE или что-нибудь похожее, затем просто вызывать соответствующие интерфейсы.
Так наверно вполне можно программно создать и сохранить документ excel.
wrote in message news:1245122@news.rsdn.ru... > А разве нельзя интегрировать функциональность того же excel-a в программу используя OLE или что-нибудь похожее, затем просто вызывать соответствующие интерфейсы. > Так наверно вполне можно программно создать и сохранить документ excel.
Ага, только Word и Excel совсем не бесплатные, и стоят далеко не у каждого у кого есть Windows.
Здравствуйте, Alex Mova, Вы писали:
B>>Возможно ли в принципе получить официальный доступ к формату сабжа? B>>Под доступом я имею в виду возможность легально читать документ без наличия установленного Word'а на компе. AM>Офисный файл — это compound document, читать содержимое можно апишными функциями, без офиса. Текст получить так можно, а вот если интересуют все "навороты" формата, то нужно разбираться с форматами потоков. Отправная точка для изучения — МСДН, поиск по compound document или storage.
Вот только не получится ничего для общего случая, даже текст извлечь — например из fast saved точно не получится
B>>Возможно ли в принципе получить официальный доступ к формату сабжа? B>>Под доступом я имею в виду возможность легально читать документ без наличия установленного Word'а на компе. AM>Офисный файл — это compound document, читать содержимое можно апишными функциями, без офиса. Текст получить так можно, а вот если интересуют все "навороты" формата, то нужно разбираться с форматами потоков. Отправная точка для изучения — МСДН, поиск по compound document или storage.
Спасибо, Алекс. Но вопрос несколько шире. Например, я же не могу использовать Structured Storage API в ОС отличных от MS Windows
Я уже приводил ссылку на документ, в котором рассказывается про доступ к форматам. здесь
Здравствуйте, masquer, Вы писали:
M>Тэги? Ну-ну... А эту "документацию" и сейчас на wotsit можно найти, вот только написать по ней что-либо не получится
Они там называются немного по-другому, а формат носит имя BIFF (если мне не изменяет память). И написать очень даже получается. Я наваял библиотечку для создания XLS файлов. Только давно это было.
Здравствуйте, YuriKobets, Вы писали:
M>>Тэги? Ну-ну... А эту "документацию" и сейчас на wotsit можно найти, вот только написать по ней что-либо не получится
YK>Они там называются немного по-другому, а формат носит имя BIFF (если мне не изменяет память). И написать очень даже получается. Я наваял библиотечку для создания XLS файлов. Только давно это было.
Для экселя они records называются, для ворда sprm, и для экселя еще может и можно что-то простенькое написать — он гораздо проще формата ворда и немного лучше документирован, но все равно для всех офисных форматов документация неполная, а зачастую или просто лживая, или показывает частный случай, а об общем умалчивается (иногда наоборот).
Здравствуйте, masquer, Вы писали:
M>Для экселя они records называются, для ворда sprm, и для экселя еще может и можно что-то простенькое написать — он гораздо проще формата ворда и немного лучше документирован, но все равно для всех офисных форматов документация неполная, а зачастую или просто лживая, или показывает частный случай, а об общем умалчивается (иногда наоборот).
Так с этим я и не спорю, только не лживая, а скорей всего много умалчивают. Не сказал бы, что для ворда сложней. Хотя там документированно только небольшая часть. Остальное как обычно отладкой выясныется. Но факт в том, что общий формат известен.
Здравствуйте, YuriKobets, Вы писали:
YK>Здравствуйте, masquer, Вы писали:
M>>Для экселя они records называются, для ворда sprm, и для экселя еще может и можно что-то простенькое написать — он гораздо проще формата ворда и немного лучше документирован, но все равно для всех офисных форматов документация неполная, а зачастую или просто лживая, или показывает частный случай, а об общем умалчивается (иногда наоборот).
YK>Так с этим я и не спорю, только не лживая, а скорей всего много умалчивают.
Ну если написано одно, а на практике другое, то наверное все-таки лживая
YK>Не сказал бы, что для ворда сложней. Хотя там документированно только небольшая часть. Остальное как обычно отладкой выясныется. Но факт в том, что общий формат известен.
Боюсь, что Ваша теоретическая уверенность практикой никак не подтверждается, ну например нету программ/библиотек гарантированно прочитающих любой документ правильно. Мои библиотеки это гарантируют для 95-98% документов, у ОпенОфиса такой процент чуть меньше (т.к. там есть несколько концептуальных ошибок), даже сам ворд не учитывает те "наставления", которые прописаны в той "документации"
По моим прикидкам если все-таки кто-то сообразить как там свести все во что-то толковое — и то процент читаемых документов будет не больше 60%. Ну, извлекать только текст и ничего больше должно получится, не больше
Здравствуйте, Зверёк Харьковский, Вы писали:
M>>А эту "документацию" и сейчас на wotsit можно найти, вот только написать по ней что-либо не получится
ЗХ>Может вы ее просто готовить не умеете? ЗХ>У меня получилось почему-то
А что именно получилось и для какого формата? В любом случае у меня есть test-case как для экселя, так и для ворда, на которых все известные мне парсеры ведут себя некорректно, хотя написаны по документации. Под словами что-либо понимается не простое извлечение текста, естественно, хотя и тут есть много вопросов.
Здравствуйте, masquer, Вы писали:
M>>>А эту "документацию" и сейчас на wotsit можно найти, вот только написать по ней что-либо не получится
ЗХ>>Может вы ее просто готовить не умеете? ЗХ>>У меня получилось почему-то
M>А что именно получилось и для какого формата? В любом случае у меня есть test-case как для экселя, так и для ворда, на которых все известные мне парсеры ведут себя некорректно, хотя написаны по документации. Под словами что-либо понимается не простое извлечение текста, естественно, хотя и тут есть много вопросов.
Я уже по другим Вашим сообщениям в этой ветке понял, что Вы в этой теме собаку съели
Так что беру свой "наезд" назад — во-первых, я пока только текст извлекаю, во-вторых, в качестве источника информации я использовал не только эти доки, но и исходники antiword.
К слову сказать, если поделитесь сложновывернутыми test-cases для ворда (а равно и вопросами, которые у Вас имеются к извлечению текста), моя благодарность не будет знать границ.
Здравствуйте, Зверёк Харьковский, Вы писали:
M>>А что именно получилось и для какого формата? В любом случае у меня есть test-case как для экселя, так и для ворда, на которых все известные мне парсеры ведут себя некорректно, хотя написаны по документации. Под словами что-либо понимается не простое извлечение текста, естественно, хотя и тут есть много вопросов.
ЗХ>Я уже по другим Вашим сообщениям в этой ветке понял, что Вы в этой теме собаку съели
Я этой собакой уже 5й год почти давлюсь
ЗХ>Так что беру свой "наезд" назад — во-первых, я пока только текст извлекаю, во-вторых, в качестве источника информации я использовал не только эти доки, но и исходники antiword.
Если удастся собрать исходники антиворда то текст он извлекает нормально с некоторыми оговорками, но для восстановления форматирования в общем случае непригоден.
ЗХ>К слову сказать, если поделитесь сложновывернутыми test-cases для ворда (а равно и вопросами, которые у Вас имеются к извлечению текста), моя благодарность не будет знать границ.
ЗХ>>Так что беру свой "наезд" назад — во-первых, я пока только текст извлекаю, во-вторых, в качестве источника информации я использовал не только эти доки, но и исходники antiword. M>Если удастся собрать исходники антиворда то текст он извлекает нормально с некоторыми оговорками, но для восстановления форматирования в общем случае непригоден. ЗХ>>К слову сказать, если поделитесь сложновывернутыми test-cases для ворда (а равно и вопросами, которые у Вас имеются к извлечению текста), моя благодарность не будет знать границ. M>Ушло приватом.
И мне, пожалуйста, на <nick> at mail.ru
Здравствуйте, masquer, Вы писали:
M>Здравствуйте, Alex Mova, Вы писали:
M>Вот только не получится ничего для общего случая, даже текст извлечь — например из fast saved точно не получится
Здравствуйте, bizhan, Вы писали:
M>>Вот только не получится ничего для общего случая, даже текст извлечь — например из fast saved точно не получится
B>Текст из fast-saved извлекается на раз.
Без разбора потока WordDocument и со смешанными блоками анси+юникод? Т.е. найти начало текста и линейно скопировать? Ню-ню