Comment dessiner un texte tronqué avec ATSUI ?? J'ai une application héritée qui utilise l'API QuickDraw. il utilise les fonctions StringWidth, TruncString et DrawString. Je pourrais remplacer le StringWidth et DrawString avec ATSUMeasureTextImage et ATSUDrawText d'ATSUI. Cependant, je ne pouvais pas trouver un moyen de tronquer une chaîne de sorte qu'elle s'insère dans un rect.Comment dessiner un texte tronqué avec ATSUI
J'ai utilisé Quartz avec QuickDraw avant de choisir ATSUI. Quartz ne fournit aucune fonction pour estimer la taille (en pixels) du texte dessiné.
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]);
Y at-il une fonction dans ATSUI qui effectue une troncature de chaîne comme TruncString ... ?? sinon, comment puis-je dessiner une chaîne tronquée à un rect.
Merci, Abhinay.
Merci Peter, j'ai trouvé un moyen de mesurer les dimensions du texte mis en page avec les fonctions ATSUI. Je ne suis pas concerné par 64 bits pour l'instant. –
Abhinay K Reddyreddy: Si votre solution diffère de la mienne, pourquoi ne pas l'afficher comme réponse et l'accepter? –