이번에는 사진 미리보기 압축 및 업로드를 구현하기 위한 JS+Canvas를 소개하겠습니다. 사진 미리보기 압축 및 업로드를 구현하기 위한 JS+Canvas용 notes
는 다음과 같습니다. 바라보다. 먼저 렌더링을 살펴보겠습니다. 놀랍습니다<input type="file" accept="image/*" type="file"" name="imageFile" onchange="upload()">
function upload() { let file = document.querySelector('input[type=file]').files[0] // 获取选择的文件,这里是图片类型 let reader = new FileReader() reader.readAsDataURL(file) //读取文件并将文件以URL的形式保存在resulr属性中 base64格式 reader.onload = function(e) { // 文件读取完成时触发 let result = e.target.result // base64格式图片地址 var image = new Image() image.src = result // 设置image的地址为base64的地址 image.onload = function(){ var canvas = document.querySelector("#canvas"); var context = canvas.getContext("2d"); canvas.width = image.width; // 设置canvas的画布宽度为图片宽度 canvas.height = image.height; context.drawImage(image, 0, 0, image.width, image.height) // 在canvas上绘制图片 let dataUrl = canvas.toDataURL('image/jpeg', 0.92) // 0.92为压缩比,可根据需要设置,设置过小会影响图片质量 // dataUrl 为压缩后的图片资源,可将其上传到服务器 } } }
요약
이 기사의 사례를 읽으신 후 방법을 마스터하셨다고 생각합니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요! 추천 자료:postman+json 및 springmvc가 일괄 추가를 구현하는 방법
위 내용은 JS+Canvas는 이미지 미리보기 압축 및 업로드를 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!