我正在尝试显示带有西班牙语字母的单词-但该字母只显示没有大写字母N的变音波浪号。但是,小写字母ñ正在正确显示。你知道如何在iOS中用默认字体在CATextLayer中显示字母吗?
我已经给出了下面的示例代码。
CATextLayer *tempLayerForTextWith = [CATextLayer layer];
tempLayerForTextWith.frame = CGRectMake(10, 10, 100, 100);
//tempLayerForTextWith.font = [[UIFont boldSystemFontOfSize:actualFontSize] fontName];
//tempLayerForTextWith.fontSize = actualFontSize;
tempLayerForTextWith.string = @"ñÑ";
tempLayerForTextWith.backgroundColor = [[UIColor lightGrayColor] CGColor];
wordLayer.foregroundColor = textColor;
[contentView.layer addSublayer:tempLayerForTextWith];我也有同样的问题,对于德文字母?,?,µ。如果你知道,请建议如何解决。
在Brad的问题之后更新。
我发现只有第一行有这个问题。如果我将文本设置为长文本,以便使用下面的代码换行,那么我发现前面的第二行变音符号绘制正确。在CATextLayer中有没有一种方法可以指定文本的基线,因为iOS似乎设置了基线,这样文本的头部就会被截断。
tempLayerForTextWith.string =@“- tempLayerForTextWith.wrapped = YES;
发布于 2012-05-25 05:43:31
这是iOS中的一个bug。它已被记录下来,并被苹果公司接受。您可以添加一个新的行字符来引入新的行,它将在第二行正确地显示变音符号,或者您可以在CALAyer中使用drawLayer或其他选项来绘制自己。
https://stackoverflow.com/questions/10382963
复制相似问题