内容简介:如果我绘制一个长度为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画布防止线宽缩放》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- canvas学习笔记-2d画布基础
- html5 – 画布中的矩形尺寸错误
- 微软为 Windows 10 Mail 应用新增触屏画布
- 熬夜总结了 “HTML5画布” 的知识点(共10条)
- javascript – 2D图形框架如Pixi.js如何使画布绘制更快?
- Token经济设计专家叶开:Token设计画布与10大设计模式
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。