Манипуляция изображением — это искусство преобразования изображения таким образом, чтобы оно отображалось так, как вы хотите, а не так, как показывает исходное изображение.
В приложениях, связанных с рельсами, манипуляции должны выполняться при загрузке изображения в соответствии с реквизитами приложения, такими как фон, цвет и размер, что придаст приложениям уникальный вид.
Этого можно добиться с помощью ImageMagick.
- ImageMagick — это пакет программного обеспечения для создания, редактирования, компоновки или преобразования растровых изображений.
- Мы можем использовать ImageMagick для изменения размера, отражения, зеркального отображения, поворота, искажения, обрезки и преобразования изображений, настройки цветов изображения, применения различных специальных эффектов или рисования текста, линий, многоугольников, эллипсов и кривых Безье.
Возможности ImageMagick:
- Преобразование формата: преобразование изображения из одного формата в другой (например, из PNG в JPEG).
- Преобразовать: изменить размер, повернуть, обрезать, перевернуть или обрезать изображение.
- Прозрачность: делает части изображения невидимыми.
- Рисовать: добавлять фигуры или текст к изображению.
- Украшение: добавление границы или рамки к изображению.
- Специальные эффекты: размытие, резкость, пороговое значение или оттенок изображения.
- Анимация: создайте последовательность анимации GIF из группы изображений.
- Текст и комментарии: вставка описательного или художественного текста в изображение.
- Идентификация изображения: описание формата и атрибутов изображения.
- Составной: наложение одного изображения на другое.
- Монтаж: сопоставьте миниатюры изображений на холсте изображения.
Добавьте gem rmagick для ruby или rmagick4j для jruby в ваш файл gem.
Используя скрепку convert_options, мы можем указать параметры цвета фона, цвета границы, качества, изменения размера, тени и т. д.,
Обрезка изображения:
Реализовано с использованием скрепки и jcrop
Мы можем напрямую вызывать jcrop, используя id/class. Затем мы можем получить новую высоту и ширину.
$(функция() {
$(‘#cropbox’).Jcrop();
});
Для размера обрезки по умолчанию
$(функция() {
$(‘#cropbox’).Jcrop({
при изменении: update_crop,
onSelect: update_crop,
setSelect: [0, 0, 500, 500],
соотношение сторон: 1
});
});
Читать полную статью в Блоге RailsCarma