我試圖繪製一個字符串drawAtPoint,而不是CGContextShowTextAtPoint。用drawAtPoint定位字符串?
- (UIImage *)drawonimage:(UIImage *)img {
// myString is a string to draw
// fontName is a string (font name)
// fontSize is the font size (CGfloat)
CGFloat w = img.size.width;
CGFloat h = img.size.height;
UIGraphicsBeginImageContextWithOptions(img.size,NO,1.0f);
CGColorSpaceRef colorSpace0 = CGColorSpaceCreateDeviceRGB();
CGContextRef context0 = CGBitmapContextCreate(NULL,w,h,8,4 * w,colorSpace0,kCGImageAlphaPremultipliedFirst);
CGContextDrawImage(context0,CGRectMake(0,0,w,h),img.CGImage);
CGPoint p0 = CGPointMake(0,0);
[img drawAtPoint:p0];
CGPoint p1 = CGPointMake(0,0);
UIColor *aColor;
aColor = [UIColor colorWithRed:100/255.0 green:120.0/255.0 blue:140.0/255.0 alpha:90/100.0];
CGContextSetFillColorWithColor(UIGraphicsGetCurrentContext(),aColor.CGColor);
[myString drawAtPoint:p1 withFont:[UIFont fontWithName:fontName size:fontSize]];
UIImage *Img = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return Img;
}
我的問題是字符串實際出現的位置。例如,讓我假設我想繪製的字符串是「Hello world!」字符串的最左上角不在0,0處。 (見圖)我想,外觀取決於字體,字體大小和其他因素。所以我想知道是否有測量弦高(不是寬度)的方法? 或者我該怎麼做才能使字符串的左上角(箭頭處)位於0,0?
謝謝你的幫助。
謝謝。我還沒有看到'我如何計算...'主題。 – 2013-02-21 15:17:45
不客氣! – apascual 2013-02-21 15:19:43