国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

微信小程序使用 canvas 2d 實(shí)現(xiàn)簽字板組件

這篇具有很好參考價(jià)值的文章主要介紹了微信小程序使用 canvas 2d 實(shí)現(xiàn)簽字板組件。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

本文是在微信小程序中使用 canvas 2d 來(lái)實(shí)現(xiàn)簽字板功能;

效果圖:
微信小程序使用 canvas 2d 實(shí)現(xiàn)簽字板組件,微信小程序,小程序
代碼:
1、wxml

<view>
  <canvas 
  id="canvas"
  type="2d"
  bindtouchstart="start"
  bindtouchmove="move"
  bindtouchend="end"
  style="border: 1px solid #ccc; width:100%; height:800rpx"
  ></canvas>
  <view style="display: flex;">
    <button bindtap="clear">清除</button>
    <button bindtap="save">保存</button>
  </view>
  <image src="{{canvanImg}}"></image>
</view>

2、js

Component({
  properties: {

  },
  data: {
    canvas:null,
    canvanImg:"",
    ctx:null
  },
  lifetimes:{
    ready(){
      let that = this;
      wx.createSelectorQuery().in(this)
      .select("#canvas")
      .fields({
        node:true,
        size:true
      }).exec((res)=>{
        let canvas = res[0].node;
        let ctx = canvas.getContext("2d");
        let dpr = wx.getSystemInfoSync().pixelRatio;
        canvas.width = res[0].width * dpr;
        canvas.height = res[0].height * dpr;
        ctx.fillStyle = "#fff";
        // 利用陰影,消除鋸齒
        ctx.shadowBlur = 1;
        ctx.shadowColor = '#000';
        ctx.scale(dpr, dpr)
        that.setData({
          canvas,
          ctx
        })
      })
    }
  },
  methods: {
    //觸摸開始
    start (e) {
      this.data.ctx.beginPath()
      this.data.ctx.moveTo(e.touches[0].x,e.touches[0].y)
    },
    //觸摸移動(dòng)
    move (e) {
      this.data.ctx.lineTo(e.touches[0].x, e.touches[0].y)
      this.data.ctx.stroke()//將上下文繪制到canvas中
    },
    //觸摸結(jié)束
    end (e) {
      this.data.ctx.closePath()
    },
    //清除畫布內(nèi)容
    clear(){
      this.data.ctx.clearRect(0, 0,this.data.canvas.width, this.data.canvas.height)
      this.setData({
          canvanImg:""
      })
    },
    //點(diǎn)擊保存生成圖片
    save(){
      this.setData({
          canvanImg:this.data.canvas.toDataURL("image/png")
      })
    },
  }
})

3、總結(jié)
canvas 的寬度和高度可以寫死,也可以根據(jù)當(dāng)前可是區(qū)域動(dòng)態(tài)計(jì)算;需要注意的是 res[0].node 的寬度和高度的計(jì)算是當(dāng)前 canvas 元素上的寬度和高度乘設(shè)備的 pixelRatio ;文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-700796.html

