<!DOCTYPE html>
<html>
<head> <script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
<script src="https://cdn.bootcss.com/croppie/2.6.2/croppie.js"></script>
<link rel="Stylesheet" href="https://cdn.bootcss.com/croppie/2.6.2/croppie.css" />
<style>
button,
a.btn {
background-color: #189094;
color: white;
padding: 10px 15px;
border-radius: 3px;
border: 1px solid rgba(255, 255, 255, 0.5);
font-size: 16px;
cursor: pointer;
text-decoration: none;
text-shadow: none;
}
button:focus {
outline: 0;
} .file-btn {
position: relative;
}
.file-btn input[type="file"] {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
opacity: 0;
} .actions {
padding: 5px 0;
}
.actions button {
margin-right: 5px;
}
.pop_main{display:none}
.pop_con{ width: 400px;
height: 400px;
background: #fff;
z-index: 100;
position: relative;}
.pop_mask{background-color: rgba(0, 0, 0, 0.5);position: absolute;
width: 100%;
left: 0;
top: 0;
bottom: 0;}
</style>
</head>
<body>
<div class="actions">
<button class="file-btn">
<span>上传</span>
<input type="file" id="upload" value="选择图片文件" />
</button> <div class="pop_main">
<div class="pop_con">
<div> <button class="pop_close">x</button> </div>
<div class="crop">
<div id="upload-demo"></div>
<button class="upload-result">裁剪</button>
</div> </div>
<div class="pop_mask"></div>
</div> <div id="result"></div>
</div>
<script>
$(function(){
var $uploadCrop; function readFile(input) {
if (input.files && input.files[0]) {
console.log("file----",input.files[0])
var reader = new FileReader(); reader.onload = function (e) {
$uploadCrop.croppie('bind', {
url: e.target.result
});
} reader.readAsDataURL(input.files[0]);
}
else {
alert("Sorry - you're browser doesn't support the FileReader API");
}
} $uploadCrop = $('#upload-demo').croppie({
viewport: {
width: 200,
height: 200,
type: 'circle'
},
boundary: {
width: 300,
height: 300
}
}); $('#upload').on('change', function () {
$(".pop_main").show();
$(".pop_con").css({'top':0,'opacity':0})
$(".pop_con").animate({'top':'50%','opacity':1})
readFile(this);
});
$('.upload-result').on('click', function (ev) {
$uploadCrop.croppie('result', 'canvas').then(function (resp) {
console.log("file---2",resp)
popupResult({
src: resp
});
});
});
$('.pop_close').on('click',function(ev){
$(".pop_main").hide()
var file = $("#upload")
file.after(file.clone().val(""));
file.remove();
})
function popupResult(result) { var html;
if (result.html) {
html = result.html;
}
if (result.src) {
html = '<img src="' + result.src + '" />';
}
$("#result").html(html);
}
});
</script>
</body>
</html>

  

