Ширина линии в холсте
Что ж, если я рисую линию с нечетным значением lineWidth в HTML5 Canvas, я получаю размытую линию и знаю причину этой проблемы.
Теперь я хочу знать решения для преодоления этого. Я уже знаю решение для этого и которое я не мог реализовать сейчас. Поэтому, пожалуйста, прокомментируйте любое другое решение этой проблемы.
Мое решение: если вам нужно нарисовать линию с нечетной шириной, вам придется сместить центр вашей линии на 0,5 вверх или вниз. Таким образом, рендеринг будет происходить на границе пикселя, а не посередине, и у вас всегда будет четкая линия без остатков по краям.
Дайте мне знать, если какие-либо другие решения, кроме указанных выше
1 ответ
К счастью (и к сожалению) вы правильно реализовали "привязку к пикселям", когда вы добавляете / вычитаете 0,5 пикселя, чтобы линии выравнивались по границам пикселей. В отличие от Photoshop, нет возможности автоматически привязывать пиксели к холсту....Я чувствую твою боль!