SVG, графический формат

SVG логотип

Что такое SVG?

Scalable Vector Graphics (SVG) - это язык разметки на основе XML для описания двухмерной векторной графики.

По сути, это текстовый открытый веб-стандарт для описания изображений, которые могут быть отображены в чистом виде при любом размере и разработаны специально для работы с другими веб-стандартами, включая CSS, DOM, JavaScript и SMIL. SVG, по сути, является для графики тем же, чем HTML является для текста.

Изображения SVG и связанные с ними действия определяются в текстовых файлах XML, что означает возможность поиска, индексации, сценариев и сжатия. Кроме того, их можно создавать и редактировать с помощью любого текстового редактора или программ для рисования.

По сравнению с классическими растровыми форматами изображений, такими как JPEG или PNG, векторные изображения в формате SVG могут быть отображены в любом размере без потери качества и могут быть легко локализованы путем обновления текста в них, без необходимости использования графического редактора для этого. При наличии соответствующих библиотек файлы SVG можно даже локализовать на лету.

Применение SVG в промышленности

Мобильная связь

В 2001 году индустрия мобильных телефонов выбрала SVG в качестве основы для своей графической платформы. Многие ведущие компании присоединились к усилиям SVG и выпустили профили SVG Tiny и SVG Basic, получившие общее название SVG Mobile и предназначенные для устройств с ограниченными ресурсами, таких как мобильные телефоны и КПК.

Спецификация SVG Mobile была принята 3GPP в качестве необходимого графического формата для телефонов нового поколения и мультимедийных сообщений (MMS). Телефоны с поддержкой SVG уже поставляются по всему миру.

SVG Mobile в основном используется для обмена сообщениями в таких приложениях, как поздравительные открытки, диаграммы и анимация.

Более подробную информацию можно найти в спецификации SVG Mobile, автором которой является подгруппа SVG Working Group, включающая Nokia, Ericsson и Motorola.

Печать

Сочетание богатых графических возможностей, всесторонней поддержки текста и независимости от разрешения в SVG создает формат, подходящий для печати. Ведущие компании, занимающиеся производством оборудования для печати, в настоящее время разрабатывают спецификацию SVG Print: версию SVG, специально предназначенную для вывода на бумажные носители.

Среди вариантов использования SVG - язык описания страниц на основе XML, аналогичный Postscript и PDF, формат архивирования конечных форм и печать переменных данных, когда информация поступает из базы данных и выводится с помощью графического шаблона SVG. SVG обеспечивает идентичное отображение в режиме онлайн и на бумажном носителе.

Будучи основанным на XML, SVG Print прекрасно вписывается в существующие рабочие процессы XML. То есть организации, у которых есть конвейер обработки данных, поддерживающий XML, могут легко вставить возможности SVG Print в свой издательский процесс, обеспечивая динамическое создание документов. SVG Print также интегрируется с распространенными форматами описания заданий, такими как PPML от PODi и JDF от CIP4.

Более подробную информацию можно найти в спецификации SVG Print Specification, автором которой является подгруппа SVG WG, включающая Canon, HP, Adobe и Corel.

Веб-приложения

Веб-приложения становятся все более популярными. При этом разработчики часто сталкиваются с несовместимостью браузеров и отсутствием функциональности. Благодаря мощной поддержке сценариев и событий SVG можно использовать в качестве платформы для создания графически насыщенных приложений и пользовательских интерфейсов.

С SVG разработчик приложения получает возможность использовать коллекцию открытых стандартов. Они не привязаны к конкретной реализации, поставщику или инструменту создания.

Дизайн и взаимообмен

SVG хорошо подходит для рынка графического дизайна высокого класса, распространенного в аэрокосмической, транспортной, автомобильной и телекоммуникационной отраслях. Расширяемость XML позволяет диаграммам SVG иметь встроенные метаданные в собственных форматах без ущерба для представления.

Например, программа САПР может экспортировать диаграммы в SVG для отображения в Интернете, но при этом встроить в файл данные, облегчающие последующее редактирование или обход.

Кроме того, поскольку многие инструменты проектирования поддерживают импорт и экспорт SVG, его можно использовать в качестве формата обмена между приложениями.

Пример

Эллипс с горизонтальным линейным градиентом от желтого к красному

<!DOCTYPE html>
<html>
<body>

<svg height="150" width="400">
  <defs>
    <linearGradient id="grad1" x1="0%" y1="0%" x2="100%" y2="0%">
      <stop offset="0%" style="stop-color:rgb(255,255,0);stop-opacity:1" />
      <stop offset="100%" style="stop-color:rgb(255,0,0);stop-opacity:1" />
    </linearGradient>
  </defs>
  <ellipse cx="200" cy="70" rx="85" ry="55" fill="url(#grad1)" />
  Sorry, your browser does not support inline SVG.
</svg>

</body>
</html>

Источники