2013-05-31 5 views
2

Пытается нарисовать текст, используя CGContextShowText.Как сделать текст центрированным в конкретном прямоугольнике?CGContextShowText для выравнивания по центру

Примечание: drawInRect может сделать это job.I задаю особенно о CGContextShowText

+0

Получите размер текста, вычитайте из размера rect, уменьшите его пополам, добавьте в X источник прямоугольника, нарисуйте там. –

+0

Спасибо. Подумайте об этом. Так как нет определенного метода для его установки, как мы устанавливаем шрифт и другие свойства? –

+0

Ну, что говорит документация? –

ответ

0

Если вы действительно хотите использовать CGContextShowText (основной текст будет лучше), вы должны будете делать математику самостоятельно, то есть выяснить, насколько большой текст, и вычтите половину от координаты x вашей центральной точки.

Чтобы определить размер текста, вы можете установить режим текста чертежа в kCGTextInvisible (с использованием CGContextSetTextDrawingMode), нарисовать текст один раз, проверить, насколько текст позиция перемещается (с использованием CGContextGetTextPosition до и после рисунка), а затем снова нарисуйте текст с видимым режимом рисования в нужном месте.

Смежные вопросы