我正在动态创建一个canvas元素,我想在createPattern函数中将其用作模式。 但是,模式的实际大小不是整数值,而是具有动态大小的小数。当然,创建一个十进制大小的canvas元素是不可能的。
问题是:我可以让画布在图案拼贴之间有一个小数点间距吗?
答案 0 :(得分:1)
不可能开箱即用。然而,可能有一些工作 -
让我们假设所需的间距是0.5像素,那么你可以:
ctx.scale(0.5, 0.5);
缩放将强制模式为子像素,因此您可以获得"十进制线"的外观。请记住之后缩小到原始比例(使用save()/ restore()来获得一个简单的解决方案)。
如果您希望间隙为0.33,则使用3作为因子,4作为0.25,依此类推。