首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在画布中绘制一条1px粗线将创建一条2px粗线

在画布中绘制一条1px粗线将创建一条2px粗线
EN

Stack Overflow用户
提问于 2012-12-14 21:09:28
回答 8查看 39.4K关注 0票数 55

在这个jsfiddle中,有一行lineWidth为1。

http://jsfiddle.net/mailrox/9bMPD/350/

例如:

代码语言:javascript
复制
ctx.lineWidth = 1;

然而,在画布上绘制的线条是2px粗的,如何创建1px粗的线条呢?

我可以画一个矩形(高度为1px ),但是我希望这条线也能在对角线上工作。那么如何让这条线达到1px的高度呢?

谢谢!

EN

Stack Overflow用户

发布于 2017-07-18 17:45:42

画布可以使用fillRect()绘制清晰的直线。高度为1px或宽度为1px的矩形即可完成此任务。它不需要半个像素值:

代码语言:javascript
复制
var ctx = document.getElementById("myCanvas").getContext("2d");

ctx.drawVerticalLine = function(left, top, width, color){
    this.fillStyle=color;
    this.fillRect(left, top, 1, width);
};

ctx.drawHorizontalLine = function(left, top, width, color){
    this.fillStyle=color;
    this.fillRect(left, top, width, 1);
}

ctx.drawVerticalLine(150, 0, 300, "green");
ctx.drawHorizontalLine(0, 150, 300, "red");

https://jsfiddle.net/ynur1rab/

票数 4
EN
查看全部 8 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13879322

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档