小程序截图分享

如果加水印的话,我是用背景做了个水印截的图

html 复制代码
<content-interface>
    <canvas canvas-id="share" style="position: fixed;top: -1000px;height: 100vh; width: 100%;"></canvas>
    <view class="page-content">
        <view class="page-top draw_canvas">
            <image class="bg_water draw_canvas" src="/images/my/share.png" data-type="image" data-url="/images/my/share.png" />
            <view class="success-state draw_canvas" data-type="text" data-text="{{details.statusDesc || '--'}}">{{details.statusDesc || '--'}}</view>
        </view>
    </view>
 </content-interface>
js 复制代码
import { settlement_order_detail, } from './api';
import Wxml2Canvas from './wxml2canvas.js';
var _img = null;
var drawImage;
var drawImageData = {
  list: [{
      type: 'wxml',
      class: '.page-content .draw_canvas',
      limit: '.page-content',
      x: 0,
      y: 0
  }]
};
Page({
  data: {
    details: {},
    id: null,
    isTransfer: false,
  },
  onLoad(options) {
    drawImage = new Wxml2Canvas({
      element: 'share',  // canvas节点的id,
      obj: this,  // 在组件中使用时,需要传入当前组件的this
      width: 375,   // 宽高
      height: 375 * 3, 
      background: '#fff', // 默认背景色
      progress (percent) {  // 绘制进度
      },
      finish (url) {
        _img = url;
        console.log(_img, '---->>>><<<----------<<<<');
      },
      error (res) {
        console.log(res, '---->>>><<<<<<<');
      }
    });
    this.getDetail(options.id)
  },
  saveImg() {
    console.log(111111111111, '_________________>>>>>');
    drawImage.draw(drawImageData, this);
    setTimeout(() => {
      console.log(_img, '_________________>>>>>');
      wx.showShareImageMenu({
        path: _img,
        success: (res)=>{},
        fail: (err)=> {
          
        }
      })
    }, 300)
  },
  getDetail(id) {
    settlement_order_detail({id: id}).then(res => {
      this.setData({
        details: res.data,
        id: id,
      }, () => {
        drawImage.draw(drawImageData, this);
      })
    })
  },
})
css 复制代码
.page-top{
    color:#fff;
    text-align: center;
    position: relative;
    height: 300rpx;
}
.bg_water {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100vh;
    z-index: 1000;
}
.header {
    height: 80rpx;
}
.success-icon{
    width:120rpx;
    height:120rpx;
    z-index: 100;
    position: absolute;
    z-index: 1000;
    margin: 0 auto;
    left: 0;
    right: 0;
    top: 71rpx;
}
.item-value {
    max-width: 75%;
}
.share-icon {
    position: absolute;
    right: 20rpx;
    top: 20rpx;
    width: 40rpx;
    height: 40rpx;
    z-index: 3000;
}
.success-state{
    font-size: 40rpx;
    font-weight: bold;
    position: absolute;
    z-index: 1000;
    margin: 0 auto;
    left: 0;
    right: 0;
    top: 230rpx;
}

.success-price{
    font-size: 36rpx;
    margin-top: 20rpx;
    position: absolute;
    z-index: 1000;
    margin: 0 auto;
    left: 0;
    right: 0;
    top: 300rpx;
}

.page-info{
    padding: 0 4%;
    position: absolute;
    z-index: 2000;
    width: 92%;
    top: 400rpx;
}

.info-label{
    color: #222;
    font-size: 30rpx;
    font-weight: bold;
    display: flex;
    align-items: center;
    padding-top: 18rpx;
    padding-bottom: 30rpx;
}

.info-label:before{
    content: '';
    display: inline-block;
    width: 6rpx;
    height: 28rpx;
    background: linear-gradient( 135deg, #FF6634 0%, #FF7F57 100%);
    border-radius: 2rpx;
    margin-right: 12rpx;
}

.info-content > .item{
    display: flex;
    justify-content: space-between;
    padding-bottom: 30rpx;
    font-size: 28rpx;
}

.page-tips{
    padding: 30rpx 30rpx 0;
    color: #333;
    font-size: 24rpx;
}
.canvas-img {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
}
相关推荐
成旭先生1 小时前
车辆、能源与地理数据 API 实战:把定价、油价、行政区划串成一条链路
人工智能·windows·能源·api集成·油价查询·车辆定价·地址清洗
seahahacsdn2 小时前
Windows获取SYSTEM用户权限的方法应用-计划任务
windows
上海云盾-小余3 小时前
七层 CC 攻击检测难点:如何区分真实用户与攻击请求
网络·人工智能·windows·tcp/ip·udp
Newway3213 小时前
便利店小程序商城如何打通总部、门店与会员
小程序·小程序商城·会员运营·连锁便利店·门店订货·o2o系统
2501_915106323 小时前
Windows 上开发 Unity iOS,使用 KXBuild 进行真机调试、性能采样与打包 ipa
windows·vscode·unity·ios·个人开发·swift·敏捷流程
西柚不烦恼4 小时前
Windows 本地部署私有 AI 全攻略:纯 CPU 环境(Ollama + Open WebUI)
人工智能·windows
Strawberry964 小时前
小程序视频播放官方方案
小程序
少年的范儿4 小时前
Windows 安装 Node.js 教程:nvm 版本管理 + pnpm 安装配置
windows·npm·node.js
weixin_177297220696 小时前
二手旧物回收小程序先要解决的不是下单,是“上门之后价格变了怎么办“
小程序·apache
青企通6 小时前
电动车门店小程序:以旧换新估价、维修工单与电池档案的设计实现
小程序