首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

html5前端图片压缩

如今手机像素越来越高,造成拍出来的照片越来越大,随便拍一张就好几兆,于是乎就有了一种需求就是压缩图片,在之前压缩图片的功能是在后台操作的,之后前端亦可以进行图片的压缩功能。...前端进行图片压缩的原理很简单,就是利用canvas来进行压缩,js将file框内的图片文件读取之后,按照比例绘制到canvas上,然后将canvas保存成图片即可实现了压缩功能。...,调用方法时填入图片允许的最大宽度或者是最大的高度 //如果最大宽度为0 则按照最大高度固定,宽度自适应的方式来实现 //如果是最大高度为0,则按照最大的宽度来实现...ctx.drawImage(img,0,0, width, height); return canvas.toDataURL("image/jpeg", 0.7);//这里的0.7值的是图片的质量...base64 $("#myImage").attr("src",thumb); } } 至此,图片的压缩功能已经完全实现了

3.6K50
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    HTML5图片预加载

    HTML5中,我们可以使用drawImage方法在canvas上进行画图操作,其基本代码如下: var canvas = document.getElementById("canvas"); var...image = new Image(); image.src = "images/01.jpg"; context.drawImage(image, 0, 0); 不过我们会发现这样写是无法显示出图片的...,因为图片并没有加载完全,我们就调用了drawImage方法,我们可以使用img的onload方法,使图片加载完全后 在执行drawImage操作,代码如下 var image = new Image(...= "images/01.jpg"; image.onload = function() { context.drawImage(image, 0, 0); } 或者使用标签先加载图片...('image'); 但是在图片较多的情况下,使用上面两种方式都不是太优雅,我们可以使用下面的方法,等待所有图片加载完全后,再执行其他操作 document.addEventListener("DOMContentLoaded

    2.8K20

    HTML5 拖拽上传图片实例

    ,一种拖拽上传,一种常规的选择文件上传,另外的就是添加网络图片。...它很巧妙的把三种上传模式整合到了一起,而且你可以用IE浏览器浏览下,如果不支持HTML5,是没有拖拽上传图片的提示的,如图:   拖拽上传最重要的就是js部分的代码,它实现了70%的功能,另外30%仅仅是把图片信息提交到后台...fileList.length == 0){ $('.dashboard_target_box').removeClass('over'); return; } //检测文件是不是图片...主要实现代码是从“功能实现”开始的,这块具体为何这样操作,原理是什么,我就不多说了,大家可以参考下这篇文章:《人人网首页拖拽上传详解(HTML5 Drag&Drop、FileReader API、formdata...文章最开始提到,还有点击选择文件上传和网络图片,因为这2个不属于这次的主题范围内,就不说了。况且这2个功能实现起来都不麻烦。 demo下载

    2.7K30

    Flutter的图片组件

    // alignment: Alignment.bottomLeft, //设置图片的背景颜色,通常和 colorBlendMode 配合一起 使用,这样可以是图片颜色和背景色混合...* BoxFit.cover:显示可能拉伸,可能裁切,充满(图片要 充满整个容器,还不变形)。...增加本地图片的时候,要分别在images文件夹、2.0x文件夹、3.0x文件夹、4.0x文件夹这四个文件夹下面分别倒入同一张图片所对应的不同分辨率大小的图片,我们的机器设备会根据屏幕的分辨率来确定取哪一个文件夹下的图片...通过Container的 borderRadius 和 image 的结合来设置图片的圆角: //利用container特性设置图片圆角 class HomeContent1 extends StatelessWidget...,就是利用ClipOval组件: //利用ClipOval设置图片圆角 class HomeContent2 extends StatelessWidget { @override Widget

    50340

    html5实现图片预览功能

    我们在上传图片的时候往往需要预览,目前大部分的网站,总结起来用三种方式来实现: 第一种最为常见,需要和后端配合。...点击上传图片的input,触发input的onchange事件,在onchange事件中向后端提供的接口发送图片信息,之后返回的数据中包括图片的url,再将url赋值给img的src属性从而实现图片预览...当然,前端的朋友会产生疑惑,图片是以什么形式传递到后端呢?针对这个我会单独写一篇文章来阐述,现在暂不详述。简单来说,表单形式传递图片会修改entype属性,这里一般会用formdata实现。...FileReader实例化的对象上有个方法:reader.readAsDataURL(参数), 这个方法是个回调函数,参数为上面获取的包含图片信息的file对象,readAsDataURL读取图片信息对象完成后...,会触发reader上的onloadend事件,该事件的回调函数中的数据就是datebase64化后的图片信息,将其插入到图片的img的src图片展现。

    6K40

    『Flutter』常用组件 按钮、图片

    1.前言 经过上一篇文章的学习,我们大家可以了解到布局相关的组件,但是在实际开发中,我们还需要使用到其他的组件,比如按钮、图片、文本、输入框等等,这些组件都是我们在开发中经常使用的,所以本篇文章我们就来学习一下这些常用组件...textDirection: TextDirection.rtl, ), ], ) ) ) ); } 5.图片组件...在 Flutter 中,用于显示图片的主要组件是 Image。...这个组件提供了多种构造函数来从不同来源加载和显示图片,包括网络、本地文件、资源等。 常用的 Image 组件属性及其作用: image (ImageProvider): 图片的来源。...width (double): 图片的宽度。如果不设置,图片会根据其父组件和其他内容自动调整大小。 height (double): 图片的高度。同样,如果不设置,会自动调整。

    50331

    基于 HTML5 Canvas 的拓扑组件开发

    在现在前端圈大行其道的 React 和 Vue 中,可复用的组件可能是他们大受欢迎的原因之一, 在 HT 的产品中也有组件的概念,不过在 HT 中组件的开发是依托于 HTML5 Canvas 的技术去实现的..., 也就是说如果你有过使用 Canvas 的开发经验你就可以来封装自己的组件。...下面我以一个进度环为例,来探究一下如何使用ht.js封装出一个拓扑组件。 效果图 ?...代码实现 前置知识 自定义组件 除了HT预定义的组件类型外,用户还可以自定义扩展类型,自定义有两种方式: 直接将type值设置成绘制函数:function(g, rect, comp, data...绘制组件 在绘制组件的过程中,我们需要把一些边界条件和特殊情况考虑到,来保持组件的扩展性和稳定性 下面就是一些我的心得 在做了 g 操作的头尾分别使用 save 和 restore ,以此来保障 g

    1.6K20
    领券