По какой-то причине, когда я пытаюсь распечатать символ валюты в PDF-документе в своем приложении для iPhone, я могу печатать ¬ £ вместо £. (Символ фунта используется, когда на iPhone установлены британские настройки).
Это мой код:
text = [NSString stringWithFormat:@"%@", [Helper convertDoubleToCurrencyString:[item.Total floatValue]]];
WriteOutTextInPDF(pdfContext, [text UTF8String], priceX, currentY, 16);
+(NSString*) convertDoubleToCurrencyString:(double) d{
NSDecimalNumber *decimal = (NSDecimalNumber*)[NSDecimalNumber numberWithDouble:d];
NSNumberFormatter *currencyFormatter = [[[NSNumberFormatter alloc] init] autorelease];
[currencyFormatter setNumberStyle:NSNumberFormatterCurrencyStyle];
return [currencyFormatter stringFromNumber:decimal];
}
void WriteOutTextInPDF(CGContextRef pdfContext, const char *text, int x, int y, int fontSize){
CGContextSelectFont (pdfContext, "Helvetica", fontSize, kCGEncodingMacRoman);
CGContextSetTextDrawingMode (pdfContext, kCGTextFill);
CGContextSetRGBFillColor (pdfContext, 0, 0, 0, 1);
CGContextShowTextAtPoint (pdfContext, x, y, text, strlen(text));
}
Есть идеи, как я получаю символ вместо этого представления?
Любая помощь будет принята с благодарностью.