আমি যা চাই তা হ'ল আমার সাদা ইউআইবিবেল পাঠ্যের চারপাশে এক পিক্সেল কালো সীমানা।
আমি নীচের কোডটি দিয়ে ইউআইএলবেলকে সাবস্ক্ল্যাসিংয়ের মতো পেয়েছি, যা আমি বেশ কয়েকটি স্পর্শকাতরভাবে সম্পর্কিত কয়েকটি অনলাইন উদাহরণ থেকে আঁতকে ওঠে ob এবং এটি কাজ করে তবে এটি খুব, খুব ধীর (সিমুলেটর ব্যতীত) এবং আমি পাঠ্যটি উল্লম্বভাবে কেন্দ্রের মধ্যে পেতে পারি না (তাই আমি সাময়িকভাবে শেষ লাইনে y মানটি কোড করে রেখেছি)। Ahhhh!
void ShowStringCentered(CGContextRef gc, float x, float y, const char *str) {
CGContextSetTextDrawingMode(gc, kCGTextInvisible);
CGContextShowTextAtPoint(gc, 0, 0, str, strlen(str));
CGPoint pt = CGContextGetTextPosition(gc);
CGContextSetTextDrawingMode(gc, kCGTextFillStroke);
CGContextShowTextAtPoint(gc, x - pt.x / 2, y, str, strlen(str));
}
- (void)drawRect:(CGRect)rect{
CGContextRef theContext = UIGraphicsGetCurrentContext();
CGRect viewBounds = self.bounds;
CGContextTranslateCTM(theContext, 0, viewBounds.size.height);
CGContextScaleCTM(theContext, 1, -1);
CGContextSelectFont (theContext, "Helvetica", viewBounds.size.height, kCGEncodingMacRoman);
CGContextSetRGBFillColor (theContext, 1, 1, 1, 1);
CGContextSetRGBStrokeColor (theContext, 0, 0, 0, 1);
CGContextSetLineWidth(theContext, 1.0);
ShowStringCentered(theContext, rect.size.width / 2.0, 12, [[self text] cStringUsingEncoding:NSASCIIStringEncoding]);
}
আমার কেবল এক উত্তেজনাপূর্ণ অনুভূতি আছে যে আমি এটি করার জন্য একটি সহজ উপায়টিকে উপেক্ষা করছি। সম্ভবত "ড্রটেক্সটইনআরেক্ট" ওভাররাইড করে, তবে আমি ইচ্ছাকৃতভাবে এটিকে ঘোরানো এবং সত্যই শক্ত করে ফেলে দেওয়া সত্ত্বেও আমার ইচ্ছার দিকে বাঁকানোর জন্য ড্রটেক্সটইনআরেক্ট পেতে পারি না।