Lazarus редактирование *.doc (MSWord97-2003)

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Ответить
gvido
постоялец
Сообщения: 188
Зарегистрирован: 28.03.2012 11:35:31

Lazarus редактирование *.doc (MSWord97-2003)

Сообщение gvido »

Ребяты, подскажите компонент для редкатирования документов *.doc (MSWord97-2003) (Не *.docx) без оффиса по Виндой?
Аватара пользователя
Снег Север
долгожитель
Сообщения: 3067
Зарегистрирован: 27.11.2007 15:14:47
Контактная информация:

Сообщение Снег Север »

Под лазарус, разве что, через опенофис.
Под Делфи есть платный TMSWordDocument - http://www.scalabium.com
alex208210
постоялец
Сообщения: 207
Зарегистрирован: 12.05.2010 13:16:51

Сообщение alex208210 »

Лучшее что удалось найти в свое время zenxmlss
gvido
постоялец
Сообщения: 188
Зарегистрирован: 28.03.2012 11:35:31

Сообщение gvido »

Смысл затеи простой. Есть типовой шаблон ответа. И он именно в формате doc (MSWord97-2003). Правиться будут значения в 4-6 строках. Передавать нужно тоже *.doc файл. Очень не хочется ставить офисный пакет для правки одного документа. Тем более, что это действие выполняется раз в 7-10 дней.
Аватара пользователя
Sharfik
энтузиаст
Сообщения: 836
Зарегистрирован: 20.07.2013 01:04:30

Сообщение Sharfik »

msword.jpg

У кого doc открывается, у тех открываются и другие форматы... и кнопка "Сохранить как" у них будет, если им нужен древний *.doc
У вас нет необходимых прав для просмотра вложений в этом сообщении.
gvido
постоялец
Сообщения: 188
Зарегистрирован: 28.03.2012 11:35:31

Сообщение gvido »

Sharfik писал(а):У кого doc открывается, у тех открываются и другие форматы... и кнопка "Сохранить как" у них будет, если им нужен древний *.doc

Это то и так понятно, при наличии на компе офисного пакета. Нужно без любого офисного пакета на компе, чистом, по виндой, внести изменения в шаблон документа и сохранить как новый. С rtf,Docx или текстовым файлом проще. Вот у *.doc дебильное форматирование. Хотел тупо с ним как с текстовым файлом поработать и заменить блоком данные по подстановочным символам, типо найти xxxxxxxx и заменить его чем либо, но так придеться учитывать форматирование.
v-t-l
энтузиаст
Сообщения: 744
Зарегистрирован: 13.05.2007 16:27:22
Откуда: Belarus

Сообщение v-t-l »

gvido писал(а):С rtf,Docx или текстовым файлом проще

Так что нужно? Чтобы конечный файл имел внутренний формат MSWord 97-2003? Или открывался в офисных программах как будто это .doc?
Потому что большинству офисных программ по фигу соответствие расширения имени файла и его внутреннего формата, если этот внутренний формат читается этой офисной программой.
Аватара пользователя
Sharfik
энтузиаст
Сообщения: 836
Зарегистрирован: 20.07.2013 01:04:30

Сообщение Sharfik »

gvido писал(а):Это то и так понятно, при наличии на компе офисного пакета. Нужно без любого офисного пакета на компе, чистом, по виндой, внести изменения в шаблон документа и сохранить как новый.

Разжовываю. Там где твой файл открывать будут, если это не 2003 офис, то там откроется ЛЮБОЙ формат doc, docx, odt. Ты хочешь сохранить в шаблоне данные не имя офиса, сохраняй. Но открывать файл будут в офисном пакете, который поддерживает больше одного формата.
pupsik
энтузиаст
Сообщения: 1154
Зарегистрирован: 20.08.2014 16:20:13
Контактная информация:

Сообщение pupsik »

Разжую и я :)
У вопрошающего шаблон:
внести изменения в шаблон документа и сохранить как новый
. Формат файла MSWord97-2003. Т.е., мягко говоря, не есть гуд.
Открывать, вполне возможно, будут в этом же офисе. Сложность шаблона = х.з.. Может простой текст, а возможно пару десятков "красивеньких таблиц". Может он сам делает, а возможно получает откуда то.
Вопрошающему необходимо внести в закрытый формат MSWord97-2003 небольшие изменения и экспортировать куда то. Как я понимаю: rtf,Docx - в топку. Хотя эти 2 формата можно разобрать. Для последнего есть компонент в лазаре. Да и ртф, вроде как можно. И эти изменения должны вноситься без установленного Word.

