Википедия:Подготовка изображений к загрузке

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
↱ ВП:ПИЗ

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

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

В большинстве случаев не рекомендуется использовать другие графические форматы:

  • BMP — несжатый формат рисунков, в результате чего размеры файлов намного больше. Обычно преобразуются в PNG.
  • GIF — использовать только для анимаций. Для статичных картинок предпочтительнее формат PNG с более эффективным сжатием и поддержкой 24-битного цвета.
  • TIFF — как правило, могут быть преобразованы в PNG или JPEG, о чем говорилось выше.

Не стоит снабжать картинку водяными знаками, это расценивается как нарушение нейтральности.

Диаграммы[править | править исходный текст]

Применяйте SVG или PNG[править | править исходный текст]

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

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

Среди многих веб-дизайнеров существует заблуждение, что размеры PNG превышают размеры GIF. Это заблуждение происходит от двух фактов:

  • Многие люди сравнивают 24-битные PNG с 8-битными GIF.
  • Adobe Photoshop всегда был известен плохой поддержкой формата PNG.

Используйте подписи вместо изображения с текстом[править | править исходный текст]

Smiley face with title.png Smiley face with no title.png
A title as a caption
under the image
Изображение с заголовком
1248 байт
Без заголовка
854 байт (+74 байт текста)

Содержит ли схема название? Если да, следует удалить части изображения, содержащие название, отдавая предпочтение простому тексту. Преимущества:

  • Занимает меньше места, чем эквивалент текста в изображении;
  • Может быть легко изменено;
  • Пользователь может самостоятельно выбрать размер шрифта;
  • Можно произвести поиск;
  • Можно скопировать;
  • Можно перевести на другие языки, благодаря чему схема может быть использована и в других языковых разделах Википедии.


Выберите соответствующую глубину цвета[править | править исходный текст]

Diamond without anti-aliasing.png Anti-aliased diamond.png Anti-aliased diamond enlarged.png
1-битный цвет
без сглаживания (180 байт)
4-битный цвет
со сглаживанием (309 байт)
Увеличенный вариант

Соответствует ли число битов на пиксель числу цветов в изображении? Рисунки, как правило, имеют несколько цветов. Если схема использует 4 цвета, нет необходимости хранить её в 24-битном формате (truecolour), способном различать 16 миллионов цветов. Чем меньше глубина цвета PNG, тем меньше цветов в палитре. Изображения с палитрой могут иметь глубину 1, 2[1], 4 или 8 бит (2, 4, 16, или 256 оттенков). Используйте глубины бит, позволяющие обработать все цвета в изображении.

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

Не сохраняйте диаграммы в JPEG[править | править исходный текст]

Smiley face example true C .jpg Smiley face example true C crop.png

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

Ещё один недостаток — большой размер итогового файла. Компрессия JPEG имеет много вариантов, но чаще всего используются только два цветовых пространства: 24 бит RGB и 8-битные серые. Самое главное, JPEG по своей природе не поддерживает индексации цвета. В примере справа 4-цветное изображение использует неправильную цветовую схему, что приводит к довольно большому размеру файла — целых 4,8 килобайт вместо 854 байт.

Если у вас нет исходного файла, но есть JPEG, не стоит сохранять JPEG как PNG: качества это не прибавит, зато приведёт к ещё большему размеру файла.

SVG предпочтительнее PNG[править | править исходный текст]

Smiley face crop.png Smiley face crop.svg
Увеличенный PNG Увеличенный SVG

PNG — растровый формат хранения графической информации, использующий сжатие без потерь, а SVG — это формат векторной графики, позволяющий кодировать изображение как ряд геометрических конструкций. Если это смущает вас, не волнуйтесь, вам не нужно разбираться в технических аспектах создания или загрузки изображений. На практике для изображений, состоящих в основном или полностью из многоугольников, линий и кривых (государственные флаги, дорожные знаки и т. д.) SVG проявляет все свои преимущества. Справа показаны два примера изображения: в форматах SVG и в PNG. Разница в качестве очевидна.

SVG также может быть легко изменён с помощью текстового редактора. Это делает обновление иллюстраций и их перевод на другие языки гораздо легче. Редакторы в GNU/Linux и в других UNIX-подобных системах имеют меньше проблем со шрифтами в SVG, поскольку они обычно используют похожие шрифты, а также они могут использовать библиотеку rsvg для просмотра SVG, как и движок MediaWiki.

Не мошенничайте, выдавая PNG за SVG[править | править исходный текст]

Во многих векторных форматах (SVG не исключение) есть функция «внедрить картинку». Конечно же, фотографическая текстура в векторном рисунке и с векторной же обрезкой — это замечательно. Но часто бывает такое: на странице с PNG-диаграммой просят перерисовать её в SVG. Кто-то, недолго думая, внедряет PNG в SVG и говорит: да, сделано. Это нехорошо! Причин несколько.

  • Картинка остаётся растровой, с растровыми же артефактами при увеличении и уменьшении.
  • Размер при этом увеличивается.
  • Движок MediaWiki отлично увеличивает-уменьшает растровые картинки. Векторный движок RSVG делает это намного хуже.

Скриншоты[править | править исходный текст]

