Скрипт редактирования изображения на JavaScript (поворот, кадрирование)

Author Автор: Роман Чернышов    Опубликовано: 1 ноября 2021

Редактор фото на javascript Доброго времени друзья! В рамках работы над расширением функционала CMS разрабатываемой на безе моего фреймворка, я написал скрипт для быстрого редактирования изображений, в тех разделах сайта где идет непосредственная работа с ними(новости, статьи, галерея и т.д). Скрипт позволяет, после загрузки изображения на сайт(на лету, по средствам Ajax) совершить над ним определенные действия: поворот, кадрирование(произвольное обрезание по заданным границам) и масштабирование. Данное решение было написано за неимением других готовых подходящих альтернатив(те что удалось найти были либо слишком громоздки, либо ущербны, как ни странно). Основное преимущество скрипта, это то, что его можно установить на любой сайт работающий на любом движке. Например, после успешного тестирования на моей CMS, затем он был интегрирован на форум под управлением Invision Power Board(от же Invision Comminity). Далее обо всем по порядку.

Возможности

Как вы уже, кое что поняли из введения, скрипт обладает следующими возможностями:

  • Поворот изображения на 90, 180, 270 градусов;
  • Кадрирование, обрезание фото по заданным рамкам;
  • Масштабирование, уменьшение или увеличение в момент кадрирования;
  • Все операции производятся без перезагрузки страницы, отредактированное фото сохраняется на сервере путем отправки данных Ajax на PHP скрипт, отвечающий за сохранение файла и работу с базой данных (если потребуется);
  • Интеграция с любым сайтом, на любом движке (при заказе работы у меня, также напишу скрипт обработчик сохраняющий изображения, на PHP, для работы именно с вашей CMS и БД, т.е. полная интеграция); В том числе возможна интеграция с галереями, загрузчиками файлов, файл менеджерами, редакторами страниц.
  • Отображение информации о редактируемом изображении: название, тип, размер, разрешение;
  • Адаптивный дизайн, поддержка мобильных устройств.

Скриншоты

При загрузке фото, добавлена возможность его редактирования (на примере движка IPB)
При загрузке фото, добавлена возможность его редактирования (на примере движка IPB)

Отображение всплывающего окна редактирования фото
Отображение всплывающего окна редактирования фото

Обрезка фото, кадрирование
Обрезка фото, кадрирование

Вращение изображения на 90 градусов
Вращение изображения на 90 градусов

Технологии

Скрипт написан на JavaScript и jQuery, для редактирования используется Сanvas;
CSS 3, HTML 5;
Библиотеки jQuery 1.12, cropper.js;
Адаптивный дизайн;
PHP 5.6 >, PDO;
Интегрируется с любой CMS.

Заключение

В дальнейших планах добавить еще ряд функций, таких как работа с цветовыми каналами и фильтрами. Решение получилось легким, как в плане скорости работы так и размера кода. Однозначно он войдет в комплект всех моих текущих и будущих проектов. Если вас заинтересовало данное решение, обращайтесь! Буду рад сотрудничеству…

Оставить комментарий

Автор блога
Чернышов Роман
Роман Чернышов
Веб-разработчик, Full Stack
Senior, Architector
PHP, JavaScript, Node.JS, Python, HTML 5, CSS 3, MySQL, Bash, Linux Admin
Заказать работу
предложить оффер

Последние вопросы
Список вопросов
Последние комментарии
Меню

Archive

Мои проекты
Insurance CMS Love Crm CMS Совместные покупки Мой PHP Framework Хостинг для моих клиентов Лицензии на мой софт и поддержка