达拉~ 2022-12-13 06:28 采纳率: 64.7%
浏览 24
已结题

使用canvas绘制直线为什么最后绘制的颜色总是灰色

img


就像这样,总是最后渲染的颜色不一样


<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<style>
    #canvas {
        border: 1px solid #ccc;
    }
</style>

<body>
    <!-- canvas不能使用css来设置宽高,绘制的内容会被拉伸 -->
    <!-- 但由于默认情况下 canvas 会将线条的中心点和像素的底部对齐,所以会导致显示效果是 2px 和非纯黑色问题。 -->
    <canvas width="500" height="301" id="canvas"></canvas>

    <script>
        const cxt = document.getElementById('canvas').getContext('2d'); //获取canvas的上下文
        cxt.moveTo(20, 80)
        cxt.lineTo(200, 80)
        cxt.stroke()

        cxt.moveTo(210, 80)
        cxt.lineTo(310, 80)
        cxt.stroke()

        cxt.moveTo(320, 80)
        cxt.lineTo(400, 80)
        cxt.stroke()
    </script>
</body>

</html>

展开全部

  • 写回答

3条回答 默认 最新

  • Absolute小白 2022-12-13 06:42
    关注

    默认的渐变你要统一就这样

    <canvas id="canvas" width="1000" height="800" style="border: solid 1px #24d1ec"></canvas>
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 3月10日
  • 已采纳回答 3月3日
  • 修改了问题 12月13日
  • 创建了问题 12月13日

悬赏问题

  • ¥15 vscode platformio
  • ¥15 代写uni代码,app唤醒
  • ¥15 全志t113i启动qt应用程序提示internal error
  • ¥15 ensp可以看看嘛.
  • ¥80 51单片机C语言代码解决单片机为AT89C52是清翔单片机
  • ¥60 优博讯DT50高通安卓11系统刷完机自动进去fastboot模式
  • ¥15 minist数字识别
  • ¥15 在安装gym库的pygame时遇到问题,不知道如何解决
  • ¥20 uniapp中的webview 使用的是本地的vue页面,在模拟器上显示无法打开
  • ¥15 网上下载的3DMAX模型,不显示贴图怎么办
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部