美文网首页
canvas 图片压缩

canvas 图片压缩

作者: 林键燃 | 来源:发表于2019-04-02 14:39 被阅读0次

描述

使用 Canvas 元素来绘制图形,需要三步

  1. 获取 canvas 对象

    var canvas = document.getElementById('canvas')
    
  1. 获取上下文环境对象 context

    var context = canvas.getContext('2d')
    
  1. 开始绘制图形

Canvas 元素

  1. 在 HTML 属性中定义宽度和高度

Canvas 对象

canvas 对象属性

属性 说明
width Canvas 的宽度
height Canvas 的高度

canvas 对象方法

属性 说明
getContext( '2d' ) 获取 Canvas 2D 上下文环境对象
toDataURL() 获取 canvas 对象产生的位图的字符串

图片操作

我们可以将图片导入到 Canvas 中进行 平铺、切割、像素处理等各种操作

绘制图片

我们使用 drawImage() 方法绘制图片

调用方式
drawImage(image, dx, dy)
drawImage(image, dx, dy, dw, dh)
drawImage(image, sx, sy, sw, dx, dy, dw, dh)
参数/名称 描述
d destination(目标图片)
s source(源图片)
image 页面中的图片
sx 源图片被截取部分的起点横坐标
sy 源图片被截取部分的起点纵坐标
sw 源图片被截取部分的宽度
sh 源图片被截取部分的高度
dx 图片左上角的横坐标
dy 图片左上角的纵坐标
dw 图片的宽度
dh 图片的高度

实例

context.drawImage(image, 0, 0, 200, 200)

压缩图片

使用 HTMLCanvasElement.toDataURL() 方法返回一个包含图片展示的 data URL

语法

canvas.toDataURL(type, encoderOptions)

参数

名称 描述
type 图片格式,默认为 image/png
encoderOpeions 指定图片格式为 image/jpeg 或 image/webp 的情况下,可以从 0 到 1 的区间内选中图片质量。如果超出取致范围,将会使用默认值 0.92.其它参数会被忽略

实例


相关文章

  • 使用antd进行头像压缩

    重要的事情说三遍canvas只支持jpg图片压缩,canvas只支持jpg图片压缩,canvas只支持jpg图片压...

  • 前端压缩图片

    原理:图片文件转换成canvas,例用canvas的quality压缩图片,再将canvas转成文件后上传 原文链...

  • elementUi el-upload组件图片上传之前压缩图片大

    将图片导入到canvas画布中,利用画布重绘压缩图片,降低图片质量 压缩方法调用

  • canvas 图片压缩

    描述 使用 Canvas 元素来绘制图形,需要三步 获取 canvas 对象var canvas = docume...

  • 移动端添加图片裁剪的坑

    本文关键:阻止冒泡、canvas压缩、canvas裁剪、生成黑色图片。 最近项目需要在添加图片时实现裁剪功能,虽然...

  • 前端图片压缩Canvas

    ?‍?图片压缩Canvas #关于如何实现压缩 查阅MDN找到的是这个API: HTMLCanvasElement...

  • vue 图片压缩

    vue 图片压缩 上传图片大于100* 1024 的用canvas 来压缩来解决 然后IOS拍照上传会有图片旋转的...

  • vue 图片压缩

    vue 图片压缩 上传图片大于100* 1024 的用canvas来压缩来解决 然后IOS拍照上传会有图片旋转的问...

  • Vue上传图片压缩的问题

    上传图片太大,需要前台进行图片压缩上传图片大于100* 1024 的用canvas 来压缩来解决然后IOS拍照上传...

  • 图片上传压缩预览

    这里的 标签是用来预览图片的: 读取上传文件: 利用canvas进行图片的压缩: 我们比较两张图片压缩前后的区别:

网友评论

      本文标题:canvas 图片压缩

      本文链接:https://www.haomeiwen.com/subject/cbkgbqtx.html