CGContextShowTextAtPoint y espacio en blanco

¿Por qué es que el siguiente código ignora el espacio en blanco? introduzca la descripción de la imagen aquí

UIColor *textColor = [UIColor colorWithRed:153.0/255.0 green:102.0/255.0 blue:51.0/255.0 alpha:1.0]; CGContextSetFillColorWithColor(ctx, [textColor CGColor]); CGContextSelectFont(ctx, "Helvetica Neue Bold" , 14, kCGEncodingMacRoman); CGContextSetTextMatrix(ctx, CGAffineTransformMakeScale(1, -1)); CGContextSetShadowWithColor(ctx, CGSizeMake(0.0, 1.0), 1.0, [[UIColor whiteColor] CGColor]); //CGContextSetAllowsAntialiasing(ctx, YES); NSString *str = @"test1 test2"; CGContextShowTextAtPoint(ctx, 5, 17, [str UTF8String], str.length); 

Donde al cambiar el nombre de fuente a "Helvetica Neue" se produce el espacio en blanco:

¿Alguien entiende lo que está pasando aquí?

CGContextShowTextAtPoint() no es la forma correcta de mostrar text usando CoreGraphics, ya que puede ser engañoso como ese nombre de function. Prueba CoreText en su lugar.