Пиксельное изображение
при сохранении фактически вытягивается в цепочку и логично предположить, что
встречаются цепочки (последовательности) одинаковых байтов. Самым простым способом,
который позволяет
уменьшить объем
файла, является поиск повторяющихся кодов (символов, цвета и т. п.) — серий
одинаковых значений (Run Length Coding). Каждая такая серия фиксируется двумя
числами: первое указывает количество одинаковых значений, а второе — само значение.
Пример
Заменим для простоты значения цвета буквами. Если в документе, скажем, имеется такая последовательность "АААААВВВВВВВСССССС", ее можно сжать таким образом: 5А7В6С. В результате вместо 18 символов в документе достаточно хранить всего 6.
Алгоритм рассчитан
на деловую или декоративную графику — изображения с большими областями локального
(повторяющегося) цвета.
Достоинством такого алгоритма является простота (что очень важно, т. к. позволяет выполнять процедуры компрессии и декомпрессии достаточно быстро), а недостатками — необходимость различать собственно данные и числа повторений, а также возможное увеличение объема файла, если в документе мало повторений (например, серия АВСАВС не уменьшит, а увеличит объем документа, поскольку будет иметь следующий вид: 1А1В1С1А1В1С, т. е. вместо 6 символов получится вдвое больше).