html2canvas 绘制海报 框架uniapp

简介: html2canvas 绘制海报 框架uniapp
<!-- 海报 影藏位置 -->
      <div class="canDiv" ref="canDiv" v-show="haiBa">
        <view class="canDiv1">
          <!-- crossorigin ="anonymous" -->
          <img ref="imhBx" :src="canvasImg.img" mode=""></img>
        </view>
        <view class="canDiv2">{{canvasImg.name}}</view>
        <view class="canDiv3">
          <image :src="canvasImg.erWeima" mode=""></image>
        </view>
        <view class="canDiv4">长按图片保存到手机</view>
      </div>
            <view class="pl1" @click="shareBtn">
        <span class="iconfont foSiz20">&#xe6c4;</span>分享
      </view>
弹出层位置
<uni-popup ref="popupCan" type="center">
      <!-- <view class="" :style="{width:imgWidth,height:imgHeight}"> -->
      <view class="popImg">
        <!-- <view class="popImg" @click.stop="closeBtn"> -->
        <image class="imgPop" :src="imgsBox" mode="aspectFit" style="z-index: 1000;"></image>
      </view>
      <!-- </view> -->
    </uni-popup>
//官网地址
http://html2canvas.hertzen.com/
//微信小程序基于base64生成二维码插件地址
https://github.com/Pudon/weapp-qrcode
//安装
Install NPM
npm install --save html2canvas
Install Yarn
yarn add html2canvas
//页面引入
import html2canvas from 'html2canvas';
// 本页面二维码生成方法
import qrcode from '../../utils/weapp-qrcode.js'
//data数据
data() {
    return {
      haiBa:false,
            canvasImg: {
          img: '',
          name: '',
          erWeima: ''
        }
    }
}
onLoad(e) {
      // 生成二维码
      let erCode = window.location.href
      let params = erCode // 二维码参数
      var imgData = qrcode.drawImg(params, {
        typeNumber: 4, // 密度
        errorCorrectLevel: 'L', // 纠错等级
        size: 800, // 白色边框
      })
      this.canvasImg.erWeima = imgData
},
methods: {
            // canvas海报
      generatorImage() {
        html2canvas(this.$refs.canDiv).then(canvas => {
          // uni.showLoading({
          //  title: '生成中...'
          // })
          // console.log("canvas", canvas.toDataURL());
          this.imgsBox = canvas.toDataURL() //base64字符串   放到图片标签上
          // uni.hideLoading()
        });
      },
      // 生成分享
      shareBtn() {
        this.haiBa = true
        uni.showLoading({
          title: '生成中...'
        })
        setTimeout(() => {
          uni.hideLoading()
          this.generatorImage()
          this.$refs.popupCan.open()
          this.haiBa = false
        }, 500)
      },
}
相关文章
|
2月前
|
移动开发 前端开发 JavaScript
HTML 框架高阶用法
HTML框架,或前端框架,如Bootstrap、Vue.js等,显著提升了Web应用开发的速度与用户体验。本文介绍了一些高级技巧,如自定义样式与组件、响应式设计实践、JavaScript功能增强及性能优化策略等,帮助开发者更好地利用这些工具,实现高效开发并提升应用性能与灵活性。
|
8天前
|
设计模式 开发框架 JavaScript
基于.NET8 + Vue/UniApp前后端分离的快速开发框架,开箱即用!
基于.NET8 + Vue/UniApp前后端分离的快速开发框架,开箱即用!
|
1月前
|
开发框架 小程序 JavaScript
UniApp框架适合哪些应用场景?
UniApp作为一款跨平台的移动应用开发框架,因其高效、灵活和强大的特性,适用于多种应用场景。
87 3
|
17天前
HTML 框架2
iframe标签用于在当前页面中嵌入另一个HTML页面。通过设置frameborder属性为&quot;0&quot;,可以移除iframe边框。iframe的src属性用于指定要嵌入的页面URL。例如,使用`&lt;iframe src=&quot;https://www.runoob.com&quot; frameborder=&quot;0&quot;&gt;&lt;/iframe&gt;`可以无边框地显示RUNOOB.COM页面。
|
17天前
HTML 框架1
HTML框架允许在同一个浏览器窗口中同时显示多个页面。`&lt;iframe&gt;`标签用于嵌入其他网页,基本语法为 `&lt;iframe src=&quot;URL&quot;&gt;&lt;/iframe&gt;`。可以通过设置 `height` 和 `width` 属性来调整 iframe 的大小,例如:`&lt;iframe src=&quot;demo_iframe.htm&quot; width=&quot;200&quot; height=&quot;200&quot;&gt;&lt;/iframe&gt;`。属性值可以是像素或百分比。
|
16天前
HTML 框架3
iframe 是一种在网页中嵌入另一个 HTML 页面的技术。通过设置 iframe 的属性,可以显示指定的目标链接页面。例如,可以使用 iframe 嵌入 RUNOOB.COM 网站。HTML 中的 `&lt;iframe&gt;` 标签用于定义内联框架。
|
6月前
|
前端开发 搜索推荐 JavaScript
HTML 框架
HTML 框架
|
5月前
|
文字识别 算法 API
视觉智能开放平台产品使用合集之uniapp框架如何使用阿里云金融级人脸识别
视觉智能开放平台是指提供一系列基于视觉识别技术的API和服务的平台,这些服务通常包括图像识别、人脸识别、物体检测、文字识别、场景理解等。企业或开发者可以通过调用这些API,快速将视觉智能功能集成到自己的应用或服务中,而无需从零开始研发相关算法和技术。以下是一些常见的视觉智能开放平台产品及其应用场景的概览。
137 0
|
3月前
|
前端开发
HTML+CSS基础知识(6)背景的设置、表格的设计、表单的设计和框架集
这篇文章详细介绍了如何在HTML和CSS中设置背景、设计表格、创建表单以及使用框架集,并通过代码示例和测试结果展示了具体的实现方法和效果。
HTML+CSS基础知识(6)背景的设置、表格的设计、表单的设计和框架集
|
3月前
|
XML JavaScript 测试技术
Web自动化测试框架(基础篇)--HTML页面元素和DOM对象
本文为Web自动化测试入门指南,介绍了HTML页面元素和DOM对象的基础知识,以及如何使用Python中的Selenium WebDriver进行元素定位、操作和等待机制,旨在帮助初学者理解Web自动化测试中的关键概念和操作技巧。
53 1