ATSUIで切り捨てられたテキストを描画するにはどうすればよいですか?QuickDrawAPIを使用するレガシーアプリがあります。StringWidth、TruncString、およびDrawString関数を使用します。StringWidthとDrawStringをATSUIのATSUMeasureTextImageとATSUDrawTextに置き換えることができます。しかし、長方形に収まるように文字列を切り捨てる方法を見つけることができませんでした。
ATSUIを選ぶ前に、QuickDrawでQuartzを使用しました。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]);
TruncStringのような文字列の切り捨てを行うATSUIの関数はありますか...?? そうでない場合は、長方形に切り捨てられた文字列を描画するにはどうすればよいですか。
ありがとう、Abhinay。