iPhone - Dessiner du texte blanc sur noir vue à l'aide de CGContext
Je ne peux pas atteindre le dessin de certains du texte blanc sur un noir d'affichage à l'aide de CGContext dans une méthode drawRect.
Je fais :
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetStrokeColorWithColor(context, [UIColor whiteColor].CGColor);
CGContextSetFillColorWithColor(context, [UIColor whiteColor].CGColor);
CGContextSetLineWidth(context, 1.0);
CGContextSelectFont(context, "Helvetica", 20, kCGEncodingMacRoman);
CGContextSetTextDrawingMode(context, kCGTextFill);
CGPoint center = self.center;
Et puis...
Impossible de trouver la bonne méthode.
J'ai essayé ceci :
UIFont* font = [UIFont fontWithName:@"Geneva" size:12.0];
[@"Some text" drawAtPoint:center withFont:font];
Mais il ne fonctionne pas.
Je ne trouve pas du tout CGContext méthode pour cela. Où est-il caché ?
Comment puis-je tirer de ce texte en blanc ?
- Votre code ressemble la plupart du temps correct. Vous n'avez pas besoin
CGContextSelectFont
ouCGContextSetTextDrawingMode
. Également Double vérifier que le centre est en fait une valeur raisonnable.
Vous devez vous connecter pour publier un commentaire.
Ok après une couple d'heures, et la lecture du Quartz 2D guide de programmation, j'ai découvert que vous devez également définir la couleur de REMPLISSAGE, et pas seulement la couleur de CONTOUR. Ce qui signifie que le code fonctionne.
J'ai besoin d'afficher des étiquettes de diagramme sur un gris-frontière. Maintenant les étiquettes apparaissent en blanc.
UIColor.whiteColor.CGColor
en Objective-C 2.0 syntaxe à point.Cela attirera une chaîne de caractères en blanc dans un rectangle noir
Sur les courts exemple, essayez d'utiliser
[[UIColor whiteColor] set]
avant ladrawAtPoint:
appel.Fonctionne avec :
Mais encore besoin de quelques transformations à être affichée de ne pas en miroir 🙂
'CGContextShowTextAtPoint' is unavailable: APIs deprecated as of OS X 10.9 and earlier are unavailable in Swift
Cela fonctionne avec ce code :