剪裁圆形图片cropie的更多相关文章

  1. ios---剪裁圆形图片方法

    剪裁圆形图片 - (instancetype)xmg_circleImage { // 1.开启图形上下文 // 比例因素:当前点与像素比例 UIGraphicsBeginImageContextWi ...

  2. WindowsPhone8中实现圆形图片的生成显示

    原文 WindowsPhone8中实现圆形图片的生成显示 很多软件中(比如QQ)用到了许多圆形图片,作为用户头像等等,原始图片往往是方形的,那么怎么样将方形的图片显示成圆形呢? 一种方法是当背景为固定 ...

  3. Android 自定义圆形图片 CircleImageView

    1.效果预览 1.1.布局中写自定义圆形图片的路径即可 1.2.然后看一看图片效果 1.3.原图是这样的 @mipmap/ic_launcher 2.使用过程 2.1.CircleImageView源 ...

  4. android绘制圆形图片的两种方式

    看下效果先 下面有完整的示例代码 使用BitmapShader(着色器) 我们在绘制view 的时候 就是小学上美术课 用水彩笔在本子上画画 使用着色器绘制圆形图片最简单的理解方式 就是把bitmap ...

  5. Glide实现圆角和圆形图片

    实现圆形图片 , 传参第一个为上下文, 第二个为角度 package com.hh.beauter.util; import android.content.Context; import andro ...

  6. iOS常见用户头像的圆形图片裁剪常见的几种方法

    在开发中,基本上APP的用户头像的处理都需要把用户所上传的方形图片,处理为圆形图片.在这里就总结三种常见的处理圆形图片的方法. 1.使用位图上下文 2.使用UIView的layer进行处理 3.使用r ...

  7. Android实现圆形图片

     情景再现: 写Android程序也有一段时间了,今天突然被问怎么实现一个圆形图片,很多app图像是圆形的.但是用户上传的图像可不是圆的,所以问题就来了,需要我们代码实现圆形图片.但是大脑飞转想到第三 ...

  8. UIImage类扩展返回一个带边框的圆形图片

    /** * 将image转换为圆型带边框的图片(最好写一个UIImage的类扩展) * * @param name 图片的名字 * @param borderWidth 外层边框的宽度 * @para ...

  9. Android_AsyncTaskDemo之QQ记步数(画圆形图片知识)

    今天学习了AsyncTask Android 的异步机制.我简单的实现我的一个小小案例--qq记步数.然后穿插一个画圆形图片的知识点. 由于所学知识有限,目前我计数,还有排名等等我就简单的利用随机数实 ...

  10. android通过Canvas和Paint截取无锯齿圆形图片

    一个通过Canvas和Paint截取无锯齿圆形图片. /** * 根据原图和变长绘制圆形图片 * * @param source * @param min * @return */ public st ...

随机推荐

  1. UniApp学习-多端兼容 & 跨域

    多端兼容配置 标签 <!-- 一般标签 --> body ---- page div,ul, li, table,tr,td ---- view span,b,i,font ---- te ...

  2. 上传图片到Mongo数据库;从Mongo数据库下载图片显示到前端

    /** * 上传一个图片文件,保存到mongo数据库中 * @param doc * @param parent 文件所在的目录 * @param request * @return */ @Post ...

  3. System.IO.FileNotFoundException: Could not load file or assembly 'System.IO.Compression.FileSystem系统找不到指定的文件

    错误:System.IO.FileNotFoundException: Could not load file or assembly 'System.IO.Compression.FileSyste ...

  4. [Err] [Dtf] 1044 - Access denied for user 'root'@'localhost' to database 'information_schema'

    在从Oracle向mysql数据库传输数据时,报出来这个错误,原因是因为没有打开mysql数据库,在navicat里打开mysql,并选中要传输的数据库 再重复传输一下即可

  5. 一、100ASK_IMX6ULL嵌入式裸板学习_LED实验(中)

    以C语言方式驱动(例程与代码分析) 韦东山的例程: start.s部分: .text .global _start @全局标号 _start: //设置栈 ldr sp,=0x80200000 @设置 ...

  6. spring的aop的粗浅理解

    aop有什么用? 假设你写了一本书,写的是一个平民的日常聊天.现在突然你想让这个平民变成一个书生的口气.于是你想在这个平民的每句话之前加上"之乎",后面加上"者也&quo ...

  7. 虚拟机搭建linux环境&&使用winscp连接搭建好的linux环境步骤

    一.需要的工具 虚拟机应用程序.一个镜像(ubuntu等).winscp可执行程序 二.安装虚拟机以及插入镜像 1)选择虚拟机 我安装的是VMware 就是这个,因为之前用的都是vitualbox现在 ...

  8. 源码编译mariadb

    1.写一个一键安装 mariadb 数据库脚本. [root@centos8mini ~]#vim install_mariadb #!/bin/bash#安装包PACKAGE="maria ...

  9. ios打开第三方地图app

    https://www.jianshu.com/p/691dd39cb28c [ios调起 地图app]分三步: 1.配置相对于地图app的LSApplicationQueriesSchemes白名单 ...

  10. java的jvm学习