Возьмём для примера картинку в формате JPEG.
Допустим она в высоту 2 точки, и шириной 100 точек. Состоит из двух горизонтальных линий, каждая высотой в одну точку, и длинной 100 точек. Верхняя белого цвета (RGB: 255,255,255), нижняя красного (RGB: 255,0,0).
Как в текстовом формате описать эту картинку? 100 раз повторив слово "белый", а потом 100 раз слово "красный"? А нерусскогоговорящий компьютер это поймёт? Тогда заменяем слова на RGB-коды, 100 штук одного, и 100 штук другого цвета? А почему-бы не сократить до формулировки "255,255,255, повторить 100 раз; 255,0,0 повторить 100 раз"? Короче ведь, да? Ой, а на картинках бывают варианты в вертикальными линиями! Тогда и для них формулу придумать. А бывают градиенты, когда какой-то цвет меняется пошагово - делаем и для него формулу... И так далее.
Вот так и получается не-текстовый формат, который компьютер должен расшифровать, и показать человеку. Кстати, а вы точно программист, если этого не знаете?