Поворот изображения по часовой стрелке и против часовой стрелки
Я использовал http://raphaeljs.com/image-rotation.html сценарий Raphel, но. Как можно сохранить это повернутое изображение?
2 ответа
Как уже упоминалось, это элемент SVG, и он использует исходное изображение для изменения угла при нажатии кнопок поворота. Осмотрев повернутое изображение, вы увидите элемент SVG, например:
<image x="160" y="120" width="320" height="240" preserveAspectRatio="none" href="http://raphaeljs.com/bd.jpg" transform="rotate(-90, 320, 240)"/>
Вы заметите, что есть tranform
атрибут, который содержит rotate(angle, x, y)
функция. Если вы можете найти способ получить это значение угла, вы можете использовать его для манипулирования источником изображения для создания нового изображения с использованием PHP с помощью функции imagerotate.
Сделав это, я получил transform
значение атрибута:
document.getElementById('holder').getElementsByTagName('image')[0].getAttribute('transform')
Это возвращает "rotate(-90, 320, 240)"
Конечно, это взломать; р
Это SVG, а не изображение как таковое.
Вам нужно будет сохранить сгенерированный SVG через AJAX на вашем сервере и визуализировать его с помощью внешней библиотеки рендеринга SVG.
Вы могли бы попробовать librsvg2-bin
, как я слышал, что это работает.