html5画布防止线宽缩放

栏目: Html5 · 发布时间: 7年前

内容简介:如果我绘制一个长度为linewidth = 2的矩形,然后将其缩放为矩形的大小的两倍,我得到一个矩形,它的边界是初始线宽的两倍.有没有办法将线宽保持为2或原始大小的感觉大小.简而言之,我想只是缩放矩形的大小,但是将线宽保持为大小2.

如果我绘制一个长度为linewidth = 2的矩形,然后将其缩放为矩形的大小的两倍,我得到一个矩形,它的边界是初始线宽的两倍.

有没有办法将线宽保持为2或原始大小的感觉大小.

简而言之,我想只是缩放矩形的大小,但是将线宽保持为大小2.

我尝试在scale(2,2)命令之前和之后设置线宽,但边框宽度也增加.

一个选项是将线宽除以比例因子,如果x和y比例因子相同,这将起作用.

我没有选择缩放矩形宽度和高度,我需要使用scale命令,因为我有其他需要缩放的矩形内的对象.

您可以使用转换来定义路径,而无需一个路径.这样线宽不会被改变.

例:

<!DOCTYPE html>
<html>
<body>

<canvas id="myCanvas" width="300" height="150" style="border:1px solid #d3d3d3;">
Your browser does not support the HTML5 canvas tag.</canvas>

<script>
var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
ctx.save(); //save context without transformation
ctx.scale(2,0.5); //make transformation
ctx.beginPath(); //define path
ctx.arc(100,75,50,0,2*Math.PI);
ctx.restore(); //restore context without transformation
ctx.stroke(); //stroke path
</script> 

</body>
</html>

http://stackoverflow.com/questions/3794354/html5-canvas-prevent-linewidth-scaling


以上所述就是小编给大家介绍的《html5画布防止线宽缩放》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

C专家编程

C专家编程

[美] Peter Vander Linde / 徐波 / 人民邮电出版社 / 2002-12 / 40.00元

《C专家编程》展示了最优秀的C程序员所使用的编码技巧,并专门开辟了一章对C++的基础知识进行了介绍。 书中对C的历史、语言特性、声明、数组、指针、链接、运行时、内存,以及如何进一步学习C++等问题作了细致的讲解和深入的分析。全书撷取几十几个实例进行讲解,对C程序员具有非常高的实用价值。 这本《C专家编程》可以帮助有一定经验的C程序员成为C编程方面的专家,对于具备相当的C语言基础的程序员......一起来看看 《C专家编程》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

SHA 加密
SHA 加密

SHA 加密工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具