вопрос решился простой заменой одиноких пикселей по горизонтали и вертикали, но это для другой задачи.
а в этом примере - получились слишком жирные прямоугольники - толще самого шрифта, но все равно - всем спасибо
я извиняюсь за то что выложил код кусками, естественно Math::Trig применяется, в таблице 3 колонки
1 колонка - исходные данные, 2 - ожидаемые /после округления/ 3 - то, что возвращает формула
а в этом примере - получились слишком жирные прямоугольники - толще самого шрифта, но все равно - всем спасибо
способ xmoonlight взял на заметку