А знаете ли вы куда в CoreText направлена осьY?
Она направлена из левого нижнего угла в левый верхний.
Ну "как в школе учили". Декартова система. "Классическая".
Не как в GDI.
Мелочь. Но - "доставляет"...
Но когда разберёшься с этим - это начинает казаться логичным.
Что выводимые параграфы пытаются "стоять" на оси X (которая внизу). И что для задания "прямоугольника вывода" очередного параграфа надо изменять не его смещение по оси Y, а высоту.
Когда рендерим ПЕРВЫЙ параграф - задаём весь прямоугольник контекста вывода.
CoreText рендерит параграф внутри этого прямоугольника.
Получаем отрендеренную высоту. На эту высоту уменьшаем высоту прямоугольника вывода.
И так до тех пор пока высота не перевалит за ноль.
ЛОГИЧНО.
Она направлена из левого нижнего угла в левый верхний.
Ну "как в школе учили". Декартова система. "Классическая".
Не как в GDI.
Мелочь. Но - "доставляет"...
Но когда разберёшься с этим - это начинает казаться логичным.
Что выводимые параграфы пытаются "стоять" на оси X (которая внизу). И что для задания "прямоугольника вывода" очередного параграфа надо изменять не его смещение по оси Y, а высоту.
Когда рендерим ПЕРВЫЙ параграф - задаём весь прямоугольник контекста вывода.
CoreText рендерит параграф внутри этого прямоугольника.
Получаем отрендеренную высоту. На эту высоту уменьшаем высоту прямоугольника вывода.
И так до тех пор пока высота не перевалит за ноль.
ЛОГИЧНО.
Комментариев нет:
Отправить комментарий