iOS Quartz встраивает шрифт в pdf

Я пытаюсь создать PDF-страницу с текстом, содержащим пользовательские символы (например, "€"), используя пользовательский шрифт. Я создал контекст и страницу PDF, используя UIGraphicsBeginPDFContextToData и UIGraphicsBeginPDFPage. Мой код для рендеринга текста выглядит примерно так:

NSString *fontFile = [[NSBundle mainBundle] pathForResource:@"somefont.otf" ofType:nil];
CGDataProviderRef dataProvider = CGDataProviderCreateWithFilename([fontFile cStringUsingEncoding:NSASCIIStringEncoding]);
CGFontRef cgfont = CGFontCreateWithDataProvider(dataProvider);
CTFontRef ctfont = CTFontCreateWithGraphicsFont(cgfont, 10, NULL, NULL);
CFRelease(dataProvider);        

NSString *text = @"Hello €";
int len = [text length];
CGGlyph glyphs[len];
CTFontGetGlyphsForCharacters(ctfont, (const unichar*)[text cStringUsingEncoding:NSUnicodeStringEncoding], glyphs, len);
CGContextSetTextDrawingMode(_context, kCGTextFill);
CGContextShowGlyphsAtPoint(_context, 10, 10, glyphs, len);
CFRelease(cgfont);
CFRelease(ctfont);

Рендеринг символа € работает (из-за CTFontGetGlyphsForCharacters), но шрифт не встроен в pdf. Есть ли способ сделать это?

7
задан toucan 7 March 2012 в 19:54
поделиться