如何使用CGFontCreateWithFontName创建字体?

时间:2009-01-21 22:57:31

标签: cocoa-touch fonts core-graphics

我想对如何以及何时加载和释放字体有更好的控制,因此我有兴趣让CGFontCreateWithFontName()起作用。

GContextRef ctx = UIGraphicsGetCurrentContext();
CGContextSelectFont(ctx, "Georgia", 20.0, kCGEncodingMacRoman);
// DRAWING WITH CGContextShowTextAtPoint() IS WORKING...

GContextRef ctx = UIGraphicsGetCurrentContext();
CGFontRef fontRef = CGFontCreateWithFontName((CFStringRef)@"Georgia");
CGContextSetFont(ctx, fontRef);
CGContextSetFontSize(ctx, 20.0);
// DRAWING WITH CGContextShowTextAtPoint() IS NOT WORKING...

有关第二个街区出了什么问题的任何线索?

1 个答案:

答案 0 :(得分:3)

看看documentation

  

Quartz使用Apple Type Services(ATS)提供的字体数据,通过当前字体的编码向量映射数组的每个字节,以获得要显示的字形。请注意,必须使用CGContextSelectFont设置字体。 不要将CGContextShowTextAtPoint与CGContextSetFont结合使用

您想改用 CGContextSelectFont