Несколько простых требований к скриншотам.

  1. Если скриншот содержит элементы интерфейса программы, он так же защищается копирайтом, как и программа, с которой он снят. Русская Википедия разрешает использование защищённых изображений при условиях добросовестного использования. За дальнейшей информацией обращайтесь в статью Википедия:Критерии добросовестного использования.
    Примечание 1. С программного обеспечения со свободной лицензией (например, GNU GPL) скриншоты можно снимать свободно. Каждый из этих скриншотов, как производная работа, будет иметь лицензию GPL.
    Примечание 2. Если в кадр попадает только открытый документ, а не какие-либо части программы, скриншот перестаёт быть производной работой от программы, и лицензия зависит лишь от лицензии на отснятый документ. В частности, если вы откроете в Microsoft Word «Евгения Онегина», сделаете скриншот и обрежете весь интерфейс Word’а, полученный документ не будет иметь никакого копирайта[2].
  2. Не снимайте прикладное программное обеспечение (например, текстовый редактор) с развёрнутым на весь экран окном — есть вероятность, что в статье (и даже на картинке предпросмотра) не будет ничего видно. Уменьшите окно настолько, насколько это возможно. Разумеется, это требование не подходит для сложных программ с большим количеством окон наподобие 3D Studio MAX.
    Хороший пример: Изображение:Gedit 2.14 Russian.png — здесь автор уменьшил картинку до 810×543, одновременно поставив крупный шрифт.
    Плохой пример: Изображение:GVim-screenshot.png — программа снималась на разрешении 1024×768, в то время как окно можно было свободно уменьшить; характерные особенности программы видны лишь на полноразмерной картинке.
  3. Правилом хорошего тона будет выключить ClearType. Даже если у читателя ЖК-монитор, ClearType не будет работать (или даже приведёт к неприятным артефактам), если повернуть монитор на 90°. В общем, если у вас ЖК-монитор в горизонтальной ориентации — это не значит, что у других тоже горизонтальный ЖК-монитор.
  4. Делая скриншот делового ПО, лучше снимать не пустые окна, а программу с загруженным документом. Рекомендуется, чтобы этот документ был либо частью ПО (например, демонстрационным файлом), либо вообще не имел копирайта.

Фотографии[править | править исходный текст]

Не стоит выкладывать «сырые» фотографии. Рекомендуется сделать с фотографией то же самое, что вы делаете, когда сдаёте её в печать: выровнять яркость, выставить баланс белого, обрезать неважные части.

Стоит спросить у сфотографированных людей, хотят ли они выставить свою фотографию на всеобщее обозрение. Если ответ «нет», не загружайте фото.

Многие репортажные фотографии можно загружать, закрасив или пикселизировав узнаваемые лица. Например: Изображение:2005 Moscow powerless trolleybus.jpg

Технические подробности[править | править исходный текст]

Советы по оптимизации JPEG[править | править исходный текст]

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

  • При сохранении JPEG-файлов можно выбрать уровень компрессии. Обычно используется диапазон значений от 0 до 100, где 100 — наилучшее качество с очень малым сжатием (несколько приложений, в частности Paint Shop Pro, имеют такую шкалу в обратном порядке: с 0 (высокое качество) до 100 (низкое качество)). Шкала от 0 до 100 не является процентной, то есть использование 50 не приводит ни к 50%-ному качеству, ни производит файл в 2 раза меньше. Кроме того, 100 не означает «100 %», так как изображение по-прежнему остаётся сжатым, в результате чего происходит потеря детализации. Поскольку большинство файлов в формате JPEG в Википедии будет появляться на страницах в виде эскиза, подходит параметр качества 95.
  • сжатие JPEG работает лучше на слегка размытых изображениях, так что увеличение чёткости приводит к увеличению артефактов
  • Всегда работайте с исходным изображением, а не с уже сохранёнными файлами JPEG, так как качество постепенно снижается с каждым сохранением. По этой причине рекомендуется сохранять основную копию в формате без потерь, например, PNG.
  • JPEG-файлы можно пережать без потерь с помощью jpegtran -optimize (при этом из файла также может быть удалена такая информация, как уменьшенные копии изображения, добавленные камерой). Jpegtran является частью libjpeg. На основе jpegtran существует пакет littleutils с набором скриптов, автоматизирующих оптимизацию JPEG.
  • JPEG-файлы могут быть оптимизированы без потерь с помощью программы Jpegcrop.

Советы по оптимизации PNG[править | править исходный текст]

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

Некоторые из оптимизирующих программ приведены ниже:

OptiPNG в целом лучше, чем pngcrush и, как правило, значительно быстрее. Утилита AdvDef может быть использована после OptiPNG для дальнейшего улучшения результатов.

Для быстрого сжатия, воспользуйтесь optipng:

optipng file.png

Для выполнения наиболее сильного сжатия (может занять много времени):

optipng -o7 file.png
advdef -z4 file.png
pngout /ks file.png
deflopt file.png

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

Для быстрой оптимизации можно использовать скрипт opt-png (пакет littleutils) может быть полезным. Он автоматизирует оптимизацию PNG, используя pngcrush и pngrewrite в качестве основы.

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

Примечания[править | править исходный текст]

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

См. также[править | править исходный текст]