暫無描述

yfso 38089f9b02 _ 2 年之前
api 405ac908f0 项目日志: 12.19 分享接口 2 年之前
components a5c9103f4a 1.5 优化样式02 2 年之前
pages 38089f9b02 _ 2 年之前
static c9185ebb2d 项目日志: 12.19 消息列表删除信息 2 年之前
store e1a39427c2 地图部分bug,大转盘部分bug 2 年之前
uni_modules 497da24cc1 地图筛选和部分bug,产品部分bug 2 年之前
utils 68ba9a87c9 地图距离bug修复 2 年之前
.gitignore 121846c27f 12.10-12.11 修改:投票列表、投票详情、分享海报、地图页 2 年之前
App.vue 121846c27f 12.10-12.11 修改:投票列表、投票详情、分享海报、地图页 2 年之前
README.md 121846c27f 12.10-12.11 修改:投票列表、投票详情、分享海报、地图页 2 年之前
index.html 121846c27f 12.10-12.11 修改:投票列表、投票详情、分享海报、地图页 2 年之前
main.js 4f01a1bfc3 地图筛选,参数跳转功能 2 年之前
manifest.json fa04492377 大转盘抽奖 2 年之前
package-lock.json 23f960cf64 项目日志:12.14 积分产品兑换 2 年之前
package.json 23f960cf64 项目日志:12.14 积分产品兑换 2 年之前
pages.json 38089f9b02 _ 2 年之前
setting.js 38089f9b02 _ 2 年之前
uni.scss 121846c27f 12.10-12.11 修改:投票列表、投票详情、分享海报、地图页 2 年之前
yarn-error.log c06c4c09a0 奖品兑换 2 年之前
yarn.lock 8d8d693b91 大转盘部分bug 2 年之前

README.md

一、支持平台

App H5 微信小程序 支付宝小程序 百度小程序 字节跳动小程序 QQ 小程序
未测试

二、效果演示

兼容不同屏幕大小 绘制图形,图片,文本等展示

三、注意事项

1、小程序下获取网络图片信息需先配置 downloadFile 域名白名单才能生效。否则会报错(downloadFile 合法域名校验失败),并且绘制海报失败

流程:开发平台->服务器域名->uploadFile 合法域名要添加上 https://huangchunhongzz.gitee.io 否则没办法下载成功图片

2、hch-poster 海报模板,主要按照苹果 375*667 比例,其他型号手机等比例缩放绘制海报,以达到兼容不同屏幕大小的效果

3、微信小程序要在基础库 2.16.0 及以下,否则会报(Uncaught TypeError: Cannot delete property 'WeixinJSBridge' of #)页面空白现象

4、H5 需要注意使用的图片要支持跨域(插件例子的图片目前是不支持跨域的,可以自行替换成支持跨域的图片,已测试可行性)

四、海报模板使用方法(主要看 pages/hch-poster 页面的例子里面有详细说明)


<hch-poster ref="hchPoster" @cancel="handleCancel" :posterData.sync="posterData" @previewImage='previewImage' />

import HchPoster from "../../components/hch-poster/hch-poster.vue"

export default {
  components: {
    HchPoster
  },
  data() {
    return {
      // 海报模板数据
      posterData: {
        poster: {
          //根据屏幕大小自动生成海报背景大小
          url: "https://huangchunhongzz.gitee.io/imgs/poster/poster_bg_3.png",//图片地址
          r: 10, //圆角半径
          w: 300, //海报宽度
          h: 480, //海报高度
          p: 20 //海报内边距padding
        },
        mainImg: {
          //海报主商品图
          url: "https://huangchunhongzz.gitee.io/imgs/poster/product.png",//图片地址
          r: 10, //圆角半径
          w: 250, //宽度
          h: 200 //高度
        },
        title: {
          //商品标题
          text: "今日上新水果,牛奶草莓,颗粒饱满,每盒 200g",//文本
          fontSize: 16, //字体大小
          color: "#000", //颜色
          lineHeight: 25, //行高
          mt: 20 //margin-top
        },
        codeImg: {
          //小程序码
          url: "https://huangchunhongzz.gitee.io/imgs/poster/code.png",//图片地址
          w: 100, //宽度
          h: 100, //高度
          mt: 20, //margin-top
          r: 50 //圆角半径
        },
        tips: [
          //提示信息
          {
            text: "记忆之王",//文本
            fontSize: 14,//字体大小
            color: "#2f1709",//字体颜色
            align: "center",//对齐方式
            lineHeight: 25,//行高
            mt: 20//margin-top
          },
          {
            text: "长按/扫描识别查看商品",//文本
            fontSize: 12,//字体大小
            color: "#2f1709",//字体颜色
            align: "center",//对齐方式
            lineHeight: 25,//行高
            mt: 20//margin-top
          }
        ]
      }
    }
  }
}

五、API

生成海报的方法调用如

this.$refs.hchPoster.posterShow()

取消海报

//有$emit方法
this.$emit('cancel', true)
// 所以在组件中用@cancel绑定方法适用
// <hch-poster ref="hchPoster" @cancel="handleCancel" :posterData.sync="posterData" @previewImage='previewImage' />

海报预览(H5 端才有的方法)

//有$emit方法
this.$emit('previewImage', base64)
// 所以在组件中用@previewImage绑定方法适用
// <hch-poster ref="hchPoster" @cancel="handleCancel" :posterData.sync="posterData" @previewImage='previewImage' />

六、props

name 描述 默认值 类型
posterData 海报的属性(修改海报的属性值就可以生成自己的海报) (具体数据参考上方,posterData:{}) Object

七、开源不易,喜欢的请 star

喜欢这个海报,觉得好用的,可以支持打赏下哦