Что такое формат файла ODG?
Файлы с расширением .odg представляют собой векторные графические файлы, используемые для хранения рисунков и поддерживаемые программами на базе LibreOffice Draw и Apache OpenOffice Draw. Файлы .odg создаются на языке XML и хранятся в формате OpenDocument OASIS - том же контейнере, который используют .odt (текстовые документы), .ods (электронные таблицы) и .odp (презентации). Составные файлы документа .odg, как и все документы серии ODF, содержатся внутри сжатого пакета ZIP archive.
В векторной графике изображение определяется геометрическими фигурами, размещенными в системе координат - это позволяет масштабировать работу без потери качества (lossless), что делает формат подходящим для разработки логотипов или различных типов иллюстраций.
Структура файла .odg
ZIP-пакет каждого документа ODF (включая .odg) состоит как минимум из пяти компонентов:
- однострочный файл
mimetype, содержащий текстapplication/vnd.oasis.opendocument.graphics- хранится без сжатия в самом начале архива, чтобы инструменты могли идентифицировать формат без полной распаковки; content.xml- элементы векторной графики и базовая информация о стилях;styles.xml- расширенная информация о стилях (значения по умолчанию, именованные стили);meta.xml- метаданные документа (например, дата создания, версия ODF, автор);settings.xml- настройки приложения, такие как размер окна.
Содержимое любого из этих файлов можно просмотреть с помощью стандартного инструмента для распаковки ZIP.
Безопасность и защита
РИСК: LOWODG - это обычный документ ZIP+XML без собственного исполняемого кода, поэтому риск низок. Единственная реальная проблема - злоупотребление макросами: как и другие офисные документы, ODG может содержать встроенные макросы Basic, и LibreOffice запрашивает подтверждение перед их запуском. Держите безопасность макросов на уровне по умолчанию и включайте их только из доверенных источников.
Детали формата
в двух словахПрограммы, открывающие файлы ODG
Технические подробности
глубокая спецификация| Формат контейнера | ZIP archive (совместимый с PkZip); первой записью должен быть несжатый файл `mimetype` |
| Идентификация формата | Строка `application/vnd.oasis.opendocument.graphics` начинается со смещения 30 байт, что позволяет определять формат без полной распаковки |
| Магические байты | `50 4B 03 04` («PK») со смещением 0 - стандартная сигнатура заголовка локального файла ZIP |
| MIME-тип | `application/vnd.oasis.opendocument.graphics` |
| Основная разметка | XML (кодировка UTF-8), распределенный по файлам `content.xml`, `styles.xml`, `meta.xml` и `settings.xml` |
| Модель рисования | Геометрические примитивы, совместимые с SVG: контуры, прямоугольники, эллипсы, соединительные линии, текстовые блоки и группы |
| Поддержка многостраничности | Один файл `.odg` может содержать несколько именованных страниц рисунка |
| Система слоев | Именованные слои рисунка с индивидуальными настройками видимости и блокировки, определенные в `content.xml` |
| Встроенные ресурсы | Растровые изображения и связанные или внедренные объекты, хранящиеся как подзаписи внутри ZIP-пакета |
| Мастер-страницы | Многоразовые мастер-страницы рисунков (аналогично мастерам слайдов в презентациях), определенные в `styles.xml` |
| Цвет и эффекты | Нативная поддержка заливок RGB, градиентов, прозрачности и эффектов тени |
| Цифровые подписи | Необязательные цифровые подписи XML, хранящиеся в `META-INF/documentsignatures.xml` |
| Плоский вариант XML | `.fodg` хранит идентичное содержимое в виде одного несжатого XML-файла без ZIP-оболочки |
| Макросы | Необязательные встроенные макросы (LibreOffice Basic или Python), хранящиеся в подкаталоге `Basic/` внутри ZIP |
| Выпущен | 2005 (OpenDocument Format 1.0); ISO/IEC 26300 since 2006 |
| Открыть стандартное | Да · без роялти |
| Спецификация | docs.oasis-open.org |