微信小程序生成分享海报

  • 把 components 中的 canvasdrawer 拷贝到自己项目下。
  • 在使用页面注册组件
{
  "usingComponents": {
    "canvasdrawer": "/components/canvasdrawer/canvasdrawer"
  }
}
  • 在页面 **.wxml 文件中加入如下代码
<canvasdrawer painting="{{painting}}" bind:getImage="eventGetImage"/>
  • painting 是需要传入的 json。 getImage 方法是绘图完成之后的回调函数,在 event.detail 中返回绘制完成的图片地址

数据对象的第一层需要三个参数: widthheightmodeviews。配置中所有的数字都是没有单位的。这就意味着 canvas 绘制的是一个比例图。具体显示的大小直接把返回的图片路径放置到 image 标签中即可。

mode 可选值有 same, 默认值为空,常规下尽量不要使用。如要使用请看 Q&A的第1点。

当前可以绘制3种类型的配置: imagetextrect。配置的属性基本上使用的都是 css 的驼峰名称,还是比较好理解的。

image(图片)

属性含义默认值可选值
url绘制的图片地址,可以是本地图片,如:/images/1.jpeg  
top左上角距离画板顶部的距离  
left左上角距离画板左侧的距离  
width要画多宽0 
height要画多高0

text(文本)

属性含义默认值可选值
content绘制文本''(空字符串) 
color颜色black 
fontSize字体大小16 
textAlign文字对齐方式leftcenter、right
lineHeight行高,只有在多行文本中才有用20 
top文本左上角距离画板顶部的距离0 
left文本左上角距离画板左侧的距离0 
breakWord是否需要换行falsetrue
MaxLineNumber最大行数,只有设置 breakWord: true ,当前属性才有效,超出行数内容的显示为...2 
width和 MaxLineNumber 属性配套使用,width 就是达到换行的宽度  
bolder是否加粗falsetrue
textDecoration显示中划线、下划线效果noneunderline(下划线)、line-through(中划线)

rect (矩形,线条)

属性含义默认值可选值
background背景颜色black 
top左上角距离画板顶部的距离  
left左上角距离画板左侧的距离  
width要画多宽0 
height要画多高

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值