Ich sah gerade diese recent question auf SO, die etwas nah kommt, was ich hier frage.Informationen über eine Glyphe in Core Text erhalten
Also versuche ich eine mathematische Gleichung mit Core Text und NSAttributedString
zu setzen. Es funktionierte ziemlich gut für Ausdrücke wie x , aber dann stieß ich auf ein Problem, wenn ich y verwende. Hat nämlich ‚y‘ ein Abseilgerät, das ich weiß nicht, wie Rechnung in meiner Zeichnung Code zu nehmen:
CGContextSaveGState(context);
CGContextTranslateCTM(context, x, sizeOfGlyph.height/2.0);
CGContextScaleCTM(context, 1.0, -1.0);
CGContextSetTextMatrix(context, CGAffineTransformIdentity);
CTLineRef line = CTLineCreateWithAttributedString((__bridge CFAttributedStringRef)attributedSubstring);
CGContextSetTextPosition(context, 0.0, 0.0);
CTLineDraw(line, context);
CFRelease(line);
CGContextRestoreGState(context);
Grundsätzlich übersetze ich den Zusammenhang mit der Höhe des Glyphe Hälfte (als here berechnet) die beginnt Text an der Grundlinie der Glyphe. Wie Sie sich vorstellen können, führt dies zu Problemen mit Glyphen wie 'y', weil die halbe Höhe der Glyphe nicht die Grundlinie der Glyphe ist. Ich denke nicht, dass es ausreicht, den Senkkörper der Schriftart zu verwenden, weil ich nicht wissen kann, ob diese Glyphe eine Unterlänge hat oder nicht. Also, was ich herausfinden möchte, ist , ob es eine Möglichkeit gibt, den Descender (oder irgendwelche gewünschten Metriken) für eine bestimmte Glyphe zu finden?
Jedes Know-how zu diesem Thema wäre willkommen, ich fange gerade erst mit Core Text an.