<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Cropper</title>
<!-- <link rel="stylesheet" href="css/bootstrap.min.css"> -->
<link rel="stylesheet" href="css/cropper.css">
</head>
<body>
<div class="container">
<h1 class="page-header">Customize preview for Cropper</h1>
<div class="row">
<div class="col-sm-6">
<h3 class="page-header">Cropper</h3>
<div id="mycontainer">
<img class="img-responsive" id="image" src="1.jpg" alt="">
</div>
</div>
<div class="col-sm-6">
<h3 class="page-header">Result</h3>
<button type="button" class="btn btn-primary" id="button">Crop</button>
<div id="result"></div>
</div>
</div>
</div>
<!-- Scripts
<script src="js/bootstrap.min.js"></script>
-->
<script src="js/jquery.min.js"></script>
<script src="js/cropper.js"></script>
<script src="js/hammer.min.js"></script>
<script>
//手势监听控件
var $mycontainer= $('#mycontainer');//hammer.js
var $image = $('#image');//cropper.js
$(function () {
var $previews = $('.preview');
var $button = $('#button');
var $result = $('#result');
var croppable = false;
$image.cropper({
viewMode: 0, //移出边框
dragMode: 'none', //crop move none
autoCropArea: 1, //0~1 percent
restore: false, //true:缩小浏览器 图片也自适应缩小
guides: false, //true:cropbox内部虚线显示
highlight: false, //true:白色透明蒙版
cropBoxMovable: false,
cropBoxResizable: false,
zoomable:false,
//加载图片结束
built: function () {
croppable = true;
// var obj =$image.cropper('getCanvasData');//height width top left naturalHeight naturalWidth
//图片初始
$image.cropper('setCanvasData',{
"left":0,
"top":0
});
setMyCropBoxData();
},
build: function(){
}
});
$button.on('click', function () {
var croppedCanvas;
var roundedCanvas;
if (!croppable) {
return;
}
// Crop
croppedCanvas = $image.cropper('getCroppedCanvas');
// Show
$result.html('<img src="' + croppedCanvas.toDataURL() + '">');
//$result.html('<div>'+JSON.stringify($image.cropper('getCanvasData')));
});
});
/**
*设置自己定义的剪切图大小 mymove.js canvas绘制时也有调用
*/
function setMyCropBoxData(){
//容器大小
$(".cropper-container").css("width",window.innerWidth);
$(".cropper-container").css("height",300);
//设置剪切的大小位置
$image.cropper('setCropBoxData',{
"left":0,
"top":0,
"height":200,//如果图宽高小于200 则以图片的高度为准 cropper.js的bug
"width":200
});
//$(".cropper-crop-box").css("height",200); //对切图无效
//$(".cropper-crop-box").css("width",200); //对切图无效
}
</script>
<script src="js/mymove.js"></script><!-- 手势操作逻辑 -->
</body>
</html>