Работа с форматами OpenDocument и форк ODFPros
Модератор: Модераторы
Работа с форматами OpenDocument и форк ODFPros
Мне по работе пршлось столкнуться с импортом файлов в формате odt и ods. Я посмотрел в сторону ODFProc. Скачал с сорсфоржа последнюю версию, если не ошибаюсь 33. Сама идея мне понравилась, а вот реализация нет. Я решил форкнуть код, убрал утечки памяти и добавил классы для работы с odf. Хочу спросить у сообщества, интерсесно ли кому-то развитие этой идеи? Я в любом случае буду код допиливать, а если интересно, то публикация кода, например через svn, требует дополнительных усилий. Напрягусь если востребовано (здесь смайлик). И может я чего-то не нашел в гугле, например эта версия не последняя?
fpspreadsheet и fpvectorial - не подойдут?
Спасибо. Обязательно посмотрю. Я хочу обернуть работу с OpenDocument в интерфейсы и сделать некую dl so чтобы можно было использоват ее в любом языке, коттрый поддерживает интерфейсы. Например делфа и си шарп. Надо свести все к дереву интерфейсов наподобии ком обекта. Пока изучаю варианты
ODFProc (насколько я понимаю пробежавшись по коду) - это тоже XML-генератор (генерирует ODF-файлы путём парсинга и составления XML). Если такой вариант устраивает - тогда действительно лучше смотреть в сторону FPSpreadsheet/FPVectorial.
А если нужно "типа COM-объекта" и кроссплатформенно - тогда только UNO. Но с этим всё плохо. Единственное что я находил:
http://uno-pas-bridge.sourceforge.net/
Но проект мёртв. И заставить его работать мне не удалось.
А если нужно "типа COM-объекта" и кроссплатформенно - тогда только UNO. Но с этим всё плохо. Единственное что я находил:
http://uno-pas-bridge.sourceforge.net/
Но проект мёртв. И заставить его работать мне не удалось.
В виндовозе пользую с успехом дельфийскую
Перелопатить под Лазарус дело пяти минут.
Говорят, что дескать, тогда нужно OpenOffice поставить, так и что? Он бесплатен, ставится легко, да и офис так и так нужен.
Код: Выделить всё
//******************************************************************************
//* Written by Yuri (aka Yuric74) *
//* http://www.sql.ru/forum/actualthread.aspx?tid=405083 *
//* all version at http://yuri.elmeh.ru *
//******************************************************************************
unit uOpenOffice; Перелопатить под Лазарус дело пяти минут.
Говорят, что дескать, тогда нужно OpenOffice поставить, так и что? Он бесплатен, ставится легко, да и офис так и так нужен.
Посмотрел fpvectorial и ODFProc - везде поток данных пердполагается в одном направлении - сформировать отчет из приложения в формате OpenDocument (как справедливо подмечено XML-генератор). У меня задача пустить поток в обратном направлении - затолкать в базу данных [старые] отчеты (XML-парсер).
uOpenOffice может и вариант, но если импорт будет выполняться на сервере, то не факт что OpenOffice можно будет поставить, тут неопределенность
. Поэтому решил допиливать код без использования OpenOffice и ком-интерфейсов вообще. Посмотрел на объемы "допиливания" и остановился на ODFProc. Моя наработка в этом направлении пока здесь https://micrography.gov.ua/svn/odio/trunk/. Логин/пароль guest/guest. По ссылке слегка патченый ODFProc. Его классы начал оборачивать в интерфейсы (не ком). dll их экспортирует. Тестовый проект на делфи эту дллку линкует. И вроде работает
. Предполагается, что если некий проект по импорту будет написан на fpc, то подключаем ODFProc напрямую, если на делфи или c# - то длл. Если у кого есть желание + возможность, прошу оценить жизнеспособность такого решения
uOpenOffice может и вариант, но если импорт будет выполняться на сервере, то не факт что OpenOffice можно будет поставить, тут неопределенность
Т.е. вам необходима работа только с электронными таблицами?
И чем этот вариант не устраивает: http://wiki.freepascal.org/FPSpreadsheet_tutorial:_Writing_a_mini_spreadsheet_application#Formatting_of_cells?
п.с.
fpvectorial вроде как с текстовым редактором работает...
И чем этот вариант не устраивает: http://wiki.freepascal.org/FPSpreadsheet_tutorial:_Writing_a_mini_spreadsheet_application#Formatting_of_cells?
п.с.
fpvectorial вроде как с текстовым редактором работает...
Спасибо посмотрел. Мне не надо формировать документы. Мне надо парсить и в базу... Вообще формирование документов через любой из конструкторов мне сдается сложным (не для меня а для кодера). И стили им назначь и всяко... этож надо знать стадарт! А вот берешь у заказчика готовый документ, там и стили и ну и т.д. И формируешь content.xml по образцу. А вместо старых данных пишешь такой же нод только с новыми. Обычно использую таблицу xslt и xml сформированный как набор данных
Добавлено спустя 1 час 26 минут 36 секунд:
Сообщение возможно не отправилось, посему дублирую
Мне надо импортировать как odt так и ods. Начал с одс. Легче сопоставить электронную таблицу с таблицой в базе данных. В одт могут быть кроме таблиц куски текста, требующие полнотекстового поиска.
Добавлено спустя 1 час 26 минут 36 секунд:
Сообщение возможно не отправилось, посему дублирую
Мне надо импортировать как odt так и ods. Начал с одс. Легче сопоставить электронную таблицу с таблицой в базе данных. В одт могут быть кроме таблиц куски текста, требующие полнотекстового поиска.
вы явно не поняли... Он работает в "обе стороны".Мне надо парсить и в базу
? Вы можете разориться- если под все варианты.одт
вы явно не поняли... Он работает в "обе стороны"
Я видел в скриншотах меню "Open". Просто одно мое сообщение не дошло, а продублировать его в полном объеме я поленился
Вообщем сделал импорт ods через ODFProc, как и планировал.
Тему считаю закрытой.
Спасибо всем, кто откликнулся
