Если вы хотите нарисовать фигуру без сглаженных краев, попробуйте использовать половину пикселей для координат.
Представьте каждый пиксель как большой квадрат. Целочисленные координаты
(0, 1, 2 ...) - края квадратов. Если вы рисуете одну единицу шириной
линия между целыми числами координат, она будет перекрывать противоположные стороны
квадрата пикселей, и результирующая линия будет нарисована двумя пикселями
широкий. Чтобы нарисовать линию шириной всего в один пиксель, нужно сдвинуть
координаты на 0,5 перпендикулярно направлению линии.
Например, если вы попытаетесь нарисовать линию от (1, 0) до (1, 3),
браузер нарисует линию, покрывающую 0,5 пикселя экрана по обе стороны от
х = 1. Экран не может отображать половину пикселя, поэтому он расширяет строку до
покрыть всего два пикселя:
Но, если вы попытаетесь нарисовать линию от (1,5, 0) до (1,5, 3), браузер
нарисует линию, покрывающую 0,5 пикселя экрана по обе стороны от х = 1,5,
в результате получается линия шириной в 1 пиксель: