Работа с открытыми форматами документов: Откройте дверь открытым форматам
openexr.com (EN) разработчики
предлагают программное обеспечение для работы с ним: приложение
exrdisplay для просмотра exr-изображений и средства для программистов –
библиотеки IlmImf и Imath, а также c++-класс Half. Формат exr
поддерживается большинством приложений для работы с изображениями,
поскольку является отраслевым стандартом.
Растровый формат изображений PNG (Portable Network Graphics –
переносимая сетевая графика), в отличие от jpeg, использует сжатие без
потерь. Функциональная спецификация формата закреплена в стандарте
ISO/IEC 15948:2003. PNG поддерживается в большинстве приложений для
работы с изображениями, а также в браузерах. Существует официальная
библиотека для работы с форматом – libpng. Она, как и libjpeg, входит в
состав набора свободных библиотек для работы с изображением FreeImage.
SVG (Scalable Vector Graphics – масштабируемая векторная
графика) – основанный на XML формат отображения векторной и
векторно-растровой графики на WEB-страницах. Поддерживается всеми
браузерами, а также приложениями для работы с векторными изображениями,
например CorelDRAW. Файлы SVG можно открывать в обычных текстовых
редакторах. Вообще, все форматы, производные от XML, являются
надстройками над текстовым форматом.
Аудиоформат FLAC (Free Lossless Audio Codec – свободный
аудиокодек без потерь) разработан сообществом Xiph.Org Foundation.
Базовые кодеры и декодеры формата доступны в виде библиотек; кроме
того, разработчики предлагают утилиты командной строки для работы с
flac-файлами.
Особенность разработанного в рамках того же проекта Xiph.Org Foundation формата OGG
заключается в том, что сам по себе он является лишь контейнером,
содержащим мультимедиа-данные в различных форматах. Файл в формате ogg
может содержать аудио- и видеоданные, закодированные различными
кодеками, а также текстовые данные – субтитры.
Файлы в формате 7z – архивные файлы, полученные в результате сжатия
данных с использованием свободного архиватора 7-zip. Основной алгоритм
сжатия LZMA, используемый в формате 7z, имеет открытый SDK.
Открытые форматы разметки документов
Отдельного внимания заслуживают форматы разметки документов,
произошедшие от спецификации языка SGML (Standard Generalized Markup
Language – стандартный обобщенный язык разметки). К ним относятся
формат гипертекстовой разметки документов HTML, а также XML, который
сегодня нашел применение практически во всех областях автоматизации.
Язык HTML использует специальные инструкции (теги) для
обозначения форматирования содержимого документов. Набор возможных
тегов закреплен в спецификации (сейчас консорциумом W3C ведется
разработка спецификации HTML 5.0).
В языке XML теги задаются произвольно. Главное – согласовать
их перечень между всеми сторонами, принимающими участие в
информационном обмене. На основе XML разрабатываются так называемые
словари – наборы тегов, позволяющие создавать структуры данных для
самых различных применений. В число ставших стандартными словарей
входят RSS, MathML, XHTML и уже упоминавшийся здесь SVG.
Язык разметки документов TeX является одновременно и языком
программирования. Изначально он был разработан для набора
математических формул, а сегодня нашел множество других применений.
Упрощенная версия TeX, в которой возможно применение более
высокоуровневых инструкций, получила название LaTeX.
Формат электронных документов PDF (Portable Document Format –
переносимый формат документов) – разработка Adobe Systems. Помимо
Acrobat Reader – официальной бесплатной программы для работы с
PDF-документами, формат поддерживается приложениями OpenOffice, Evince,
Foxit Reader, PDFCreator и т.д. Версия 1.7 спецификации формата PDF
является международным стандартом ISO 32000.
PostScript – язык описания страниц, используемый для вывода
на печатающие устройства текста, изображений и графики. Первая
реализация была разработана в Adobe Systems. PS является стандартом
де-факто в области допечатной подготовки и поддерживается в принтерах
большинства ведущих производителей. Команды PostScript включаются в
документ в виде текста. Принтер, поддерживающий этот язык, имеет
встроенный интерпретатор PostScript, который и выполняет включенные в
текст команды. С файлами в формате PostScript можно работать, например,
в приложении Adobe PageMaker, а также в бесплатной программе
Ghostscript.
В результате компиляции исходного файла на TeX или LaTeX создается файл в формате DVI
(Device Independent Format – не зависящий от устройства формат). Он
содержит графический документ, читаемый на всех платформах. Для
компиляции используется программа latex. Чаще всего dvi-файл далее
конвертируется в PDF.
За аббревиатурой ODF (Open Document Format) скрывается формат
документов для офисных приложений, основанный на XML. Разработанный
OASIS ODF cтандартизован ISO/IEC под номером 26300. Формат
поддерживается такими приложениями, как IBM Lotus Symphony, KOffice,
Google Docs. В таблице 2 приведен перечень типов документов,
создаваемых в формате ODF.
Вид документа | MIME-тип | Расширение |
---|---|---|
Текстовый документ | application/vnd.oasis.opendocument.text | odt |
Шаблон текстового документа | application/vnd.oasis.opendocument.text-template | ott |
Графический документ | application/vnd.oasis.opendocument.graphics | odg |
Шаблон графического документа | application/vnd.oasis.opendocument.graphics-template | otg |
Презентация | application/vnd.oasis.opendocument.presentation | odp |
Шаблон презентации | application/vnd.oasis.opendocument.presentation-template | otp |
Электронная таблица | application/vnd.oasis.opendocument.spreadsheet | ods |
Шаблон электронной таблицы | application/vnd.oasis.opendocument.spreadsheet-template | ots |
Диаграмма | application/vnd.oasis.opendocument.chart | odc |
Шаблон диаграммы | application/vnd.oasis.opendocument.chart-template | otc |
Изображение | application/vnd.oasis.opendocument.image | odi |
Шаблон изображения | application/vnd.oasis.opendocument.image-template | oti |
Формула | application/vnd.oasis.opendocument.formula | odf |
Шаблон формулы | application/vnd.oasis.opendocument.formula-template | otf |
Составной текстовый документ | application/vnd.oasis.opendocument.text-master | odm |
Текстовый документ, используемый как шаблон для HTML-документов | application/vnd.oasis.opendocument.text-web | oth |
ODF принят в качестве государственного стандарта в Бразилии,
Хорватии, Италии, Корее, ЮАР, Швеции, Венесуэле. Он продолжает
развиваться, создаются новые версии спецификации и программные средства
разработчиков.
Так, в ноябре 2008 года IBM и Sun объявили о запуске проекта ODF
Toolkit Union, призванного объединить программистов, работающих с
форматом ODF. В рамках проекта создаются и объединяются программные
средства, облегчающие работу с документами. К ним относятся как наборы
инструментов разработки, так и программы, позволяющие протестировать
соответствие стандарту.
С момента начала распространения персональных компьютеров тысячи, а
потом и миллионы конечных пользователей попали в ловушку проприетарных
форматов, испытывая ряд сложностей, среди которых:
- риск, что получатель информации окажется не в состоянии ее прочитать, не обладая необходимым программным обеспечением;
- неуверенность в надежности защиты персональных данных, закодированных по алгоритмам, которые известны только производителям.
Такая ситуация была выгодна крупным производителям программ: обладая
монополией на тот или иной формат данных, они получали не только
прибыль, но и гарантию благополучия на много лет вперед.
Однако сложность программ и систем росла, разработчики испытывали
все больше проблем с совместимостью и прозрачностью протоколов и
форматов. К тому же на рынке появились производители, исповедующие
противоположную идеологию – открытость и свободу как исходных кодов,
так и форматов данных.
В результате сегодня мы наблюдаем, как на смену стремлению отдельных
производителей разрабатывать собственные форматы и протоколы для всего
на свете приходит понимание необходимости работать «в открытую»,
используя специфицированные форматы хранения и обработки данных, в
частности, электронных документов. Примером служит инициатива IBM и Sun
– проект ODF Toolkit Union. Средства, разрабатываемые и уже созданные в
рамках этого проекта, будут рассмотрены в следующей статье.
Татьяна
Василькова — ведущий инженер Научно-исследовательского института
средств автоматизации (Минск, Республика Беларусь). Основная область
профессиональных интересов – защита информации в информационных
системах, в том числе, программные средства безопасности с открытым
исходным кодом. Имеет степень магистра технических наук.
Комментарии закрыты.