日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

vue+canvas繪制時間軸的方法

瀏覽:25日期:2023-02-15 10:23:01

本文實例為大家分享了vue canvas繪制時間軸的具體代碼,供大家參考,具體內容如下

最近在研究canvas繪制時間軸,直接上代碼,希望分享能給大家帶來幫助,效果如下:

vue+canvas繪制時間軸的方法

代碼如下,可以拷貝到vue項目中直接預覽

<template> <div> <canvas height='27'></canvas> </div></template><script>export default { name: ’pathwaytrack’, data() { return { screenWidth: document.body.clientWidth } }, mounted() { let that = this that.carveTimeScale(1200, 1, 10, 0, 10) let canvasColor = ’#999999’ let initTime = 12000 setInterval(() => { initTime += 1000 that.carveTimeScale(1200, 1, 10, initTime, 10) }, 1000); }, methods: { /** * 分割像素刻度 * width: 寬度 ms:一個小刻度的毫秒數 pxMs:10像素一個小刻度 pageShowStartTime:初始時間(毫秒) 一大段間隔時長(秒) */ carveTimeScale(width, ms, pxMs, pageShowStartTime, intervalTime) { let canvasId = document.getElementById(’time_line’) let ctx = canvasId.getContext(’2d’) ctx.clearRect(0, 0, 1200, 60) ctx.fillStyle = ’#999999’ // 為防止蘋果屏幕2X顯示不正常 // 為防止蘋果屏幕2X顯示不正常 var getPixelRatio = function (context) {var backingStore = context.backingStorePixelRatio || context.webkitBackingStorePixelRatio || context.mozBackingStorePixelRatio || context.msBackingStorePixelRatio || context.oBackingStorePixelRatio || context.backingStorePixelRatio || 1return (window.devicePixelRatio || 1) / backingStore } let ratio = getPixelRatio(ctx) let msOffset = this.startOffsetTime(pageShowStartTime, ms) // 開始的偏移時間 ms let pxOffset = msOffset / 1000 * pxMs // 開始的偏移距離 px let leftDistance = 0 // 到左側的距離 let leftDistanceTime = 0 // 到左側的時間 let beginX = 0 let beginY = 0 for (let i = 0; i < width / (ms * pxMs); i++) {leftDistance = pxOffset + i * (ms * pxMs) // 距離 = 開始的偏移距離 + 格數 * px/格leftDistanceTime = pageShowStartTime + msOffset + i * ms // 時間 = 左側開始時間 + 偏移時間 + 格數 * msbeginX = pxOffset + i * (ms * pxMs)let canvasColorlet showTime = pageShowStartTime + beginX / pxMs * 1000if (showTime % (intervalTime * 1000) === 0) { beginY = 0 ctx.font = ’12px Arial’ ctx.fillText(this.changeTime(showTime, 1), beginX + 10, 22) canvasColor = ’#999999’ ctx.fillStyle = ’#B1B1B1’ this.drawLine(leftDistance, beginY, leftDistance, 20, canvasColor, 1)} else if (showTime % intervalTime == 0) { beginY = 0 canvasColor = ’#999999’ this.drawLine(leftDistance, beginY, leftDistance, 10, canvasColor, 1)} } }, /** * 根據傳入參數畫線 */ drawLine(beginX, beginY, endX, endY, color, width) { let canvasId = document.getElementById(’time_line’); let ctx = canvasId.getContext(’2d’); ctx.beginPath(); ctx.moveTo(beginX, beginY); ctx.lineTo(endX, endY); ctx.strokeStyle = color; ctx.lineWidth = width; ctx.stroke(); }, /** * 左側開始時間的偏移,返回單位ms */ startOffsetTime(timestamp, step) { let remainder = timestamp % step return remainder ? step - remainder : 0 }, /** * 返回時間 */ changeTime(time, num) { let hour = 0 let minute = 0 let second = 0 second = time / 1000 if (second >= 3600) {minute = (second - (second % 60)) / 60hour = parseInt((minute / 60).toString())minute = minute % 60/* eslint-disable */hour >= 10 ? hour : hour = ’0’ + hourminute >= 10 ? minute : minute = ’0’ + minutesecond = second % 60second >= 10 ? second : second = ’0’ + second/* eslint-enable */return hour + ’:’ + minute + ’:’ + second } if (second < 3600 && second >= 60) {hour = ’00’minute = parseInt((second / 60).toString())/* eslint-disable */minute >= 10 ? minute : minute = ’0’ + minutesecond = second % 60second >= 10 ? second : second = ’0’ + second/* eslint-enable */return hour + ’:’ + minute + ’:’ + second } if (second < 60) {hour = ’00’minute = ’00’second = parseInt(second)/* eslint-disable */second >= 10 ? second : second = ’0’ + second/* eslint-enable */return hour + ’:’ + minute + ’:’ + second } } }}</script><style lang='less' scoped> canvas { background: black; }</style>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Vue
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
欧美成人精品一级| 91精品国产自产观看在线| 国产精品亚洲产品| 国产精品一区二区免费福利视频 | 天堂av在线| 日韩精品午夜| 奶水喷射视频一区| 国产欧美日韩免费观看| 精品一区二区三区的国产在线观看| 国产一区二区三区亚洲综合| 日韩国产一区二区| 亚洲在线网站| 国产精品一级| 久久精品av| 日韩区欧美区| 日韩不卡一区| 欧美日韩国产精品一区二区亚洲| 9久re热视频在线精品| 亚洲ww精品| 91亚洲国产高清| 蜜桃91丨九色丨蝌蚪91桃色| 日韩不卡在线| 亚洲天堂免费电影| 午夜久久99| 久久精品99国产精品| 亚洲黄色网址| 蜜臀久久久久久久| 美女视频黄久久| 欧美在线亚洲| 人人爱人人干婷婷丁香亚洲| 日韩成人a**站| 亚洲二区精品| 香蕉久久国产| 欧美国产专区| 伊人影院久久| 乱一区二区av| 蜜臀久久99精品久久久画质超高清 | 日韩av一区二区三区四区| 国产一区二区三区免费在线| 午夜在线一区二区| 成人日韩av| 在线亚洲国产精品网站| 欧美国产视频| 久久国产精品99国产| 精品亚洲成人| 亚洲精品婷婷| 日韩电影免费在线观看| 91精品国产自产精品男人的天堂| 久久一区二区三区电影| 欧美交a欧美精品喷水| 久久电影一区| 久久久精品午夜少妇| 国产精品magnet| 在线免费观看亚洲| 久久三级福利| 日韩av二区| 日韩精品第二页| 在线一区欧美| 国产综合色区在线观看| 欧美精品二区| 日韩国产在线观看| 国产一区二区精品| 秋霞国产精品| 精品少妇av| 国产麻豆精品| 亚洲2区在线| 免费欧美在线视频| 成人av动漫在线观看| 不卡专区在线| 国产精品theporn| 日韩avvvv在线播放| 国产亚洲一区在线| 激情五月综合网| 国产综合亚洲精品一区二| 日韩在线欧美| 欧美三级网址| 日本不良网站在线观看| 久久亚洲黄色| 国产日产高清欧美一区二区三区| 久久先锋影音| 玖玖玖国产精品| 免费久久99精品国产自在现线| 欧洲激情综合| 午夜国产精品视频| 欧美美女一区| 99香蕉国产精品偷在线观看| 亚洲午夜一级| 在线视频亚洲| 美女黄网久久| 蜜桃av一区二区| 免费人成黄页网站在线一区二区 | 色爱综合av| 色婷婷久久久| 蜜桃成人av| 国产高清久久| 麻豆精品网站| 免费国产亚洲视频| 亚洲三级国产| 欧美视频精品全部免费观看| 日韩精品一级中文字幕精品视频免费观看 | 日韩精选在线| 日韩av网站在线免费观看| 青青伊人久久| 亚洲专区视频| 日韩 欧美一区二区三区| 欧美影院视频| 国产精品videosex极品| 国产精品不卡| 欧美亚洲激情| 亚洲欧美日韩在线观看a三区| 亚洲专区在线| 四虎国产精品免费久久| 国产精品免费大片| 精品亚洲精品| 日本欧美不卡| 欧美特黄一级| 亚洲精一区二区三区| 日本aⅴ亚洲精品中文乱码| 国产高清日韩| 国内在线观看一区二区三区| 欧美sm一区| 亚洲一区国产| 国产欧美一区二区三区国产幕精品 | 国产欧美日本| 肉色欧美久久久久久久免费看 | 久久九九精品| 老牛国产精品一区的观看方式| 奇米狠狠一区二区三区| 久久国产三级精品| 国产aⅴ精品一区二区三区久久| 91精品啪在线观看国产18| 丝袜国产日韩另类美女| 国产剧情在线观看一区| 欧洲av一区二区| 亚洲免费一区三区| 里番精品3d一二三区| 欧美 日韩 国产一区二区在线视频| 蜜臀av性久久久久蜜臀aⅴ流畅 | 美国三级日本三级久久99| 免费亚洲婷婷| 最新亚洲一区| 国产精品免费精品自在线观看| 亚洲不卡av不卡一区二区| 日韩三级久久| 久久精品中文| 久久国产麻豆精品| 国产主播一区| 国产精品手机在线播放| 亚洲大全视频| 久久久国产精品网站| re久久精品视频| 国产精品宾馆| 免费日韩av片| 丰满少妇一区| 香蕉久久久久久| 久久国产毛片| 国产精品美女午夜爽爽| 六月丁香综合| 色老板在线视频一区二区| 欧美久久香蕉| 丝袜诱惑制服诱惑色一区在线观看| 成人在线视频中文字幕| 日韩高清中文字幕一区| 欧美精品一区二区久久| 精品国产欧美日韩| 天海翼亚洲一区二区三区| 久久久久亚洲| 国产一区二区三区网| 日韩av影院| 蜜桃伊人久久| 免费视频一区三区| 色欧美自拍视频| 国产精品地址| 亚洲人成网站在线在线观看| 91精品国产乱码久久久久久久 | 婷婷综合福利| 夜夜嗨网站十八久久| 日韩毛片视频| 麻豆国产一区| 欧美亚洲色图校园春色| 天堂成人免费av电影一区| www成人在线视频| 日韩.com| 狠狠久久伊人中文字幕| 国产精品毛片aⅴ一区二区三区| 日韩亚洲国产欧美| 久久高清免费| 日本精品不卡| 日韩啪啪电影网| 国产在线看片免费视频在线观看| 国产精品videossex久久发布| 日本不卡视频在线观看| 亚洲精品自拍| 天堂俺去俺来也www久久婷婷| 国产农村妇女精品一二区| 午夜av一区| 五月天久久网站| 好看不卡的中文字幕| 不卡中文一二三区| 蜜桃国内精品久久久久软件9|