首页 > 其他分享 >html图片格式转换

html图片格式转换

时间:2022-12-01 16:01:38浏览次数:31  
标签:function src canvas 转换 图片格式 html var document image

<input type="file" id="inputimg">
<select id="myselect">
    <option value="1">webp格式</option>
    <option value="2">jpeg格式</option>
    <option value="3">png格式</option>
</select>
<button id="start">开始转换</button>
<p>预览(右键另存为):</p>
<img id="imgShow" src="" alt="">
<script>
    /*事件*/
    document.getElementById('start').addEventListener('click', function () {
        getImg(function (image) {
            var can = imgToCanvas(image),
                imgshow = document.getElementById("imgShow");
            imgshow.setAttribute('src', canvasToImg(can));
        });
    });
    // 把image 转换为 canvas对象
    function imgToCanvas(image) {
        var canvas = document.createElement("canvas");
        canvas.width = image.width;
        canvas.height = image.height;
        canvas.getContext("2d").drawImage(image, 0, 0);
        return canvas;
    }
    //canvas转换为image
    function canvasToImg(canvas) {
        var array = ["image/webp", "image/jpeg", "image/png"],
            type = document.getElementById('myselect').value - 1;
        var src = canvas.toDataURL(array[type]);
        return src;
    }
    //获取图片信息
    function getImg(fn) {
        var imgFile = new FileReader();
        try {
            imgFile.onload = function (e) {
                var image = new Image();
                image.src = e.target.result; //base64数据
                image.onload = function () {
                    fn(image);
                }
            }
            imgFile.readAsDataURL(document.getElementById('inputimg').files[0]);
        } catch (e) {
            console.log("请上传图片!" + e);
        }
    }
</script>

 

标签:function,src,canvas,转换,图片格式,html,var,document,image
From: https://www.cnblogs.com/gzhq/p/16941677.html

相关文章

  • mvc中使用视图模板cshtml动态生成generated文件
    一、原因在MVC中,经常会使用一些模板视图,这样会把公用的页面定好,各个功能模块就可以引用调用,无需每个页面都写相同的代码,如果后续修改,也需要在一个地方就可以更改内容。比如......
  • C# yyyyMMddHHmmss格式转换DateTime
    例如14位日期:20170417101215 转换DateTime格式:vartime="20170417101215";vardateTime=DateTime.ParseExact(time,"yyyyMMddHHmmss",System.Globalization.CultureInf......
  • HtmlAgilityPack.dll网页抓取数据
            根据公司的需求需要到指定网站抓取相关数据,即爬虫。               网上有很多的工具以及第三方的dll,也可以用WebClient等进行抓取网站......
  • js转换Date日期格式
    有时候做项目会用到js的date日期格式,因为Date()返回的格式不是我们需要的,Date()返回格式:ThuMar19201512:00:00GMT+0800(中国标准时间)而我们则需要这样的格式:2015-......
  • HTML5 data-* 自定义属性
    HTML5data-*自定义属性  在jQuery的attr与prop提到过在IE9之前版本中如果使用property不当会造成内存泄露问题,而且关于Attribute和Property的区别也让人十分头痛,在......
  • html使用frame框架目录导航跳转至指定章节的用法
    html使用frame框架导航跳转至指定节的用法,实现在同一个页面中不使用js进行页面的跳转。左边页面是目录页,右边是内容页。点击左边目录,右边内容页跳转到相应的章节。实现代......
  • YL17系列 接触电阻导通电阻四线毫欧电阻信号隔离转换器0-100mΩ/0-200mΩ/0-500mΩ/0-
    特点  四线测量法,内置高精度恒流源 1mS高速转换,转换精度0.5%以内 工业级温度范围:-40 ~+85℃a 电源、信号:输入/输出3000VDC三隔离 5VDC,12VDC,15VDC,24VDC±10%单电......
  • html5Plus 读写剪切板(粘贴板读取、写入、编辑)
    空了封装个Helper类,先将就看吧。<!DOCTYPEhtml><html><head><metacharset="utf-8"><metaname="viewport"content="initial-scale=1.0,maximum-scale=1.0......
  • C++ 字符串字母大小写转换
    C++ 字符串字母大小写转换使用algorithm,里面的tolower(转小写)toupper(转大写) #include<iostream>#include<string>usingnamespacestd;#include<algorithm> i......
  • C++ wchar_t char wstring string 转换
    1.wchart_t转wstring1wchar_ttmpRuleStr[10]={0};2wstringm_tmpRuleStr=wstring(tmpRuleStr);2.wstring转wchar_t1wstringstr="123";2wchar_t*tmp=......