广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >js canvas实现圆角图片
  • 648
分享到

js canvas实现圆角图片

2024-04-02 19:04:59 648人浏览 八月长安
摘要

本文实例为大家分享了js canvas实现圆角图片的具体代码,供大家参考,具体内容如下 圆角图片的代码实现: <!DOCTYPE html> <html lan

本文实例为大家分享了js canvas实现圆角图片的具体代码,供大家参考,具体内容如下

圆角图片的代码实现:


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body style="background: rgba(199,237,204,1)">
 
<div style="display:flex; flex-direction: row">
 
    <!--通过style方式为canvas设置宽高在火狐浏览器上导致绘制内容纵向拉伸。。。-->
    <canvas id="drawing" width="400px" height="400px">canvas to draw</canvas>
 
    <pre id="container" style="margin: 10px"/>
 
    <img src=//img.jbzj.com/file_images/article/202109/202191115608734.jpg>
</div>
</body>
<script type="text/javascript">
 
    window.οnlοad=function () {
        var drawing = document.getElementById('drawing');
 
        if (drawing.getContext) {
            print('support')
            addRoundRectFunc();
            var context = drawing.getContext('2d');
            draw(context);
 
        } else {
            print('not ')
        }
    }
 
 
    function draw(context) {
        context.fillStyle = 'red';
 
        var image = document.images[0];
 
        context.roundRect(0,0,image.width/2,image.height/2,30,true)
 
        context.globalCompositeOperation='source-in';
        context.drawImage(image, 0, 0, image.width / 2, image.height / 2)
        // toImage();
 
    }
 
    function addRoundRectFunc() {
        CanvasRenderinGContext2D.prototype.roundRect =
            function (x, y, width, height, radius, fill, stroke) {
                if (typeof stroke == "undefined") {
                    stroke = true;
                }
                if (typeof radius === "undefined") {
                    radius = 5;
                }
                this.beginPath();
                this.moveTo(x + radius, y);
                this.lineTo(x + width - radius, y);
                this.quadraticCurveTo(x + width, y, x + width, y + radius);
                this.lineTo(x + width, y + height - radius);
                this.quadraticCurveTo(x + width, y + height, x + width - radius, y + height);
                this.lineTo(x + radius, y + height);
                this.quadraticCurveTo(x, y + height, x, y + height - radius);
                this.lineTo(x, y + radius);
                this.quadraticCurveTo(x, y, x + radius, y);
                this.closePath();
                if (stroke) {
                    this.stroke();
                }
                if (fill) {
                    this.fill();
                }
            };
    }
 
    function toImage() {
        var imageUri = drawing.toDataURL('image/png');
        var imageTag = document.createElement('img');
        imageTag.style = 'margin:10px;width:200px;height:200px'
        imageTag.src = imageUri;
        document.body.appendChild(imageTag)
    }
 
    function print(txt) {
        document.getElementById("container").innerHTML += ('\n') + txt;
    }
 
    document.body.onclick = function () {
        window.location.reload()
    }
    console.log = print;
 
 
</script>
 
 
</html>

效果图:

补充一段使用小代码:canvas 生成圆角图片(头像等)


circleImg(ctx, img, x, y, r) {
    ctx.save();
    var d =2 * r;
    var cx = x + r;
    var cy = y + r;
    ctx.arc(cx, cy, r, 0, 2 * Math.PI);
    ctx.clip();
    ctx.drawImage(img, x, y, d, d);
    ctx.restore();
  }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

--结束END--

本文标题: js canvas实现圆角图片

