我写了一个代码,需要在UILabel上显示印地文数字。我使用devanagari字体显示该值,但是它不起作用。它只是改变外观,而不改变语言。

我正在使用:

UIFont *font = [UIFont fontWithName:@"DevanagariSangamMN" size:16];
myLabel.font = font;


但这不起作用。谁能帮我这个忙吗?

最佳答案

您输入的字体名称错误。字体名称是DevanagariSangamMN而不是DevanagarSangamMN(请注意,名称中缺少'i')。因此,您的代码应为:

UIFont *font = [UIFont fontWithName:@"DevanagariSangamMN" size:16];
myLabel.font = font;


查找有关iOS字体的更多信息。我推荐this网站,该网站具有iOS中所有可用的字体

另外,如果您在标签中键入英文字符,则将返回英文版本,而不是印地文翻译。它不会为您翻译。使用DevanagariSangamMN仅允许您显示印地语字符,因为通常使用的诸如Helvetica之类的字体不包含印地语字形。例如:

UIFont *font = [UIFont fontWithName:@"DevanagariSangamMN" size:16];
myLabel.font = font;
myLabel.text = @"Testing";


这将以英语而不是印地语返回“测试”。但是,如果您这样做:

UIFont *font = [UIFont fontWithName:@"DevanagariSangamMN" size:16];
myLabel.font = font;
myLabel.text = @"परीक्षण";


然后,您将得到“परीक्षण”,这是“测试”的北印度语(我使用Google Translate,所以可能是错误的)。因此,要获取印地语版本(४)的数字“ 4”,您需要执行以下操作:

UIFont *font = [UIFont fontWithName:@"DevanagariSangamMN" size:16];
myLabel.font = font;
myLabel.text = @"४";

关于iphone - 用Xcode在UILabel上写北印度语,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7513928/

10-12 13:36