Можно найти activex приблуду для работы с Word. Не уверен что существует отдельная длл. Вот через activex встречал. Но..о платное.
По поводу компонентов для работы с 97-2003 офисом не встречал (редактирование, не создание). Да и
тупо с ним как с текстовым файлом
не получиться. Там, если не ошибаюсь, своя как бы файловая система. В принципе, есть некоторые статьи по разбору формата. Если заниматься с нуля то... пятая точка засветится...

В дельфине с этим попроще. Есть компоненты (платные). Сложные документы могут криво открывать.
WordPad вроде может импортировать doc. А вот экспортировать, не помню...

А в чем сложность установки ворда на машинку? Поставили и пускай работает. Или либрешку натравите. Изврат но...о более/менее откроет. Да и по лицензии нормально. Может portable версию использовать и через неё работать?

п.с.
Лучшее что удалось найти в свое время zenxmlss
не самый идеальный вариант. Тем более для Word. Ведь он для таблиц. Да и реализация не через xls. Вроде xml там.
gvido
постоялец
Сообщения: 188
Зарегистрирован: 28.03.2012 11:35:31

Сообщение gvido »

pupsik
почти все правильно разъяснил. Офисный пакет поставить на машину не проблема, но "религия" не позволяет. Глупо ставить офис для того, чтобы его юзала маленькая прога, которая внесет результаты своей работы (6 девяти символьных значений) в шаблон. Хоть убейте, но глупо. Это все равно, что грядки вскапывать экскаватором.
sign
энтузиаст
Сообщения: 1131
Зарегистрирован: 30.08.2009 09:20:53

Сообщение sign »

Ставим OpenOffice (LibreOffice, ...), подгружаем пакет uOpenOffice (http://yuri.elmeh.ru) и горя не знаем.
Этот пакет силами офиса работает прекрасно с вордовскими документами и таблицами.
Я лично именно так и работают с ёкселевыми таблицами.
Причём, что новый создать документ, что изменить существующий - всё можно.
pupsik
энтузиаст
Сообщения: 1154
Зарегистрирован: 20.08.2014 16:20:13
Контактная информация:

Сообщение pupsik »

Хоть убейте, но глупо. Это все равно, что грядки вскапывать экскаватором.
глупо, возможно, а куды без этого.?. Ворд, как и эксель - платные. И формат (старый.?) не открыт (или более менее открыт?).
Те кто его более менее разобрал - хотят деньгу.

Если уж религия не позволяет то либре вам в помощь.

результаты своей работы (6 девяти символьных значений) в шаблон.
дело в самом шаблоне. Если он с "красивостями" то... через офис. Если прост то методом проб и ошибок.

Это все равно, что грядки вскапывать экскаватором.
уже есть маленькие экскаваторы. Так что... :lol:

sign через активекс и онли винда? Уно уже "потух"?

п.с.
Можете сами разобрать его... потом в доступ, по желанию :)
gvido
постоялец
Сообщения: 188
Зарегистрирован: 28.03.2012 11:35:31

Сообщение gvido »

:) Так, вот разбираю. Но чую, что изобретаю велосипед, как обычно. :) А шаблон простой, без таблиц и красивостей.
Аватара пользователя
Лекс Айрин
долгожитель
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград
Контактная информация:

Сообщение Лекс Айрин »

gvido писал(а):А шаблон простой, без таблиц и красивостей.


А нет возможности просто приготовить бинарную вставку и залить в шаблон? Ведь не обязательно же разбирать весь файл, чтобы поменять несколько байт, если размер файла не изменится? И если там нет контроля четности.

А то может быть проблема и яйца выеденного не стоит...
И я, кстати, не понимаю почему именно doc файлы? Причина какая-то идеологическая? Тот же xml, при желании, открывается даже блокнотом. И уж любым офисом (не без проблем, конечно, но они вполне преодолимы, если открывать из офиса). обычно, все же обмен производят используя текстовые файлы.
gvido
постоялец
Сообщения: 188
Зарегистрирован: 28.03.2012 11:35:31

Сообщение gvido »

На счет бинарной вставки/замены - отличная идея!!! А шаблон ответа - прихоть ЦБ РФ у них там что-то только такое жует.

Вопрос закрыт. Воспользовался простыми методами. Считал в байтовый массив, перекодировал в hex. По hex нашел что менять и заменил. Перекодировав, залил в новый файл. Все получилось так как хотел - быстро, аккуратно и без смещений. :)

Спасибо за наводку
Ответить