我正在构建一个带有 HTML5 画布 2D 上下文的正方形网格。我平移和缩放画布,使网格正方形的大小为一个单位,但未转换为 30 像素。这是一个由 30px 正方形组成的 10x10 网格示例。
这很好用,除了一件事:文本。
要为画布指定适合正方形的字体,我需要指定小于 1 的字体大小。
例如,“.5px sans-serif”应该是正方形大小的一半(即“15px sans-serif”代表 30px 未转换的正方形)。这至少在 Chrome 中失败了,并且画布恢复为更大的默认值。
我发现的唯一解决方案是在我绘制文本时撤消画布缩放,哎呀!
有没有办法通过亚像素字体规范来解决这个问题?(自然变换后,字体会是正常的大字体。亚像素字体大小仅相对于画布变换)