В оригинальном BB1.6 неправильно отображаются складки. Места под символ выделяется ровно половина от реального размера.

В BB Revival 0.2 это пофиксили умножая размер на 2. Проблема вроде решена. Но это костыль.
Решил докопаться до истины. И докопался до процедурыGetRasterWidthв HostFonts. (Спасибо Илье Ермакову за Terminal)

Выяснилось, что неправильно работает юникодная функцияWinApi.GetTextExtentPoint32W(dc, str, 1, s)

На скрине два варианта GetRasterWidth. Оригинальная и поправленная. Правки выделены красным. Короче фикс заключается в отказе от юникодной GetTextExtentPoint32W.

Также скрин из BB Revival

Ну и вопросы к сообществу:
1. Корректен ли такой фикс в юникодном BB? Ведь ширина все равно определяется только для 256 символов
2. Кто знает почему GetTextExtentPoint32W неправильно работает со шрифтом "Wingdings"?
3. И зачем нужен код выделенный синим цветом?