Из Википедии, свободной энциклопедии
Перейти к навигации Перейти к поиску

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

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

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

Фон [ править ]

Когда вам нужно сохранить изображение с тысячами цветов или более (как это типично для «фотографических» изображений с мелкими градациями оттенков и тонов) и вас беспокоит размер файла, лучше всего сохранить его как файл JPEG. Метод сжатия JPEG использует тот факт, что большинство естественных сцен имеют плавные градиенты и мягкие края, и поэтому оптимизированы для этого.

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

Кроме того, формат PNG очень универсален. Вы можете сохранять изображения как файлы PNG, сохраняя при этом больше цветов, чем может различить человеческий глаз, и могут отображать больше цветов и более мелкие детали, чем даже JPEG, но только при сохранении в режиме «истинного цвета» PNG. Однако, когда вы сохраняете изображение в формате PNG с истинным цветом, вы, как правило, получаете слишком большие файлы, поскольку его сжатие не оптимизировано для таких изображений.

Если вы просто конвертируете JPEG в PNG, ваша графическая программа, скорее всего, создаст один из этих PNG с истинным цветом и создаст большой файл. Вы должны преобразовать такие PNG в "индексированный" или "основанный на палитре" режим, прежде чем загружать их. Большинство редакторов растровой графики позволяют конвертировать из режима истинного цвета (также называемого «полноцветным» или «RGB») и позволяют вам определять количество цветов, которые вы хотите получить в результирующем индексированном изображении. Сколько цветов вы выберете, будет зависеть от изображения - его должно быть меньше 256, но часто 16 или даже меньше подойдут. Они также могут спросить, хотите ли вы использовать что-то, называемое «диффузией ошибок» или «дизерингом». Возможно, вы захотите отключить эту опцию. Экспериментируйте, пока не добьетесь желаемого результата. Некоторые инструменты позволяют подсчитать фактическое количество разных цветов в файле.

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

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

Удалить похожие цвета [ править ]

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

После того, как у вас есть выбор, как показано выше, выберите подходящий цвет для массива суши и убедитесь, что вся выбранная область заполнена. Как это сделать, может отличаться в зависимости от приложения. Как только изображение будет состоять из цвета земли, цвета моря и промежуточных цветов границы между морем и сушей, вы можете уменьшить количество цветов примерно до шестнадцати и сохранить как индексированный PNG. Опять же, экспериментируйте, пока не добьетесь нужного результата.

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

Конечно, если просто заставить ваш редактор растровой графики уменьшить количество цветов в этом примере до 16 без предварительной очистки изображения, можно получить точно такой же результат и на это уйдет меньше времени. Однако это не сработает, если есть видимые дефекты в процессе JPEG, которые вы должны сначала очистить.

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

Во-вторых, не все редакторы изображений позволяют принудительно указывать количество цветов, используя правильные цвета! У тех, которые действительно есть, часто есть изумительный набор опций, которые нужно установить, прежде чем вы получите правильные цвета.

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

Специальные методы и советы [ править ]

Использование цвета в альфа-канале [ править ]

Если изображение состоит только из двух отдельных цветов (или одного цвета и прозрачности), можно даже удалить артефакты по краям с помощью инструмента GIMP «Цвет в альфа-канал». Сначала убедитесь, что у вашего изображения есть альфа-канал. Дублируйте исходный слой, но сделайте его невидимым. Если фон не должен быть прозрачным, когда вы закончите, создайте еще один новый слой и выберите «Альфа к выделению» в меню слоя. Снимите выделение с любой части, которая должна оставаться прозрачной, а затем уменьшите выделение на единицу. Воспользуйтесь палитрой цветов и залейте цветом фона.

В любом случае используйте палитру цветов, чтобы выбрать цвет переднего плана (обязательно усредненный), выберите цвет фона своим любимым инструментом и нажмите «Удалить». Затем либо увеличьте выделение на один или два пикселя (используя меню «Выделение»), либо выберите основной цвет и инвертируйте выделение. Идея состоит в том, чтобы выбрать как недавно прозрачные части, так и бахрому вокруг цвета переднего плана. Используйте инструмент «Цвет в альфа» с цветом фона, чтобы удалить бахрому.

Теперь отмените выделение, перейдите на панель каналов и снимите выделение с альфа-канала, затем вернитесь на панель слоев. Используйте инструмент «Заливка», чтобы залить выделение основным цветом. (Поскольку вы отключили альфа-канал, это не повлияет на прозрачную секцию.) Вернитесь и повторно выберите альфа-канал, чтобы вернуться к обычному редактированию.

Наконец, сравните изображение с оригиналом. Убедитесь, что в фоновом слое нет дыр (если они есть). Если новая версия слишком резкая, вы можете использовать фильтр или инструмент размытия, чтобы исправить это, или используйте «Цвета»> «Уровни», чтобы изменить альфа-канал. Как только он будет выглядеть правильно, сохраните изображение как PNG. Затем, чтобы уменьшить размер файла, запустите его через программу вроде ImageMagick, которая поддерживает 8-битные PNG с альфа-прозрачностью, чтобы удалить ненужные цвета. (Это может или не может быть сделано автоматически оптимизатором PNG.)

Связанные темы [ править ]