Как да нарисувам съкратен текст с ATSUI?? Имам наследено приложение, което използва QuickDraw API. той използва функциите StringWidth, TruncString и DrawString. Мога да заменя StringWidth и DrawString с ATSUI's ATSUMeasureTextImage и ATSUDrawText. Въпреки това не можах да намеря начин да съкратя низ, така че да се побере в правоъгълник.
Използвах Quartz с QuickDraw, преди да избера ATSUI. Quartz не предоставя никакви функции за оценка на размера (в пиксели) на изчертания текст.
CGContextSelectFont(cgContext,
"Geneva", 12.0, kCGEncodingMacRoman);
CGContextSetTextMatrix(cgContext,
CGAffineTransformMake(1.0,0.0, 0.0,
-1.0, 0.0, 0.0));
CGContextShowTextAtPoint(cgContext,
inPoint.h, inPoint.v + 12.00, (const
char*)&(inString[1]), inString[0]);
Има ли някаква функция в ATSUI, която прави съкращаване на низ като TruncString...?? ако не, как да нарисувам низ, съкратен до правоъгълник.
Благодаря, Абхинай.