Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   выделение зоны на фотке (https://javascript.ru/forum/misc/6696-vydelenie-zony-na-fotke.html)

гуня 16.12.2009 00:14

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

_______________
знакомства с иностранцами

Octane 16.12.2009 00:57

FC-CropResizer

гуня 16.12.2009 09:53

там вроде нельзя увеличивать\уменьшать зону выделения

B~Vladi 16.12.2009 10:20

http://odyniec.net/projects/imgareaselect/

neon_tmn 29.04.2010 17:45

Господа, скачал скрипт, который предложил B~Vladi, работает как надо. Но у меня вопрос, как заметил автор темы, нужно чтобы было как на сайте вконтакте.ру. Я например выделяю на фотографии область, а как мне потом получить координаты выделенной области?
И еще, я например выделил и допустим у меня есть координаты, как мне при наведении на ФИО человека, сделать чтобы автоматически выделелась область по этим координатам?
Разьясню немного, я пишу что то вроде социальной сети, но меньше по своим масштабам чем вокнтакте.ру, и вот мне бы в точности сделать функции как в вконтакте ру с отметкой человека на фотографии...

e1f 29.04.2010 17:52

Цитата:

Сообщение от neon_tmn (Сообщение 53594)
и вот мне бы в точности сделать функции как в вконтакте ру с отметкой человека на фотографии...

Неужели выдрать из исходников контакта религия не позволяет? Оо

B~Vladi 29.04.2010 17:54

Цитата:

Сообщение от neon_tmn
а как мне потом получить координаты выделенной области?

А посмотреть примеры на том же сайте не судьба?
Взято с исходника, разбирайся:
function preview(img, selection) {
    if (!selection.width || !selection.height)
        return;
    
    var scaleX = 100 / selection.width;
    var scaleY = 100 / selection.height;

    $('#preview img').css({
        width: Math.round(scaleX * 300),
        height: Math.round(scaleY * 300),
        marginLeft: -Math.round(scaleX * selection.x1),
        marginTop: -Math.round(scaleY * selection.y1)
    });

    $('#x1').val(selection.x1);
    $('#y1').val(selection.y1);
    $('#x2').val(selection.x2);
    $('#y2').val(selection.y2);
    $('#w').val(selection.width);
    $('#h').val(selection.height);    
}

$(function () {
    $('#photo').imgAreaSelect({ aspectRatio: '1:1', handles: true,
        fadeSpeed: 200, onSelectChange: preview });
});

Цитата:

Сообщение от neon_tmn
И еще, я например выделил и допустим у меня есть координаты, как мне при наведении на ФИО человека, сделать чтобы автоматически выделелась область по этим координатам?

Когда научишься получать координаты - подтяни DOM.

neon_tmn 29.04.2010 17:58

Как оперативно ответили и как оперативно отругали меня :) Я смотрел в исходниках js сайта, но там наворочено много чего мне не понятного, я с js не очень дружу, поэтому вместо того чтобы разгребать кучу кода который там приведен, решил найти что то готовое, без лишнего кода, вот и нашел эту тему :)
Но, спасибо за совет, буду разбираться...


Часовой пояс GMT +3, время: 20:30.