到了這里,關(guān)于微信小程序使用 canvas 2d 實(shí)現(xiàn)簽字板組件的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 微信小程序canvas type=2d生成海報(bào)保存到相冊(cè)、文字換行溢出顯示...、文字刪除線、分享面板

    微信小程序canvas type=2d生成海報(bào)保存到相冊(cè)、文字換行溢出顯示...、文字刪除線、分享面板

    做個(gè)簡(jiǎn)單的生成二維碼海報(bào)分享, 我做的時(shí)候也找簡(jiǎn)單的方法看能不能實(shí)現(xiàn)頁(yè)面直接截圖那種生成圖片,原生小程序不支持, 不多介紹下面有全部代碼有注釋、參數(shù)自行替換運(yùn)行看看,還有需要優(yōu)化的地方,有問(wèn)題可以咨詢我,我寫的已經(jīng)上線 如圖:

    2024年02月11日
    瀏覽(93)
  • 使用taro+canvas實(shí)現(xiàn)微信小程序的圖片分享功能

    使用taro+canvas實(shí)現(xiàn)微信小程序的圖片分享功能

    二輪充電業(yè)務(wù)中,用戶充電完成后在訂單詳情頁(yè)展示訂單相關(guān)信息,用戶點(diǎn)擊分享按鈕喚起微信小程序分享菜單,將生成的圖片海報(bào)分享給微信好友或者下載到本地,好友可通過(guò)掃描海報(bào)中的二維碼加群領(lǐng)取優(yōu)惠。 使用場(chǎng)景及功能:微信小程序 生成海報(bào)圖片 分享好友 下載圖

    2024年02月05日
    瀏覽(704)
  • 微信小程序中使用畫布canvas實(shí)現(xiàn)動(dòng)態(tài)心電圖繪制

    微信小程序中使用畫布canvas實(shí)現(xiàn)動(dòng)態(tài)心電圖繪制

    大家好,我是雄雄。 近期,接了個(gè)項(xiàng)目,三端(小程序、PC、公眾號(hào))同步開發(fā),PC端沒(méi)的問(wèn)題,以前一直做的就是PC端,但是小程序和公眾號(hào)之前沒(méi)有做過(guò),只能通過(guò)這個(gè)項(xiàng)目,邊做邊學(xué)了。 人家都說(shuō)小程序用原生的特別難,大部分都用 uniapp 開發(fā),說(shuō)是這個(gè)方便快捷,還能

    2024年02月09日
    瀏覽(72)
  • 基于 Taro 框架的微信小程序 canvas 繪圖海報(bào)組件

    基于 Taro 框架的微信小程序 canvas 繪圖海報(bào)組件

    項(xiàng)目需要保存收款碼,效果如圖: (此文僅代表個(gè)人日常工作記錄,能力有限描述并不全面) 1.安裝 npm i taro-plugin-canvas -S --production(taro-plugin-canvas 是基于 Taro 框架的微信小程序 canvas 繪圖組件,封裝了常用的操作,通過(guò)配置的方式生成分享圖片) ?2.引入:import?{?TaroCanvas

    2024年01月21日
    瀏覽(95)
  • 微信小程序手寫簽字版

    在這里插入圖片描述 請(qǐng)?jiān)谙旅娴陌卓蛑泻灻?重置 提交 # js Page({ data: { signPath: [], cardNo: \\\'\\\', preX: \\\'\\\', preY: \\\'\\\', }, onLoad(options) { this.setData({ cardNo: options.cardNo }) wx.createSelectorQuery().select(\\\'#myCanvas\\\').fields({ node: true, size: true }).exec(this.init.bind(this)) }, init(data) { console.log(data); const width = dat

    2024年02月12日
    瀏覽(17)
  • 微信小程序canvas層級(jí)太高,與其他非原生組件層級(jí)沖突

    微信小程序canvas層級(jí)太高,與其他非原生組件層級(jí)沖突

    ?官網(wǎng)已經(jīng)提出新版本以支持同層渲染,但是實(shí)際項(xiàng)目中層級(jí)還是沖突的。 ?最后在文檔中找到這樣一段話,用真機(jī)打開,層級(jí)就正常了 。所以建議大家,多使用真機(jī)調(diào)試去測(cè)試?。。?!

    2024年02月11日
    瀏覽(20)
  • 【微信小程序】echart中canvas原生組件層級(jí)太高遮擋vantui中的組件

    【微信小程序】echart中canvas原生組件層級(jí)太高遮擋vantui中的組件

    之前的問(wèn)題圖片如下: 最開始想到的方案是降低canvas的層級(jí),但是canvas是原生組件,他的層級(jí)是沒(méi)法改變 所以又想到改變vant組件的層級(jí),但是一樣無(wú)果。。。 隨后,看到網(wǎng)上大篇幅的都是使用顯示隱藏來(lái)操控picker的,這樣會(huì)如果頁(yè)面可以滑動(dòng),就導(dǎo)致用戶還是可以看到ec

    2024年02月13日
    瀏覽(35)
  • uni-app - 電子簽字板組件(簽名專用寫字畫板,支持調(diào)整寫字板 “橫縱“ 方向,可調(diào)整線條粗細(xì)顏色等,Canvas 繪制非常絲滑流暢)完美兼容 H5 APP 小程序,最好用的畫板簽字教程插件源碼

    uni-app - 電子簽字板組件(簽名專用寫字畫板,支持調(diào)整寫字板 “橫縱“ 方向,可調(diào)整線條粗細(xì)顏色等,Canvas 繪制非常絲滑流暢)完美兼容 H5 APP 小程序,最好用的畫板簽字教程插件源碼

    網(wǎng)上的教程代碼非常亂且都有 BUG 存在,非常難移植到自己的項(xiàng)目中,本文代碼干凈整潔注釋詳細(xì)。 本文實(shí)現(xiàn)了 全端兼容,簽名專用的寫字板組件,真機(jī)流暢絲滑且無(wú) BUG, 您直接復(fù)制組件源碼,按照詳細(xì)示例+超詳細(xì)的注釋輕松幾分鐘完成, 如下圖 真機(jī)測(cè)試 ,您還可以通過(guò)

    2024年02月10日
    瀏覽(50)
  • 微信小程序?qū)崿F(xiàn)canvas畫圓形微信頭像

    微信小程序?qū)崿F(xiàn)canvas畫圓形微信頭像

    1.需要獲取用戶信息,拿到用戶頭像圖片 2.實(shí)例化一個(gè)canvas對(duì)象,繪制出圓形并將頭像固定到圓形中心位置 3.實(shí)現(xiàn)效果 ? ? ?

    2024年02月15日
    瀏覽(22)
  • 微信小程序--canvas畫布實(shí)現(xiàn)圖片的編輯

    微信小程序--canvas畫布實(shí)現(xiàn)圖片的編輯

    上傳圖片,編輯圖片大小,添加文字,改變文字顏色等 微信小程序--canvas畫布實(shí)現(xiàn)圖片的編輯 軟件環(huán)境:微信開發(fā)者工具 官方下載地址:微信開發(fā)者工具下載地址與更新日志 | 微信開放文檔 1、基本需求。 實(shí)現(xiàn)上傳圖片 實(shí)現(xiàn)圖片編輯 實(shí)現(xiàn)添加文字 實(shí)現(xiàn)導(dǎo)出圖片 2、案例目錄

    2024年02月05日
    瀏覽(94)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包