Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

JQuery JCrop - How to set a fixed size selection area?

Tags:

jquery

crop

jcrop

I'm trying to figure out how to fix the selection box size under JCrop. The documentation mentions how to set an initial selection area but not how to make it fixed size. Does anybody knows how could I make it fixed. Thanks in advance.

http://deepliquid.com/content/Jcrop_Manual.html

like image 306
user43092 Avatar asked Dec 06 '08 07:12

user43092


3 Answers

You are basically looking for the API section. Having extensively used this plugin myself, I know exactly what you're looking for:

var api;
var cropWidth = 100;
var cropHeight = 100;

$(window).load(function() {

    // set default options
    var opt = {};

    // if height and width must be exact, dont allow resizing
    opt.allowResize = false;
    opt.allowSelect = false;

    // initialize jcrop
    api = $.Jcrop('#objectId', opt);

    // set the selection area [left, top, width, height]
    api.animateTo([0,0,cropWidth,cropHeight]);

    // you can also set selection area without the fancy animation
    api.setSelect([0,0,cropWidth,cropHeight]);

});
like image 141
Corey Ballou Avatar answered Nov 16 '22 17:11

Corey Ballou


you can set the aspectRatio as decimal value

$('#jcrop_target').Jcrop({
    setSelect: [0,0,150,100],
    aspectRatio: 150/100
});
like image 14
tuffkid Avatar answered Nov 16 '22 18:11

tuffkid


You can use the aspectRatio option. This will force a square selection

$(function(){
    $('#cropbox').Jcrop({
        aspectRatio: 1
    });
});

Or aspectRatio: 16/9 would make it wide sreeen :-)

like image 14
The Disintegrator Avatar answered Nov 16 '22 17:11

The Disintegrator