Онлайн учебники на TEPKA.ru

Учебник по HTML 4

       

Форматы хранения графики

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

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

Векторная графика, как правило, употребляется для изображений с четкими геометрическими формами. Примером ее применения являются системы автоматизированного проектирования (CAD). В векторном виде хранится информация для некоторых типов шрифтов.

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

Примечание

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

На Web-страницах в подавляющем большинстве случаев используется растровая графика в двух форматах: GIF и JPG. Подробное обсуждение преимуществ и недостатков того и другого формата будет дано ниже. Здесь лишь заметим, что именно эти два формата непосредственно поддерживаются популярными браузерами, а для использования большинства других графических форматов потребуются специальные средства.

Формат BMP является стандартом MS Windows и поддерживается браузером Internet Explorer, однако его употребление не может быть рекомендовано, так как данный формат не поддерживает сжатие данных.

Разработанный бесплатный формат PNG был призван заменить растровый платный формат GIF, однако, несмотря на его очевидные преимущества, должного распространения на настоящий момент не получил.

Иные графические форматы (кроме GIF и JPG) в HTML-документах на WWW-серверах практически не встречаются, хотя принципиально это возможно. Использование других форматов не рекомендуется по следующим причинам: во-первых, только для GIF и JPG осуществляется встроенная поддержка в большинстве браузеров, тогда как для иных файлов необходимо подключение внешних программ отображения, во-вторых, структура файлов GIF и JPG наиболее подходит для передачи данных по сети и является независимой от платформы. Так, например, использование старого и доброго формата PCX, который существует уже более 10 лет и распознается практически всеми графическими редакторами, крайне неудачно для сетевых приложений. Во-первых, алгоритм сжатия формата PCX (RLE — метод группового кодирования) дает малую степень сжатия, однако, вследствие своей простоты, позволяет распаковывать данные со скоростью, близкой к скорости считывания. Для сетевых приложений определяющим фактором является размер файла, от которого непосредственно зависит время передачи данных, по сравнению с которым время распаковки составляет ничтожную величину. Во-вторых, несмотря на последовательную структуру файла PCX (данные в файле всегда хранятся по строчкам, начиная с первой до последней), палитра располагается в конце PCX-файла (это справедливо только для 256 цветов), что не дает возможности начать выдачу изображения по мере считывания файла. Последнего недостатка не имеют 16-цветные PCX-файлы (палитра которых располагается в заголовке), а также последние версии PCX-файлов, которые разрешают хранить изображение в 16,7 млн цветов (для них понятие палитры отсутствует).

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

Рейтинг@Mail.ru