Повернуть PNG

Загрузите изображение в формате PNG, оно будет повернуто на 90, 180 или 270 градусов. Поскольку PNG, это формат без потерь, поворот можно выполнять сколько угодно раз без потери качества; в отличие от JPG, где многократное перекодирование приводит к появлению артефактов. Прозрачность сохраняется, а при поворотах на кратные значения 90 градусов размеры изображения автоматически меняются (например, 1920×1080 становится 1080×1920).

Как работает поворот изображения в PNG-формате

  1. 1

    Декодируйте PNG

    Сжатые алгоритмом deflate данные пикселей распаковываются в сырой буфер ARGB.

  2. 2

    Поворот буфера

    Пиксели перенаправляются в соответствии с новой ориентацией: при повороте на 90° строки и столбцы меняют местами, а при повороте на 180° оба параметра обращаются в противоположное направление.

  3. 3

    Перекодируйте в PNG

    Повёрнутый пиксельный буфер повторно сжимается алгоритмом deflate; результат всегда без потерь.

  4. 4

    Сохранить прозрачность

    Альфа-канал вращается вместе с каналами RGB, поэтому прозрачные области остаются прозрачными.

Почему поворот изображения в формате PNG всегда происходит без потерь

PNG точно кодирует пиксели, без квантизации и без использования блоков 8×8 DCT, как в формате JPEG. Вращение на кратные значения 90° представляет собой простую перенумерацию пикселей; цветовые значения остаются неизменными. Даже при произвольных углах качество данных сохраняется при использовании подходящего фильтра ресэмплирования (бикубического или Ланцоза) вместо фильтра ближайших соседей.

Опции вращения

Операция Изменение ширины/высоты Распространённое использование
90° по часовой стрелке Меняются местами Из портрета в пейзаж
180° Без изменений Перевёрнутый скан, снимок вверх ногами
270° по часовой стрелке Меняются местами Из пейзажа в портрет в другую сторону
Любой угол Растёт под размер Выпрямление наклонённого скана или фото

Размер файла после вращения

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

Тип содержимого Типичное изменение размера после поворота на 90°
Графика в однотонном цвете Изменение менее 1 %
Скриншоты интерфейса Изменение на уровне 1–5 %
Фотографии (в формате PNG) размер увеличен на 15–20 %
Прозрачные элементы интерфейса Незначительны

Для фотографий формат JPG является более подходящим независимо от ориентации изображения. Если размер PNG-фотографии значительно увеличивается после поворота, это повод изменить её на формат JPG.

Прозрачность

Полностью прозрачные, полупрозрачные и непрозрачные пиксели вращаются одновременно; альфа-канал следует за RGB-каналами. Логотип с мягким теневым оттиском остаётся неизменным после вращения, теперь тень просто ориентируется в противоположном направлении.

Когда поворачивать в браузере, а когда: в CSS

  • Поверните файл, когда изображение имеет неправильную ориентацию на диске, будет загружено туда, где метаданные о повороте не учитываются, или будет распечатано.
  • Поверните в CSS с помощью transform: rotate(...), когда нужен лишь временный визуальный поворот на веб-странице. Сам файл остаётся неизменным; браузер компонует поворот при отображении.

Множество вращений

PNG позволяет свободно комбинировать повороты: комбинация 90° + 90° + 90° + 90° возвращает изображение к исходному состоянию (по крайней мере с точки зрения содержимого пикселей, параметры кодировщика могут отличаться на несколько байтов). JPG не обеспечивает такой же гарантированности из-за потерь при повторной кодировке.

Метаданные

PNG поддерживает текстовые фрагменты (tEXt, iTXt, zTXt) для метаданных. Этот инструмент поворачивает изображение, перерисовывая пиксели на canvas и экспортируя новый PNG, поэтому такие текстовые фрагменты не переносятся в повёрнутый файл. Если нужно сохранить встроенные метаданные, поверните инструментом, который копирует эти фрагменты, или добавьте метаданные заново после поворота.

Часто задаваемые вопросы

Да, незначительно. Сжатие формата PNG зависит от расположения строк в изображении: поворот на 90° может изменить размер файла на 1–20 % в зависимости от его содержимого.

Да. Формат PNG точно кодирует пиксели, поэтому при повороте и повторном сохранении качество не утрачивается, в отличие от формата JPG.

Да. Альфа-канал вращается вместе с RGB-каналами, поэтому прозрачные участки остаются прозрачными.

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

Нет. Декодирование, поворот и повторное кодирование выполняются в браузере с использованием платформы Canvas и инструмента для кодирования PNG.

Сопутствующие инструменты

Палитра цветов Material Design

Просмотрите палитру цветов Material Design. Копируйте любой оттенок (от 50 до A700) в форматах HEX, RGB или HSL одним нажатием.

Сжать GIF

Уменьшайте анимированные GIF прямо в браузере: снижайте размеры, оставляйте меньше кадров и настраивайте качество кодирования. Проверьте петлю перед скачиванием.

Конструктор тир-листов

Создайте приватный тир-лист из текста и локальных изображений. Настройте уровни, распределите элементы мышью или клавиатурой и экспортируйте в JSON, PNG или SVG.

Конвертер JPG в Word

Конвертируйте JPG-фото или скриншот текста в редактируемый документ Word. Инструмент считывает слова с помощью OCR и раскладывает их, чтобы вы могли переписать, отформатировать и переиспользовать их.

Конструктор флагов

Создайте в браузере простой собственный флаг 3:2 с шестью компоновками, цветами, текстом и символом. Скачайте SVG или PNG либо откройте диалог печати браузера.

Генератор линованной бумаги

Создавайте линованную бумагу для печати бесплатно. Выберите узкую, широкую или стандартную линовку, задайте расстояние между строками в мм, размер листа и линию поля, затем распечатайте или скачайте SVG.

Инструмент доступен на других языках