【发布时间】:2016-04-22 03:13:34
【问题描述】:
Croppie 使用 DIV 容器而不是 CANVAS 进行裁剪。我正在尝试找出如何将生成的裁剪图像从此 DIV 保存到服务器上的目录中,例如通过“保存”按钮。
这是我的 HTML 代码...
<!-- begin snippet: js hide: false -->
<!-- language: lang-html -->
<!DOCTYPE html>
<html>
<head>
<title>Demo Croppie</title>
<link rel="Stylesheet" type="text/css" href="css/croppie.css" />
<link rel="Stylesheet" type="text/css" href="css/sweetalert.css" />
</head>
<body>
<div id="testCanvas"></div>
<div class="actions" style="margin-left: auto; margin-right: auto; width:250px;">
<button class="vanilla-result">Result</button>
<button class="vanilla-rotate" data-deg="-90">Rotate Left</button>
<button class="vanilla-rotate" data-deg="90">Rotate Right</button>
</div>
<p><button onclick="function();">Save</button></p>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="js/croppie.js"></script>
<script src="js/demo.js"></script>
<script src="js/sweetalert.min.js"></script>
<script>
Demo.init();
</script>
</body>
</html>
这是我的 JavaScript 配置...
function demoVanilla() {
var vanilla = new Croppie(document.getElementById('testCanvas'), {
viewport: { width: 300, height: 300, type: 'square' },
boundary: { width: 350, height: 350 },
enableOrientation: true
});
vanilla.bind({
url: 'imgs/demo-1.jpg',
orientation: 1
});
document.querySelector('.vanilla-result').addEventListener('click', function (ev) {
vanilla.result('canvas').then(function (src) {
popupResult({
src: src
});
});
});
$('.vanilla-rotate').on('click', function(ev) {
vanilla.rotate(parseInt($(this).data('deg')));
});
}
其余部分默认来自 Croppie,https://github.com/Foliotek/Croppie,例如 demo.js 等。
【问题讨论】:
-
我认为这个问题与 javascript 本身无关,因为您只想将裁剪数据记录到您的数据库/服务器中。请考虑阅读这个问题:stackoverflow.com/questions/34237020/…
-
这是一个很好的链接,让我很接近。但唯一的事情是我对 Javascript 的了解还不够,无法成功提取上传功能。我的 Croppie 从服务器上的目录中获取图像,而不是通过上传。所以我想弄清楚如何从脚本中删除上传功能 [link]stackoverflow.com/a/34623950/1618085 并且只使用保存到服务器功能......有人可以帮我吗?
标签: javascript