本文链接: https://www.lsjlt.com/news/134258.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • js canvas实现圆角图片
    本文实例为大家分享了js canvas实现圆角图片的具体代码,供大家参考,具体内容如下 圆角图片的代码实现: <!DOCTYPE html> <html lan...
    99+
    2022-11-12
  • canvas如何截取圆角图片
    小编给大家分享一下 canvas如何截取圆角图片,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!   不支持iframe   ...
    99+
    2022-10-19
  • Android基于Fresco实现圆角和圆形图片
    Fresco是FaceBook开源的Android平台图片加载库,可以从网络,从本地文件系统,本地资源加载图片 Fresco本身已经实现了圆角以及圆形图片的功能。 <!--圆形...
    99+
    2022-11-13
  • Android实现圆角图片的方法
    本文实例为大家分享了Android实现圆角图片的具体代码,供大家参考,具体内容如下 效果图 创建类CustomRoundAngleImageView public class ...
    99+
    2022-11-12
  • Android实现图片设置圆角形式
    本文实例为大家分享了Android实现图片设置圆角形式的具体代码,供大家参考,具体内容如下 1.自定义的图片圆角形式CircleImageView类 public class C...
    99+
    2022-11-12
  • Android中的图片圆角怎么实现
    这篇文章主要介绍了Android中的图片圆角怎么实现的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Android中的图片圆角怎么实现文章都会有所收获,下面我们一起来看看吧。Android 开发中,经常需要对图片...
    99+
    2023-06-29
  • android 设置圆角图片实现代码
    代码如下: <xml version="1.0" encoding="utf-8"> <LinearLayout xmlns:android="http:/...
    99+
    2022-06-06
    图片 Android
  • android 实现圆角图片解决方案
    现在我们就来看看怎么样把图片的四角都变成圆形的,为什么要这样做那,如果要是这样界面就会非常的美观,下面我们就来看看代码吧。 java代码: 代码如下: public stat...
    99+
    2022-06-06
    图片 解决方案 Android
  • Android 实现圆角图片的简单实例
    Android 实现圆角图片的简单实例实现效果图:本来想在网上找个圆角的例子看一看,不尽人意啊,基本都是官方的Demo的那张原理图,稍后会贴出。于是自己自定义了个View,实现图片的圆角以及圆形效果。效果图:Android 圆角图片的实现形...
    99+
    2023-05-31
    android 圆角图片 roi
  • Android基于Fresco怎么实现圆角和圆形图片
    这篇文章主要介绍“Android基于Fresco怎么实现圆角和圆形图片”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Android基于Fresco怎么实现圆角和圆形图片”文章能帮助大家解决问题。Fr...
    99+
    2023-06-29
  • Android开发实现图片圆角的方法
    本文讲述了Android开发实现图片圆角的方法。分享给大家供大家参考,具体如下: Bitmap myCoolBitmap = ... ; // <-- Your bit...
    99+
    2022-06-06
    方法 图片 android开发 Android
  • Android中图片圆角三种实现方法
    目录方法一方法二方法三Android 开发中,经常需要对图片进行二次处理,比如添加圆角效果 或 显示圆形图片; 方法一 通过第三方框架 Glide 设置圆角效果; 写法1: Requ...
    99+
    2022-11-13
  • CSS3怎么制作圆角图片和椭圆形图片
    这篇文章主要讲解了“CSS3怎么制作圆角图片和椭圆形图片”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS3怎么制作圆角图片和椭圆形图片”吧!本文实例为大...
    99+
    2022-10-19
  • Android自定义view实现圆形、圆角和椭圆图片(BitmapShader图形渲染)
    一、前言 Android实现圆角矩形,圆形或者椭圆等图形,一般主要是个自定义View加上使用Xfermode实现的。实现圆角图片的方法其实不少,常见的就是利用Xfermode,...
    99+
    2022-06-06
    view 图片 椭圆 Android
  • css怎么实现图片变成圆角矩形
    今天小编给大家分享一下css怎么实现图片变成圆角矩形的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解...
    99+
    2022-12-16
    css
  • Android怎么实现图片设置圆角形式
    这篇文章主要讲解了“Android怎么实现图片设置圆角形式”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Android怎么实现图片设置圆角形式”吧!自定义的图片圆角形式CircleImage...
    99+
    2023-06-21
  • CSS3实现圆角边框和边界图片效果
    这篇文章主要讲解了“CSS3实现圆角边框和边界图片效果”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS3实现圆角边框和边界图片效果”吧!本文的学习要点如...
    99+
    2022-10-19
  • 怎么用Div+CSS纯图片实现圆角矩形
    本篇内容介绍了“怎么用Div+CSS纯图片实现圆角矩形”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!对,你...
    99+
    2022-10-19
  • java 实现图片圆角处理、背景透明化
    目录java 图片圆角处理、背景透明化java 的图片处理解析java 图片圆角处理、背景透明化 public void makeRoundedCorner(File...
    99+
    2022-11-12
  • Android如何实现图片生成卷角和圆角缩略图的方法
    这篇文章给大家分享的是有关Android如何实现图片生成卷角和圆角缩略图的方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。在 Android 的一些界面中,有时候我们需要为一副图片生成大小为 n * n 的缩略...
    99+
    2023-05-30
    android
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作