jQuery In-Place Image Cropping Plugin - cropbox
| File Size: | 9.72 KB |
|---|---|
| Views Total: | 6663 |
| Last Update: | |
| Publish Date: | |
| Official Website: | Go to website |
| License: | MIT |
cropbox is a jQuery plugin that enables you to crop an image by mouse drag with image pan & zoom support. The plugin will automatically generate a URL for the cropped image on the client (requires HTML5 compliant browser).
Basic Usage:
1. Include the jQuery library and jQuery cropbox plugin on the web page.
<link type="text/css" media="screen" rel="stylesheet" href="jquery.cropbox.css"> <script src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> <script type="text/javascript" src="jquery.cropbox.js"></script>
2. Include the hammer.js or jQuery hammer.js to support gestures for panning and zooming the cropbox (OPTIONAL).
<script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/hammer.js/1.0.10/hammer.js"></script>
3. Include the jQuery mousewheel plugin to support zoom in & out using the mousewheel (OPTIONAL).
<script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/jquery-mousewheel/3.1.11/jquery.mousewheel.js"></script>
4. Insert an image you want to crop in the document. Use cropwidth and cropheight attributes to define the height and width of the image cropping box.
<img class="cropimage" alt="" src="img.jpg" cropwidth="400" cropheight="300"/>
5. Create a results container to display the information of your cropped image.
<div class="results"> <b>X</b>: <span class="cropX"></span> <b>Y</b>: <span class="cropY"></span> <b>W</b>: <span class="cropW"></span> <b>H</b>: <span class="cropH"></span> </div>
6. Create a download link that will auto update as you crop an image.
<div class="download"> <a href="#" download="crop.png">Download</a> </div>
7. The Javascript to enable the plugin.
<script type="text/javascript" defer>
$( function () {
$( '.cropimage' ).each( function () {
var image = $(this),
cropwidth = image.attr('cropwidth'),
cropheight = image.attr('cropheight'),
results = image.next('.results' ),
x = $('.cropX', results),
y = $('.cropY', results),
w = $('.cropW', results),
h = $('.cropH', results),
download = results.next('.download').find('a');
image.cropbox( {width: cropwidth, height: cropheight, showControls: 'auto' } )
.on('cropbox', function( event, results, img ) {
x.text( results.cropX );
y.text( results.cropY );
w.text( results.cropW );
h.text( results.cropH );
download.attr('href', img.getDataURL());
});
} );
} );
</script>
8. Default plugin options.
width: 200, height: 200, zoom: 10, maxZoom: 1, controls: null, showControls: 'auto', label: 'Drag to crop'
Change logs:
2015-05-07
- Support for hammer.js v2.0.4
2014-04-14
- Fixed drag function so update is only called is skipupdate is false
2014-08-28
- Fixed bug where if cropbox element was in a form element, the zoom-in and zoom-out buttons would submit the form. This is because buttons have the default type of "submit"
- Removed CSS expression, which is no longer supported in IE8+, so it is not needed by any of this plugins supported browsers. This line was also causing compile errors in some Less pre-processor libraries.
2014-06-28
- Updating css for zoom buttons
- Use buttons instead of links for zoom buttons
This awesome jQuery plugin is developed by acornejo. For more Advanced Usages, please check the demo page or visit the official website.











