前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Cavas.drawImage图片拉伸问题

Cavas.drawImage图片拉伸问题

作者头像
发布2021-11-08 10:19:21
2K0
发布2021-11-08 10:19:21
举报
文章被收录于专栏:IT杂症

canvas在和jq.width()设置宽高的时候会出现拉伸情况。

Cavas.drawImage图片拉伸问题
Cavas.drawImage图片拉伸问题

产生拉伸的方式

能产生拉伸的还有行间style样式也会产生变形拉伸 canvas.style.width = "1000px";也会产生变形 百分比也会产生变形

不会拉伸的方式

直接写width,height不会产生变形 $('#myCanvas').attr('width',width)

代码语言:javascript
复制
   <img id='source' src="https://img.lookcss.com/posters.jpg" style="display: none;" />
    <canvas id="myCanvas">
    </canvas>
<button class="btn" style="padding:20px">生成海报</button>
<script>
       $(function () {
   var w = $(window).width()
   var h = $(window).height()
   var cvs = document.getElementById('myCanvas');
   var ctx = cvs.getContext('2d')
    $('#myCanvas').width(w)
    $('#myCanvas').height(h)
        var imgPath = document.getElementById('source');
        ctx.drawImage(imgPath, 0, 0, 445, 790, 0, 0, 445, 790) 
//这样的canvas会出现拉伸情况

   $(".btn ").click(function () {       
                $('#myCanvas').attr('width', w-10)
            $('#myCanvas').attr('height', h-10)        
//使用attr或者canvas直接指定宽高的话不会出现问题
                ctx.drawImage(imgPath, 0, 0, 445, 790, 0, 0, 445, 790)          
        });

)}
</script>
Cavas.drawImage图片拉伸问题
Cavas.drawImage图片拉伸问题
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019年11月29日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 产生拉伸的方式
  • 不会拉伸的方式
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档