Я работаю над веб-приложением, где пользователи перетаскивают текст на изображении. В идеале, я хотел бы, чтобы мои приложения могли сохранять их изображение с наложенным текстом. Для этого я планирую использовать PIL (Python Imaging Library) для воссоздания изображения в бэкэнд.
В форме HTML submit я хотел бы отправить значения координат четырех углов img, координат любого наложенного текста вместе с их шестнадцатеричным цветом и размером шрифта.
Можно ли все это записать с помощью jQuery или JavaScript?
В этом скрипте JS, http://jsfiddle.net/booyaa/YvJhE/ текст перетаскивается. Скажем, пользователь перемещает текст по изображению. Чтобы воссоздать изображение (с текстом, который пользователь перетащил), мне понадобится координаты того, куда был перетащен текст. Возможно ли XY-координаты для элемента HTML с jQuery?
<div id="draggable" class="ui-widget-content">
<p>Drag me around</p>
</div>
<img src="http://imgur.com/JS1HXFw.jpg">
$( "#draggable" ).draggable();
$("#capture").click(
function(event) {
var photoCoords = $("img").position();
})
Я получаю undefined для var photoCoords в консоли. любая идея почему?
Вы можете использовать
$(selector).offset();
или
$(selector).position();
для получения координат элемента. В то время как offset
дает вам координаты относительно элемента, position
дает вам координаты относительно родительского элемента смещения элемента.
В примере, который вы #draggable
оба будут возвращаться точно так же, как родитель смещения для #draggable
фактически это тело, которое расположено на 0,0 относительно вашего документа.
В вашем случае использования, как я понял, вы, вероятно, захотите получить как #draggable
и offset
изображения и передать его на сервер. Сравнивая координаты обоих элементов (top
и left
), вы можете легко определить их положение относительно друг друга и иметь все, чтобы создать скомпонованное изображение.