企业对Vue技术的要求越来越高,但掌握vue3.0高深技术的人才却很少。本课程将通过编写出一个真实的,高度还原音乐播放器的复杂前端项目,让你在实战中获得一线大厂vue3.0高级技术实际开发经验,助你在面试中脱颖而出。
适合人群
一年以上工作经验的前端从业人员
有一定 Vue与 js 基础,且渴望进阶的前端工程师
技术储备要求
熟习HTML、 CSS和JavaScript编程有一定Vue基础和Vue
实际开发经验已经具备Node.js、npm和webpac的使用经验
技术参数
Vue3.0
webpack 4.x @vue/cli 4.5.9
canvas.drawLine(x1, y1, x2, y2, scoreRingPaint); axisLablePaint.setTextSize(axisLableTextSize); axisLablePaint.setTextAlign(Paint.Align.CENTER); axisLablePaint.setColor(mInnerScoreRingColor); float axisLable_fonth = getFontHeight(axisLablePaint); float labelRadius =innerScoreDiameter/2 - inner_ringWidth - axisLable_fonth/2 + 3; float x3 = (float) (centerX + labelRadius * sinValue); float y3 =(float) (centerY + labelRadius * cosValue); canvas.save(); canvas.rotate(90+ degree,x3,y3); //绘製倾斜文字 canvas.drawText(axisLabelStrs[i],x3,y3 + getFontCenterYToBaseLine(axisLablePaint),axisLablePaint); canvas.restore(); } scoreTextPaint.setTextAlign(Paint.Align.CENTER); scoreTextPaint.setTextSize(scoreTextSize); scoreTextPaint.setColor(mScoreColor); double rAngle = Math.toRadians(90 - (-180 + offset_degree)); //弧度 float offset_y = (float)(maxOutterScoreRadius*Math.cos(rAngle)); float scoreBaselineY = centerY + offset_y; float tempH = getFontTopYToBaseline(scoreTextPaint); canvas.drawText(nFormat.format(score), centerX, scoreBaselineY, scoreTextPaint); scoreTextPaint.setTextSize(scoreTitleTextSize); scoreTextPaint.setColor(mScoreTitleColor); float scoreTitleBaselineY = scoreBaselineY - tempH - Tool.dpToPx(2); canvas.drawText(mScoreTitleStr, centerX, scoreTitleBaselineY, scoreTextPaint); } public static float getFontHeight(Paint textPaint){ Paint.FontMetrics fm = textPaint.getFontMetrics(); return (float)Math.ceil(fm.descent - fm.ascent) + 3; } public static float getFontTopYToBaseline(Paint textPaint){ Paint.FontMetrics fm = textPaint.getFontMetrics(); return (float)Math.ceil(-fm.ascent) + 3; } public static float getFontBottomYToBaseline(Paint textPaint){ Paint.FontMetrics fm = textPaint.getFontMetrics(); return (float)Math.ceil(fm.descent) + 3; } public static float getFontCenterYToBaseLine(Paint textPaint){ Paint.FontMetrics fm = textPaint.getFontMetrics(); float fonth = getFontHeight(textPaint); return (float)Math.abs(Math.ceil(fonth/2- fm.descent)); }