ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Vue3.0高阶实战:开发高质量音乐Web app

2021-04-12 10:51:39  阅读:268  来源: 互联网

标签:Web scoreTextPaint app float Paint Vue3.0 Math fm textPaint


download:Vue3.0高阶实战:开发高质量音乐Web app

企业对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));
}

标签:Web,scoreTextPaint,app,float,Paint,Vue3.0,Math,fm,textPaint
来源: https://blog.51cto.com/u_15161311/2700915

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有