前端Vue一款基于canvas的精美商品海报生成组件 根据个性化数据生成商品海报图 长按保存图片

  • 前端Vue一款基于canvas的精美商品海报生成组件 根据个性化数据生成商品海报图 长按保存图片已关闭评论
  • 119 次浏览
  • A+
所属分类:Web前端

前端Vue一款基于canvas的精美商品海报生成组件 根据个性化数据生成商品海报图 长按保存图片,下载完整代码请访问uni-app插件市场地址:https://ext.dcloud.net.cn/plugin?id=13326

效果图如下:

前端Vue一款基于canvas的精美商品海报生成组件 根据个性化数据生成商品海报图 长按保存图片

前端Vue一款基于canvas的精美商品海报生成组件 根据个性化数据生成商品海报图 长按保存图片

前端Vue一款基于canvas的精美商品海报生成组件 根据个性化数据生成商品海报图 长按保存图片

前端Vue一款基于canvas的精美商品海报生成组件 根据个性化数据生成商品海报图 长按保存图片

cc-beautyPoster

使用方法

 <!-- posterData: 海报数据 -->  <cc-beautyPoster :posterData="posterData"></cc-beautyPoster>  <!-- 海报数据字段 -->  posterData: {  // 用户姓名  name: '小明',  // 用户头像  logo: 'https://cdn.pixabay.com/photo/2014/02/17/10/20/statue-of-liberty-267948_1280.jpg',  // 商品名称  title: '精美时尚苹果手机一部',  // 商品价格  money: '5200.90',  // 商品图片  img: 'https://cdn.pixabay.com/photo/2014/08/05/10/27/iphone-410311_1280.jpg',  // 商品链接  url: 'https://www.apple.com.cn/iphone/'  },  

HTML代码实现部分

 <template>  <view class="content">  <button style="margin-top: 38px;" @click="openPoster">生成商品海报</button>  <!-- 海报弹框 -->  <uni-popup ref="popup" type="center">  <view class="center_poter" style="margin: 0 auto;" v-if="shows">  <!-- #ifndef MP -->  <image class="close_btn" src="/static/images/goods/close.png" alt="前端Vue一款基于canvas的精美商品海报生成组件 根据个性化数据生成商品海报图 长按保存图片" @click="hidePoster">  </image>  <!-- #endif -->  <!-- #ifdef MP -->  <cover-image class="close_btn" src="/static/images/goods/close.png" alt="前端Vue一款基于canvas的精美商品海报生成组件 根据个性化数据生成商品海报图 长按保存图片" @click="hidePoster">  </cover-image>  <!-- #endif -->  <!-- posterData: 海报数据 -->  <cc-beautyPoster :posterData="posterData"></cc-beautyPoster>  </view>  </uni-popup>  </view>  </template>  <script>  import uniPopup from '@/components/uni-popup/uni-popup.vue'  export default {  components: {  uniPopup  },  data() {  return {  shows: false,  posterData: {  // 用户姓名  name: '小明',  // 用户头像  logo: 'https://cdn.pixabay.com/photo/2014/02/17/10/20/statue-of-liberty-267948_1280.jpg',  // 商品名称  title: '精美时尚苹果手机一部',  // 商品价格  money: '5200.90',  // 商品图片  img: 'https://cdn.pixabay.com/photo/2014/08/05/10/27/iphone-410311_1280.jpg',  // 商品链接  url: 'https://www.apple.com.cn/iphone/'  },  }  },  methods: {  //生成海报  openPoster() {  this.shows = false  uni.showLoading({  title: '海报绘制中..'  })  this.$refs.popup.open()  setTimeout(() => {  uni.hideLoading()  this.shows = true  }, 400)  },  //关闭海报  hidePoster() {  this.$refs.popup.close()  },  }  }  </script>  <style lang="scss" scoped>  .content {  display: flex;  flex-direction: column;  }  .center_poter {  position: relative;  z-index: 999;  .close_btn {  width: 40upx;  height: 40upx;  background-color: rgba($color: #000000, $alpha: .3);  position: absolute;  top: 5upx;  right: 5upx;  z-index: 500;  padding: 5upx;  border-radius: 6upx;  z-index: 999;  text-align: center;  }  }  </style>