### canvas画圆
```javascript
function drawCircular(ctx, width, height, x, y, url) {
var avatarurl_width = width;
var avatarurl_heigth = height;
var avatarurl_x = x;
var avatarurl_y = y;
ctx.save();
ctx.beginPath();
ctx.arc(avatarurl_width / 2 + avatarurl_x, avatarurl_heigth / 2 + avatarurl_y, avatarurl_width / 2, 0, Math.PI * 2, false);
ctx.clip();
ctx.drawImage(url, avatarurl_x, avatarurl_y, avatarurl_width, avatarurl_heigth);
ctx.restore();
}
```
```
wxhead.onload = function () {
drawCircular(ctx, 173, 173, 455, 438, wxhead);
}
```
### canvas画图生成海报
* 创建画布
```html
<canvas id="myCanvas" style="opacity: 0;" width="1080" height="1755"></canvas>
```
* Canvas-图片
```
myCanvas = document.getElementById("myCanvas");
let ctx = myCanvas.getContext("2d");
// 生成海报
setPoster = function () {
var img = new Image();
img.src = $(".can-bg").attr("data-src");
// img.crossOrigin = "Anonymous";
// img.setAttribute('crossOrigin', 'anonymous');
img.onload = function () {
ctx.drawImage(img, 0, 0, 1080, 1755); //背景
ctx.font = "43px Arial";
ctx.fillStyle = "#000";
ctx.textAlign = "center";
ctx.fillText(text, 800, 1235); // 字
var title = new Image()
title.src = t_img
title.onload = function () {
ctx.drawImage(title, 210, 547, 686, 310); // 其他动态图片
var createImg = new Image()
createImg.src = myCanvas.toDataURL("image/jpeg")
createImg.onload = function () {
$("#ShareImg").attr("src", createImg.src); // 对应覆盖图片
}
}
}
}
```
### Canvas-下载
```javascript
//下载海报
function downloadimg() {
var img = $('.box').children('img').attr("src");
var alink = document.createElement("a");
alink.href = img;
alink.download = "新年快乐.png";
alink.click();
}
```
- 前端指南
- 基础
- HTML、HTTP、web综合问题
- css部分
- 学习指南
- 开发指南
- css指南
- JavaScript
- 视图、文件
- canvas
- 二维码的生成
- 64码及图片
- weui
- Promise
- 第三方js
- 网络请求
- 字符串,数组,时间
- 时间类
- Css
- 布局封装
- 媒体布局
- 九宫格图片自适应
- 两行显示,且省略
- uni-app
- uniapp踩坑指南
- 表单类
- 商品规格
- 页面操作
- H5端返回按钮不显示
- H5解决浏览器跨域问题
- uView——Waterfall 瀑布流
- uniapp中使用复制功能(复制文本到粘贴板)
- 动态导航栏的实现
- React
- React基础
- 微信小程序
- 上传多图
- uni-app 微信小程序生成小程序码二维码带参数
- 小程序分享图片给好友,到朋友圈,保存到本地
- 缓存封装
- Vue
- 深度作用选择器deep
- 使用js实现列表无限循环滚动(横向)
- js 无限循环垂直滚动列表
- 可视化
- AntV
- 玫瑰图