क्या मैं iPhone एप्लिकेशन में कस्टम फ़ॉन्ट एम्बेड कर सकता हूं?


772

मैं चाहूंगा कि एक ऐप में टेक्स्ट रेंडर करने के लिए एक कस्टम फॉन्ट शामिल हो, उसे लोड करें और फिर UIKitजैसे स्टैंडर्ड एलिमेंट्स के साथ उसका इस्तेमाल करें UILabel। क्या यह संभव है?


5
स्टैनफोर्ड में CS193p (iPhone अनुप्रयोग विकास) व्याख्यान में से एक में, इवान ने कहा कि एक डिवाइस पर अपना स्वयं का फ़ॉन्ट स्थापित करना "बहुत काम" है, जिसका कम से कम मतलब है कि यह संभव है :-)
इल्या बिरमान

2
iPhone 3.2 कस्टम फ़ॉन्ट की अनुमति देता है, लेकिन यह केवल iPad है (नीचे उत्तर देखें)
samvermette

6
मैंने अंत में छवियों का उपयोग किया।
एयरसोर्स लिमिटेड

2
वाह ... उस सब के बाद, जवाब अभी भी छवियाँ है ... अविश्वसनीय। मैं वास्तव में सिस्टम फोंट के समान क्षमता वाले कस्टम फोंट के ठोस कार्यान्वयन की उम्मीद कर रहा था। अफसोस ...
d2burke

1
मेरे द्वारा पूछे जाने के बाद से जो दशक बीत चुका है, उसे प्रतिबिंबित करने के लिए मैंने मूल प्रश्न को काफी हद तक काट दिया है। मैं हर किसी को अपनी टिप्पणियों और उत्तरों को उचित रूप से ट्रिम करने के लिए प्रोत्साहित करूंगा।
एयरसोर्स लिमिटेड

जवाबों:


646

iOS 3.2 और बाद में इसका समर्थन करते हैं। सीधे से iPhone OS 3.2 में नया क्या है दस्तावेज़:

कस्टम फॉन्ट सपोर्ट
एप्लिकेशन जो कस्टम फॉन्ट का उपयोग करना चाहते हैं, अब उन फोंस को अपने एप्लिकेशन बंडल में शामिल कर सकते हैं और उन फोंट को सिस्टम में पंजीकृत कर सकते हैं जिसमें उनकी Info.plist फ़ाइल में UIAppFonts कुंजी शामिल है। इस कुंजी का मान अनुप्रयोग के बंडल में फ़ॉन्ट फ़ाइलों की पहचान करने वाले स्ट्रिंग की एक सरणी है। जब सिस्टम कुंजी को देखता है, तो यह निर्दिष्ट फोंट को लोड करता है और उन्हें एप्लिकेशन को उपलब्ध कराता है।

एक बार जब फोंट सेट कर लिया जाता है Info.plist, तो आप अपने कस्टम फोंट का उपयोग आईबी या प्रोग्रामिक रूप से किसी भी अन्य फॉन्ट के रूप में कर सकते हैं।

Apple डेवलपर फ़ोरम पर एक थ्रेड चल रहा है:
https://devforums.apple.com/thread/37824 (लॉगिन आवश्यक)

और यहां एक उत्कृष्ट और सरल 3 चरणों का ट्यूटोरियल है कि इसे कैसे प्राप्त किया जाए (टूटी लिंक हटा दी गई)

  1. संसाधन के रूप में Xcode का उपयोग करके अपनी परियोजना में अपनी कस्टम फ़ॉन्ट फ़ाइलें जोड़ें
  2. अपनी Info.plistफ़ाइल में एक कुंजी जोड़ें UIAppFonts
  3. इस कुंजी को एक सरणी बनाएं
  4. आपके पास प्रत्येक फ़ॉन्ट के लिए, UIAppFontsसरणी में आइटम के रूप में अपनी फ़ॉन्ट फ़ाइल (एक्सटेंशन सहित) का पूरा नाम दर्ज करें
  5. सहेजें Info.plist
  6. अब आपके आवेदन में आप [UIFont fontWithName:@"CustomFontName" size:12]अपने UILabels और UITextViews , आदि के साथ उपयोग करने के लिए कस्टम फ़ॉन्ट प्राप्त करने के लिए कॉल कर सकते हैं ...

इसके अलावा: सुनिश्चित करें कि फोंट आपके कॉपी बंड संसाधनों में हैं।


14
यहाँ iOS4 के लिए स्टेप ट्यूटोरियल का एक स्टेप दिया गया है: blog.beefyapps.com/2010/06/custom-fonts-in-ios-4
pm_labs

15
यह ट्यूटोरियल बहुत अच्छा है। shang-liang.com/blog/custom-fonts-in-ios4 महत्वपूर्ण रूप से, NSString तर्क [UIFont fontWithName: ...] फ़ाइल नाम के बजाय फ़ॉन्ट के लिए OS नाम है।
विलिस्टर

152
इससे पहले कि कोई और आईओएस द्वारा आवश्यक फ़ॉन्ट के वास्तविक पोस्टस्क्रिप्ट नाम को खोजने के लिए fontforge स्थापित करने में 3 घंटे खर्च करता है। मैं बताता हूं कि आप इस जानकारी को खोजने के लिए फ़ॉन्ट पुस्तक में फ़ॉन्ट पर केवल Cmd + I दबा सकते हैं।
डैनियल वुड

42
सही फ़ॉन्ट नाम प्राप्त करने के लिए संघर्ष करने के बाद, मैंने अभी स्थापित फोंट सूचीबद्ध किया और इसे पाया। बहुत मददगार। यहाँ कोड है: (NSString * familyName [UIFont familyNames] में) {NSLog (@ "Family% @", familyName); NSLog (@ "नाम =% @", [UIFont fontNamesForFamilyName: familyName); }
स्टीव पॉटर

26
यदि आपका कोड काम नहीं कर रहा है, तो सुनिश्चित करें कि आपको "फाइल बनाएँ चरण" में फ़ॉन्ट फ़ाइल दिखाई दे रही है -> "कॉपी बंडल रिसोयस"
मिकी

299

संपादित करें: iOS 3.2 के रूप में, यह कार्यक्षमता अंतर्निहित है। यदि आपको पूर्व 3.2 का समर्थन करने की आवश्यकता है, तो आप अभी भी इस समाधान का उपयोग कर सकते हैं।

मैंने एक सरल मॉड्यूल बनाया है जो UILabelलोड हो रहा है। मैंने इसे अपाचे लाइसेंस के तहत ओपनसोर्स जारी किया और इसे गीथब हियर पर डाल दिया

महत्वपूर्ण फ़ाइलें हैं FontLabel.hऔर FontLabel.m

यह जेनेरिक के जवाब से कुछ कोड का उपयोग करता है ।

यहाँ स्रोत ब्राउज़ करें

या

  • संसाधनों में अपनी फ़ॉन्ट फ़ाइल की प्रतिलिपि बनाएँ

  • Info.plistUIAppFonts नामक आपकी फ़ाइल में एक कुंजी जोड़ें । ("आवेदन द्वारा प्रदान की गई फ़ॉन्ट्स)

  • इस कुंजी को एक सरणी बनाएं

  • आपके पास प्रत्येक फ़ॉन्ट के लिए, UIAppFonts सरणी में आइटम के रूप में अपनी फ़ॉन्ट फ़ाइल (एक्सटेंशन सहित) का पूरा नाम दर्ज करें

  • सहेजें Info.plist

  • अब अपने आवेदन में आप बस [UIFont fontWithName:@"CustomFontName" size:15]अपने UILabelsऔर UITextViews, आदि के साथ उपयोग करने के लिए कस्टम फ़ॉन्ट प्राप्त करने के लिए कॉल कर सकते हैं ...

अधिक जानकारी के लिए


2
मैंने आपके कोड का उपयोग करने की कोशिश की है, लेकिन यह अक्सर फ़ॉन्ट के आधार पर क्रैश हो जाता है। उदाहरण के लिए, यहां से अफ्रीकी या टिकी फोंट का उपयोग करके देखें fontspace.com/category/tiki
स्पेस

2
यह लाइब्रेरी बेहतरीन काम करती है। हालांकि मुझे ऊर्ध्वाधर रिक्ति की मदद चाहिए। यह कैसे करना है पता नहीं कर सकते। तो मेरे पास यह संदेश है। numberOfLines = 3; मैं लाइन 1 और लाइन 2 और लाइन 3 के बीच ऊर्ध्वाधर रिक्ति को कैसे नियंत्रित करूं? धन्यवाद, टी
9

2
@commanda नमस्कार, आपके लिंक में आपके द्वारा दिया गया लिंक अनुपलब्ध है।
पार्थ भट्ट

5
@ParthBhatt आपको FontLabel के बजाय stackoverflow.com/a/2616101/21447 में दिए गए समाधान का उपयोग करना चाहिए , क्योंकि यह कार्यक्षमता अब CocoaTouch द्वारा प्रदान की गई है।
कमंडा २

2
@ParBBhatt: मुझे नहीं पता कि रेपो अब जिंगा में होस्ट क्यों नहीं किया गया है, लेकिन यह github.com/kballard/fontlabel
लिली

116

IOS 4 में कस्टम फोंट का उपयोग करने का एक सरल तरीका है ।

  1. XCode में प्रोजेक्ट के संसाधन फ़ोल्डर में अपनी फ़ॉन्ट फ़ाइल (उदाहरण के लिए Chalkduster.ttf) जोड़ें ।
  2. info.plistएक नई कुंजी खोलें और खोलें UIAppFonts। इस कुंजी का प्रकार सरणी होना चाहिए।
  3. एक्सटेंशन ( Chalkduster.ttf) सहित इस सरणी में अपना कस्टम फ़ॉन्ट नाम जोड़ें ।
  4. अब आप [UIFont fontWithName:@"Chalkduster" size:16]अपने आवेदन में उपयोग कर सकते हैं ।

दुर्भाग्य से, आईबी कस्टम फोंट के साथ लेबल को इनिशियलाइज़ करने की अनुमति नहीं देता है। इस समस्या को हल करने के लिए यह प्रश्न देखें । मेरा पसंदीदा समाधान कस्टम UILabelउपवर्ग का उपयोग करना है :

@implementation CustomFontLabel

- (id)initWithCoder:(NSCoder *)decoder
{
    if (self = [super initWithCoder: decoder])
    {
        [self setFont: [UIFont fontWithName: @"Chalkduster" size: self.font.pointSize]];
    }
    return self;
}

@end

3
ऐसा लगता है कि 3.2 का समर्थन किया जा रहा है, न कि सिर्फ 4.0+
जेसी रूसक

1
धन्यवाद! मुझे जो समस्या हो रही है वह यह है कि कस्टम फॉन्ट अपने बिल्ट-इन समकक्षों के मुकाबले थोड़े ऊंचे (नीचे का अतिरिक्त स्थान) तिरछा करते हैं। मैंने GitHub से FontLabel repo का उपयोग करने की कोशिश की है, जो कुछ समय में मदद करता है, लेकिन सभी समय पर नहीं।
जो डी'एंड्रिया

12
यह ध्यान देने योग्य है कि जो तार आप यूआईएफओएनटी कंस्ट्रक्टर के पास जाते हैं, वह फ़ाइल नाम माइनस नहीं है , यह फ़ॉन्ट के आंतरिक नाम का विस्तार है। मुझे एक फ़ाइल नाम के साथ एक फ़ॉन्ट लोड करने में समस्या थी जिसे मैंने छोटा कर दिया था। जब मैंने संपूर्ण फ़ॉन्ट नाम का उपयोग किया, तो फ़ाइल में लोड किया गया फ़ॉन्ट ठीक था।
स्लेटन

5
क्या कहा स्लेटन सिर्फ महत्वपूर्ण है। [UIFont fontWithName: फॉन्ट का "पूरा नाम" उम्मीद करता है, जो इसे फॉन्ट बुक में खोलने और चयन करने से दिखाई देता है: पूर्वावलोकन -> शो फॉन्ट जानकारी
इलेक्ट्रोमगगोट

51

Info.plist में प्रविष्टि "आवेदन द्वारा प्रदान किए गए फ़ॉन्ट" जोड़ें और स्ट्रिंग के रूप में फ़ॉन्ट नाम शामिल करें:

Fonts provided by application
           Item 0        myfontname.ttf
           Item 1        myfontname-bold.ttf
           ...

फिर यह सुनिश्चित करने के लिए जांचें कि आपका फ़ॉन्ट रनिंग में शामिल है:

for (NSString *familyName in [UIFont familyNames]) {
    for (NSString *fontName in [UIFont fontNamesForFamilyName:familyName]) {
         NSLog(@"%@", fontName);
    }
}

ध्यान दें कि आपका ttf फ़ाइल नाम वही नाम नहीं हो सकता है जिसका उपयोग आप अपने लेबल के लिए फ़ॉन्ट सेट करते समय करते हैं (आप "fontWithName" पैरामीटर प्राप्त करने के लिए ऊपर दिए गए कोड का उपयोग कर सकते हैं):

[label setFont:[UIFont fontWithName:@"MyFontName-Regular" size:18]];

36

संपादित करें: यह उत्तर iOS3.2 के रूप में दोषपूर्ण है; UIAppFonts का उपयोग करें

कस्टम UIFontग्राफिक्स सफलतापूर्वक लोड करने में सक्षम होने का एकमात्र तरीका प्राइवेट ग्राफिक्स सर्विस फ्रेमवर्क है।

निम्नलिखित .ttfआवेदन के मुख्य बंडल में सभी फोंट लोड करेगा :

BOOL GSFontAddFromFile(const char * path);
NSUInteger loadFonts()
{
    NSUInteger newFontCount = 0;
    for (NSString *fontFile in [[NSBundle mainBundle] pathsForResourcesOfType:@"ttf" inDirectory:nil])
        newFontCount += GSFontAddFromFile([fontFile UTF8String]);
    return newFontCount;
}

एक बार फोंट लोड होने के बाद, उन्हें Apple द्वारा प्रदान किए गए फोंट की तरह ही इस्तेमाल किया जा सकता है:

NSLog(@"Available Font Families: %@", [UIFont familyNames]);
[label setFont:[UIFont fontWithName:@"Consolas" size:20.0f]];

यदि भविष्य में एपीआई गायब हो जाता है, तो ग्राफिक्स सर्वर को रनटाइम पर भी लोड किया जा सकता है:

#import <dlfcn.h>
NSUInteger loadFonts()
{
    NSUInteger newFontCount = 0;
    NSBundle *frameworkBundle = [NSBundle bundleWithIdentifier:@"com.apple.GraphicsServices"];
    const char *frameworkPath = [[frameworkBundle executablePath] UTF8String];
    if (frameworkPath) {
        void *graphicsServices = dlopen(frameworkPath, RTLD_NOLOAD | RTLD_LAZY);
        if (graphicsServices) {
            BOOL (*GSFontAddFromFile)(const char *) = dlsym(graphicsServices, "GSFontAddFromFile");
            if (GSFontAddFromFile)
                for (NSString *fontFile in [[NSBundle mainBundle] pathsForResourcesOfType:@"ttf" inDirectory:nil])
                    newFontCount += GSFontAddFromFile([fontFile UTF8String]);
        }
    }
    return newFontCount;
}

सोच रहे लोगों पर ध्यान दें, यह काम करता है, लेकिन आपको फॉन्ट का उपयोग करने से पहले लोडफोंट को कॉल करना होगा - वे पूरे आवेदन में लोड नहीं रहना चाहते हैं
पिक्सेल

ओएस 3.0 में आपको निश्चित रूप से दूसरे दूसरे उदाहरण का उपयोग करने की आवश्यकता है, आयात को मत भूलना। मेरे लिए बहुत अच्छा काम किया।
एम। रयान

एक और नोट - यह एक निजी ढांचा है, और गतिशील रूप से इसे लोड करता है ... दोनों संभवतया आपके ऐप की स्वीकृति को AppStore में रोक देंगे।
पिक्सेल

निष्कर्ष क्या है? इस पद्धति का क्या विकल्प है?
राज पवन गुमडाल

1
SHould यह भी ध्यान दें कि [NSString sizeWithFont:[UIFont fontWithName:@"customFont" size:14]];मैंने जो भी कस्टम फोंट की कोशिश की है, उसके लिए 0 चौड़ाई और ऊंचाई देता है।
ल्यूक मैकेनीस

34

साथ iOS 8+ और Xcode 6+ आप यह आसानी से कर सकते हैं। यहाँ कदम हैं:

1) अपने फ़ॉन्ट को Xcodeसहायक फ़ाइल फ़ोल्डर में खींचें और छोड़ें । लक्ष्य सेक्शन में जोड़ें पर अपना ऐप चिह्नित करना न भूलें । इस क्षण से आप इस फ़ॉन्ट का उपयोग कर सकते हैं IBऔर इसे फ़ॉन्ट फूस से चुन सकते हैं ।

यहां छवि विवरण दर्ज करें

2) इस फ़ॉन्ट को अपने डिवाइस में उपलब्ध कराने के लिए, अपनी कुंजी को खोलें info.plistऔर Fonts provided by applicationकुंजी जोड़ें । इसमें आइटम 0 कुंजी होगी, आपको अपना फ़ॉन्ट नाम मान के रूप में जोड़ना होगा। फ़ॉन्ट नाम आपके फ़ॉन्ट फ़ाइल नाम से भिन्न हो सकता है। लेकिन सबसे पहले, इस काम में ज्यादातर मामलों में अपना नाम जोड़ने की कोशिश करें।

यहां छवि विवरण दर्ज करें

यदि नहीं, तो इस लेख ने मुझे हमेशा मदद की।

यहाँ इस लेख से कोड का तेज स्निपेट है जिससे आपको अपना फ़ॉन्ट नाम मिल सके।

func allFonts(){

   for family in UIFont.familyNames(){

       println(family)


       for name in UIFont.fontNamesForFamilyName(family.description)
       {
           println("  \(name)")
       }

   }

}

संपादित करें

मैं यह उल्लेख करना चाहता हूं, कि आपको अपने पास फ़ॉन्ट फाइलें जोड़ने की आवश्यकता है लक्ष्य के बिल्ड चरणों , कॉपी बंडल संसाधनों में । इसके बिना, आपको डिवाइस पर अपना फ़ॉन्ट दिखाई नहीं देगा। और यह अप्रत्याशित व्यवहार को जन्म दे सकता है।

उदाहरण के लिए, मेरे पास कस्टम फ़ॉन्ट bugहोने UITextFieldपर एक मुठभेड़ है , लेकिन यह फ़ॉन्ट कॉपी बंडल संसाधनों में नहीं था । और जब मैं इसके viewcontrollerसाथ बहस करता हूं textfield, तो viewDidLoadफ़ंक्शन को कॉल करने से पहले लगभग 4 सेकंड की देरी होती है । फ़ॉन्ट समस्याओं के समाधान ने इस देरी को दूर कर दिया। इसलिए, इसे दो बार जांचने की सलाह दें। (rdar: // 20028250) Btw, मैं बग को पुन: पेश करने में सक्षम नहीं था, लेकिन मुझे यकीन है कि समस्या फ़ॉन्ट के साथ थी।


1
सिर्फ एक नोट। कस्टम फ़ॉन्ट लॉन्चस्क्रीन्स में उपलब्ध नहीं हैं, भले ही आईबी में ठीक से कॉन्फ़िगर किया गया हो। जो तर्क हो सकता है।
रिवेरा

@ रवेरा वाह, शानदार नोट! नहीं पता था कि संभव विकल्प UIImage का उपयोग पाठ के साथ करने के बजाय, मुझे लगता है।
दीमा डेपलोव

@ रिवेरा, उस जानकारी के लिए धन्यवाद- क्या यह कहीं भी प्रलेखित है? मैं बार-बार यह सोचता हुआ कदम बढ़ाता जा रहा था कि एक कदम छूट गया।
स्पॉन्जेसक

@spongessuck आपके प्रश्न के बारे में निश्चित नहीं है, लेकिन कुछ डॉक्स डेवलपर हैं
।apple.com/library/ios/documentation/StringsTextFonts/…

27

मैंने इस तरह किया है:

फ़ॉन्ट लोड करें:

- (void)loadFont{
  // Get the path to our custom font and create a data provider.
  NSString *fontPath = [[NSBundle mainBundle] pathForResource:@"mycustomfont" ofType:@"ttf"]; 
  CGDataProviderRef fontDataProvider = CGDataProviderCreateWithFilename([fontPath UTF8String]);

  // Create the font with the data provider, then release the data provider.
  customFont = CGFontCreateWithDataProvider(fontDataProvider);
  CGDataProviderRelease(fontDataProvider); 
}

अब, अपने में drawRect:, कुछ इस तरह से करें:

-(void)drawRect:(CGRect)rect{
    [super drawRect:rect];
    // Get the context.
    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextClearRect(context, rect);
    // Set the customFont to be the font used to draw.
    CGContextSetFont(context, customFont);

    // Set how the context draws the font, what color, how big.
    CGContextSetTextDrawingMode(context, kCGTextFillStroke);
    CGContextSetFillColorWithColor(context, self.fontColor.CGColor);
    UIColor * strokeColor = [UIColor blackColor];
    CGContextSetStrokeColorWithColor(context, strokeColor.CGColor);
    CGContextSetFontSize(context, 48.0f);

    // Create an array of Glyph's the size of text that will be drawn.
    CGGlyph textToPrint[[self.theText length]];

    // Loop through the entire length of the text.
    for (int i = 0; i < [self.theText length]; ++i) {
        // Store each letter in a Glyph and subtract the MagicNumber to get appropriate value.
        textToPrint[i] = [[self.theText uppercaseString] characterAtIndex:i] + 3 - 32;
    }
    CGAffineTransform textTransform = CGAffineTransformMake(1.0, 0.0, 0.0, -1.0, 0.0, 0.0);
    CGContextSetTextMatrix(context, textTransform);
    CGContextShowGlyphsAtPoint(context, 20, 50, textToPrint, [self.theText length]);
}

मूल रूप से आपको टेक्स्ट के माध्यम से कुछ ब्रूट फोर्स लूपिंग करनी होती है और फॉन्ट को खोजने के लिए मैजिक नंबर के बारे में फ्यूजन करना होता है (यहां, मुझे 29 का उपयोग करके देखें), लेकिन यह काम करता है।

इसके अलावा, आपको यह सुनिश्चित करना होगा कि फ़ॉन्ट कानूनी रूप से एम्बेड करने योग्य है। अधिकांश नहीं हैं और ऐसे वकील हैं जो इस तरह के विशेषज्ञ हैं, इसलिए चेतावनी दी जाए।


1
मुझे यकीन है कि यह अच्छी तरह से काम करता है, लेकिन मैं (वास्तव में वास्तव में) UILabel और UITextView वर्तमान में मेरे लिए क्या करूं - विशेष रूप से वर्ड रैपिंग, पोजिशनिंग और संपादन के लिए सब कुछ संभालने के लिए अपना खुद का लेआउट इंजन लिखना नहीं चाहता।
एयरसोर्स लिमिटेड

1
AFAICS, यह केवल अपरकेस अक्षरों के साथ काम करता है, इसलिए 'अपरकेस' कॉल करता है।
मार्टिन कोट

2
"मैजिक नंबर" ट्रिक एक शुद्ध हैक है जो वास्तव में काम नहीं करता है, क्योंकि मैं डाउनवोट कर रहा हूं। वास्तविक समाधान टीटीएफ फ़ाइल से सीमैप तालिका प्राप्त करना है।
मार्टिन कोट

1
यह कोर ग्राफिक्स के साथ सीधे फोंट का उपयोग करने पर जानकारी का एक साफ टुकड़ा है। भविष्य के पाठकों के लिए बस अद्यतन करने के लिए: नए ओएस में, कोई कोर पाठ का उपयोग कर सकता है और करना चाहिए। वैकल्पिक रूप से, कोई भी उपयोग कर सकता है CGContextShowTextAtPoint()- हालांकि यह UTF-8 के साथ काम नहीं करता है।
इवान वूइका

20

हां, आप कस्टम फोंट शामिल कर सकते हैं। UIFont, विशेष रूप से, fontWithName:size:विधि पर प्रलेखन का संदर्भ लें ।

1) सुनिश्चित करें कि आप अपने संसाधन फ़ोल्डर में फ़ॉन्ट शामिल करें।

2) फ़ॉन्ट का "नाम" आवश्यक रूप से फ़ाइल नाम नहीं है।

3) सुनिश्चित करें कि आपके पास उस फ़ॉन्ट का उपयोग करने का कानूनी अधिकार है। इसे अपने ऐप में शामिल करके, आप इसे वितरित भी कर रहे हैं, और आपको ऐसा करने का अधिकार होना चाहिए।


क्या आपने वास्तव में यह सफल किया है? मैं इसे काम नहीं कर सकता, और गुगली केवल अन्य लोगों को पाता है जिन्होंने इसे आज़माया और असफल रहे।
Airsource Ltd

हाँ। मेरे पास है। फिर से, सुनिश्चित करें कि आप उचित फ़ॉन्ट नाम का उपयोग कर रहे हैं।
अगस्त

1
जब आप कहते हैं कि "फॉन्ट का" नाम "जरूरी नहीं कि फाइलनेम" ... सही नाम कैसे पता करें?
कीथ फिजराल्ड़

7
हाँ, यह उत्तर गलत है। आप इसे बॉक्स से बाहर नहीं कर सकते।
जोनाथन स्टर्लिंग

iOS 9 अपडेट, UIFont डॉक्स ने कस्टम फोंट के बारे में कुछ भी उल्लेख नहीं किया है
Cbas

20

आप उपयोग कर रहे हैं xcode 4.3, तो आप जोड़ने के लिए fontकरने के लिए Build Phaseनीचे Copy Bundle Resourcesके अनुसार, https://stackoverflow.com/users/1292829/arne धागा, में कस्टम फ़ॉन्ट्स Xcode 4.3 । यह मेरे लिए काम आया, यहाँ मैंने अपने ऐप में काम करने के लिए कस्टम फोंट के लिए कदम उठाए हैं:

  1. अपने प्रोजेक्ट में फ़ॉन्ट जोड़ें। मैंने अपने द्वारा बनाए गए नए समूह में OTF(या TTF) फ़ाइलों को खींचा और गिरा दिया और xcode की पसंद को स्वीकार कर लिया copying the files over to the project folder
  2. UIAppFontsसरणी के भीतर आइटम के रूप में सूचीबद्ध अपने फोंट के साथ सरणी बनाएं । बस names, विस्तार नहीं (उदाहरण के लिए " GothamBold", " GothamBold-Italic")।
  3. स्क्रीन के बाईं ओर project nameसबसे ऊपर वाले रास्ते पर क्लिक करें Project Navigator
  4. Build PhasesXcode के मुख्य क्षेत्र में दिखाई देने वाले टैब पर क्लिक करें ।
  5. " Copy Bundle Resources" अनुभाग का विस्तार करें और "+"फ़ॉन्ट जोड़ने के लिए क्लिक करें ।
  6. जब आप क्लिक करते हैं तो खुलने वाली फ़ाइल नेविगेटर से फ़ॉन्ट फ़ाइल का चयन करें "+"
  7. यह हर उस फ़ॉन्ट के लिए करें जो आपको करना है add to the project

12

यहाँ कदम से कदम निर्देश है कि यह कैसे करना है। अतिरिक्त पुस्तकालय या किसी विशेष कोडिंग की आवश्यकता नहीं है।

http://shang-liang.com/blog/custom-fonts-in-ios4/

अधिकांश समय समस्या फॉन्ट के साथ होती है विधि नहीं। इसे करने का सबसे अच्छा तरीका एक फ़ॉन्ट का उपयोग करना है जो निश्चित रूप से काम करेगा, जैसे कि वर्दाना या जोगिया। फिर इच्छित फ़ॉन्ट में बदलें। यदि यह काम नहीं करता है, तो शायद फ़ॉन्ट नाम सही नहीं है, या फ़ॉन्ट एक अच्छी तरह से तैयार किया गया फ़ॉन्ट नहीं है।


12

अपने मौजूदा iOS ऐप पर एक नया फ़ॉन्ट जोड़ना बहुत आसान है।

आपको बस अपने संसाधन फ़ोल्डर में फ़ॉन्ट जैसे font.ttf जोड़ना होगा।

अपना आवेदन खोलें info.plist। "एप्लिकेशन द्वारा प्रदान किए गए फ़ॉन्ट" के रूप में एक नई पंक्ति जोड़ें और फ़ॉन्ट का नाम font.ttf लिखें।

और फॉण्ट सेट करते समय के रूप में करते हैं setFont:"corresponding Font Name"

आप जांच सकते हैं कि आपका फ़ॉन्ट जोड़ा गया है या नहीं NSArray *check = [UIFont familyNames];

यह आपके आवेदन के समर्थन के सभी फ़ॉन्ट देता है।


11

मैं अपने पसंदीदा शॉर्ट ट्यूटोरियल्स में से एक का अनुसरण करने की सलाह दूंगा: http://codewithchris.com/common-mistakes-with-adding-custom-fonts-to-your-ios-app/ जहां से यह जानकारी आती है।

चरण 1 - अपने प्रोजेक्ट में अपने .ttf या .otf को फाइंडर से खींचें

नोट - अपने मुख्य एप्लिकेशन लक्ष्य पर 'लक्ष्यों में जोड़ें' बॉक्स पर क्लिक करना सुनिश्चित करें

फ़ॉन्ट फ़ाइलों को अपनी परियोजना में खींचें और उन्हें अपने लक्ष्य में जोड़ने के लिए क्लिक करें

यदि आप इसे अपने लक्ष्य में जोड़ने के लिए क्लिक करना भूल गए हैं, तो अपनी परियोजना पदानुक्रम में फ़ॉन्ट फ़ाइल पर क्लिक करें और दाईं ओर पैनल मुख्य एप्लिकेशन लक्ष्य पर क्लिक करें लक्ष्य सदस्यता अनुभाग

अगर आप भूल गए तो ऐप टारगेट में फोंट कैसे जोड़ें

यह सुनिश्चित करने के लिए कि आपके फॉन्ट आपके ऐप टारगेट का हिस्सा हैं, सुनिश्चित करें कि वे आपके कॉपी बंडल रिसोर्स में दिखाई दें बिल्ड चरणों

यह देखने के लिए कि फॉन्ट्स ऐप लक्ष्य का हिस्सा हैं या नहीं, संसाधनों की जांच कैसे करें

चरण 2 - फ़ॉन्ट फ़ाइल नामों को अपने Plist में जोड़ें

पर जाएं कस्टम आईओएस लक्ष्य गुण में अपनी जानकारी अनुभाग और उस अनुभाग में आइटमों के लिए एक कुंजी जोड़ें Fonts provided by application(आपको यह देखना चाहिए कि आप इसे टाइप करते समय एक विकल्प के रूप में सामने आ सकते हैं और यह खुद को एक सरणी के रूप में सेट करेगा। थोड़ा तीर क्लिक करें। सरणी आइटम्स को खोलने के लिए .ttf या .otf फ़ाइलों के नाम टाइप करें, जिन्हें आपने अपने ऐप में जोड़ा है, यह जानने के लिए कि ये वो फॉन्ट फाइलें हैं जो आप उपलब्ध हैं।

नोट - यदि आपका ऐप इस चरण के ठीक बाद क्रैश हो जाता है, तो अपने द्वारा जोड़े गए आइटम पर अपनी वर्तनी जांचें

कस्टम फोंट के साथ उदाहरण plist जोड़ा गया

चरण 3 - अपने फोंट के नाम पता करें ताकि आप उन्हें कॉल कर सकें

अक्सर आपके एप्लिकेशन द्वारा देखा जाने वाला फ़ॉन्ट नाम आपके द्वारा उस फ़ॉन्ट के फ़ाइल नाम के आधार पर अलग-अलग है, इसे अपने कोड में डालें और लॉग पर अपना एप्लिकेशन देखें, यह देखने के लिए कि आपके कोड में किस फ़ॉन्ट का नाम है

तीव्र

for family: String in UIFont.familyNames(){
  print("\(family)")
  for names: String in UIFont.fontNamesForFamilyName(family){
      print("== \(names)")
  }
}

उद्देश्य सी

for (NSString* family in [UIFont familyNames]){
    NSLog(@"%@", family);
    for (NSString* name in [UIFont fontNamesForFamilyName: family]){
        NSLog(@"  %@", name);
    }
}

आपका लॉग कुछ इस तरह दिखना चाहिए:

फ़ॉन्ट नामों को खोजने के लिए खोज लॉग का उदाहरण

चरण 4 - चरण 3 से नाम का उपयोग करके अपने नए कस्टम फ़ॉन्ट का उपयोग करें

तीव्र

 label.font = UIFont(name: "SourceSansPro-Regular", size: 18)

उद्देश्य सी

 label.font = [UIFont fontWithName:@"SourceSansPro-Regular" size:18];

10

टीटीएफ को खोजक और "जानकारी प्राप्त करें" में खोजें। शीर्षक "पूर्ण नाम:" के तहत, यह मुझे एक नाम देता था, जिसे मैं तब उपयोग करता था fontWithName(मैं सिर्फ नकल करता था और सटीक नाम चिपकाता था, इस मामले में कोई '.ttf' एक्सटेंशन आवश्यक नहीं था)।


8

यह अभी तक बाहर नहीं है, लेकिन cocos2d (2d गेम फ्रेमवर्क) के अगले संस्करण में चरित्र के नक्शे के रूप में चर लंबाई बिटमैप फोंट का समर्थन किया जाएगा।

http://code.google.com/p/cocos2d-iphone/issues/detail?id=317

लेखक के पास इस संस्करण के लिए रिलीज़ की गई कोई दिनांक नहीं है, लेकिन मैंने एक पोस्टिंग देखी जो यह संकेत देती थी कि यह अगले महीने या दो में होगी।


8

एक महत्वपूर्ण सूचना: आपको फ़ॉन्ट से संबद्ध "पोस्टस्क्रिप्ट नाम" का उपयोग करना चाहिए, न कि उसका पूरा नाम या परिवार का नाम। यह नाम अक्सर फ़ॉन्ट के सामान्य नाम से अलग हो सकता है।


7

इस कदम का पालन करें

1) अपने प्रोजेक्ट में अपने फॉन्ट को कॉपी करें

2) .plistसोर्स कोड मोड में अपनी फ़ाइल खोलें ... (नोट- ओपन न करें info.plist)

3) इससे पहले - अपने फ़ॉन्ट पर राइट क्लिक करें और इसे फॉन्टफोर्ज या समान संपादक में खोलें और installआपके सिस्टम में, यह होना चाहिएinstall

4) इसे टाइप करें

 <key>UIAppFonts</key>
<array>
    <string>MyriadPro.otf</string>
</array>

5) इस कोड को अपने में टाइप करें class .m

 [lblPoints setFont:[UIFont fontWithName:@"Myriad Pro" size:15.0]];

यहाँ lblPoints आपके अनुसार बदल जाएंगे UILabel

किया हुआ!! यदि फिर भी आपका फॉन्ट काम नहीं करता है, तो पहले अपने फॉन्ट की अनुकूलता की जांच करें


1
क्यों नहीं खुला info.plist?
रैप्टर

5 वें बिंदु में माइयर्ड और प्रो के बीच का स्थान क्यों है जब बिंदु 4 में प्लिस्ट में कोई नहीं है?
जयंत रावत

@jayantrawat इसका फ़ॉन्ट नाम जिसे सिस्टम में दिखाया जाता है उसके बाद हम फ़ॉन्ट को स्थापित करते हैं, और .plist फ़ॉन्ट फ़ाइल [.ttl या otf] का नाम है
कीर्तिकुमार ए।

@KirtikumarA। हाँ मिल गया .. ऐप में सफलतापूर्वक लागू किया गया ..
जयंत

@ संजयव्रत अगर मेरा समाधान मदद करता है तो आपसे अनुरोध है कि आप उत्तर पर प्रतिक्रिया दें ताकि अन्य उपयोगकर्ता भी उसी तरह से मदद ले सकें
कीर्तिकुमार ए

6

शायद लेखक फॉन्ट को मैक फोंड नाम देना भूल गया ?

  1. FontForge में फ़ॉन्ट खोलें फिर तत्व> फ़ॉन्ट जानकारी पर जाएं
  2. एक "मैक" विकल्प है जहां आप फोंड नाम सेट कर सकते हैं।
  3. फ़ाइल> निर्यात फ़ॉन्ट के तहत आप एक नया ttf बना सकते हैं

आप निर्यात संवाद में "Apple" विकल्प भी आजमा सकते हैं।

अस्वीकरण : मैं एक IPhone डेवलपर नहीं हूँ!


6

मैं इस पृष्ठ पर iOS 3.1.2 पर विभिन्न सुझावों की कोशिश कर रहा हूं और ये मेरे निष्कर्ष हैं:

केवल [UIFont fontWithName:size:]संसाधन निर्देशिका में फोंट के साथ उपयोग करने से काम नहीं चलेगा, भले ही फोंड नाम को FontForge का उपयोग करके सेट किया गया हो।

[UIFont fontWithName:size:]यदि फोंट को पहले GSFontAddFromFile का उपयोग करके लोड किया जाता है तो काम करेगा। लेकिन GSFontAddFromFileiOS 3.1.2 का हिस्सा नहीं है, इसलिए इसे @rpetrich द्वारा वर्णित के रूप में गतिशील रूप से लोड किया जाना है।


5

देखो ATSApplicationFontsPath

एक सरल प्लिस्ट प्रविष्टि जो आपको अपने एप्लिकेशन संसाधन फ़ोल्डर में फ़ॉन्ट फ़ाइल (ओं) को शामिल करने की अनुमति देती है और वे आपके ऐप में "बस काम" करते हैं।


क्या आपने डिवाइस पर इसकी कोशिश की है? मेरे पास कोई खुशी नहीं थी, और गुगली से पता चलता है कि iPhone पर यह प्लिस्ट प्रविष्टि समर्थित नहीं है, भले ही यह iPhone OS के लिए प्रलेखित है।
Airourceource Ltd

1
क्षमा करें, मैं इस समय केवल OS X ऐप में उपयोग कर रहा हूं।
मैट सेफ़टन

5

मैंने इस पेज की कुछ सलाह को कुछ इस तरह से जोड़ा है जो मेरे लिए iOS 5 पर काम करता है।

सबसे पहले, आपको अपनी परियोजना में कस्टम फ़ॉन्ट जोड़ना होगा। उसके बाद, आपको @iPhoneDev की सलाह का पालन करना होगा और अपनी जानकारी के लिए फ़ॉन्ट जोड़ना होगा। फाइल फ़ाइल।

आपके ऐसा करने के बाद, यह काम करता है:

UIFont *yourCustomFont = [UIFont fontWithName:@"YOUR-CUSTOM-FONT-POSTSCRIPT-NAME" size:14.0];
[yourUILabel setFont:yourCustomFont];

हालाँकि, आपको अपने फ़ॉन्ट के पोस्टस्क्रिप्ट नाम को जानना होगा। फॉन्टबुक में रहने के दौरान बस @ डैनियल वुड की सलाह का पालन करें और कमांड-आई दबाएं।

फिर, अपने कस्टम फ़ॉन्ट का आनंद लें।


5

पहले अपने संसाधनों में .odt प्रारूप में फ़ॉन्ट जोड़ें, इस मामले में हम DINEngschriftStd.otf का उपयोग करेंगे, फिर लेबल को फ़ॉन्ट असाइन करने के लिए इस कोड का उपयोग करें

[theUILabel setFont:[UIFont fontWithName:@"DINEngschriftStd" size:21]];

यह सुनिश्चित करने के लिए कि आपका फ़ॉन्ट प्रोजेक्ट पर लोड है, बस कॉल करें

NSLog(@"Available Font Families: %@", [UIFont familyNames]);

.Plist पर आपको फॉन्ट घोषित करना होगा। बस 'एप्लिकेशन द्वारा प्रदान किए गए फॉन्ट' रिकॉर्ड जोड़ें और फ़ॉन्ट के नाम के साथ एक आइटम 0 स्ट्रिंग जोड़ें (DINEngschriftStd.otf)


5

IOS 3.2 और इसके बाद के संस्करण के लिए: ऊपर दिए गए कई तरीकों का उपयोग करें, जो हैं:

  1. अपनी फ़ॉन्ट फ़ाइल जोड़ें (उदाहरण के लिए, Chalkduster.ttfXCode में प्रोजेक्ट के संसाधन फ़ोल्डर में ) ।
  2. Open.plist और UIAppFonts नामक एक नई कुंजी जोड़ें। इस कुंजी का प्रकार सरणी होना चाहिए।
  3. एक्सटेंशन (" Chalkduster.ttf ") सहित इस सरणी में अपना कस्टम फ़ॉन्ट नाम जोड़ें ।
  4. [UIFont fontWithName:@"Real Font Name" size:16]अपने आवेदन में उपयोग करें ।

लेकिन "रियल फॉन्ट नेम" हमेशा वह नहीं होता जिसे आप फॉन्टबुक में देखते हैं। सबसे अच्छा तरीका है कि आप अपने डिवाइस से पूछें कि यह कौन सा फोंट देखता है और सटीक नाम क्या हैं।

मैं uifont नाम करने की कुंजी का उपयोग पर तैनात: uifont नाम करने की कुंजी

बस अपने इच्छित फॉन्ट को xcode प्रोजेक्ट में ड्रॉप करें, फ़ाइल का नाम उसके प्लिस्ट में जोड़ें, और जिस डिवाइस के लिए आप निर्माण कर रहे हैं, उस पर उसे चलाएं, यह आपको उन नामों का उपयोग करके एक पूर्ण फ़ॉन्ट सूची ईमेल करेगा जो UIFont fontWithName:अपेक्षा करता है।


5

बेहतर उपाय यह है Fonts provided by applicationकि अपनी info.plistफाइल में एक नई प्रॉपर्टी जोड़ें ।

फिर, आप सामान्य की तरह अपने कस्टम फ़ॉन्ट का उपयोग कर सकते हैं UIFont


3

IOS 4.1 से शुरू होने वाले कस्टम फोंट का उपयोग करने का एक नया तरीका है। यह आपको फोंट को गतिशील रूप से लोड करने की अनुमति देता है, जैसे कि वे एप्लिकेशन, डाउनलोड किए गए डेटा, या आपके पास क्या शामिल हैं। यह आपको आवश्यकतानुसार फोंट लोड करने की सुविधा भी देता है, जबकि पुरानी विधि उन सभी को ऐप स्टार्टअप समय पर लोड करती है, जो कि कई फोंट होने पर आपको बहुत लंबा लग सकता है।

नई विधि ios- डायनामिक-फॉन्ट-लोडिंग में वर्णित है

आप CTFontManagerRegisterGraphicsFontफ़ंक्शन का उपयोग करते हैं, इसे अपने फ़ॉन्ट डेटा के साथ एक बफर देते हैं। यह तब UIFontऔर वेब दृश्य के लिए उपलब्ध है , जैसे पुरानी पद्धति से। उस लिंक से नमूना कोड यहां दिया गया है:

NSData *inData = /* your font-file data */;
CFErrorRef error;
CGDataProviderRef provider = CGDataProviderCreateWithCFData((CFDataRef)inData);
CGFontRef font = CGFontCreateWithDataProvider(provider);
if (! CTFontManagerRegisterGraphicsFont(font, &error)) {
    CFStringRef errorDescription = CFErrorCopyDescription(error)
    NSLog(@"Failed to load font: %@", errorDescription);
    CFRelease(errorDescription);
}
CFRelease(font);
CFRelease(provider);

मैंने इस कोड का उपयोग किया है, लेकिन फ़ॉन्ट को लोड करने में विफल & त्रुटि प्राप्त करें: ऑपरेशन पूरा नहीं किया जा सका। (com.apple.coretext त्रुटि 105 - CGFont को पंजीकृत नहीं कर सका '<CGFont (0x14fe7df0): श्रुति>')
हिरेन

दस्तावेज़ के अनुसार, त्रुटि 105 है kCTFontManagerErrorAlreadyRegistered, "फ़ाइल पहले ही निर्दिष्ट दायरे में पंजीकृत हो गई है।" developer.apple.com/library/ios/#documentation/Carbon/Reference/…
डेविड एम।

3

स्विफ्ट, कोड तरीका: (स्विफ्ट 2.0 के साथ भी काम करता है)

अपनी परियोजना में आवश्यक फ़ॉन्ट जोड़ें (जैसे चित्र जोड़ना, बस Xcode पर खींचें), सुनिश्चित करें कि वे आपकी परियोजना के
लिए लक्षित हैं इस पद्धति को जोड़ें और कस्टम फोंट (अनुशंसित में appDelegate didFinishLaunchingWithOptions) लोड करें

func loadFont(filePath: String) {

    let fontData = NSData(contentsOfFile: filePath)!

    let dataProvider = CGDataProviderCreateWithCFData(fontData)
    let cgFont = CGFontCreateWithDataProvider(dataProvider)!

    var error: Unmanaged<CFError>?
    if !CTFontManagerRegisterGraphicsFont(cgFont, &error) {
        let errorDescription: CFStringRef = CFErrorCopyDescription(error!.takeUnretainedValue())
        print("Unable to load font: %@", errorDescription, terminator: "")
    }

}

उदाहरण का उपयोग करें:

if let fontPath = NSBundle.mainBundle().pathForResource("My-Font", ofType: "ttf"){
      loadFont(fontPath)
}

फ़ॉन्ट का उपयोग करें:

UIFont(name: "My-Font", size: 16.5)

बस सोच रहा था, आप कैसे आएँगे बस अपने Info.plist में फ़ॉन्ट नहीं जोड़ेंगे ऐसा लगता है कि अनिवार्य रूप से एक ही काम के लिए बहुत अधिक काम है।
स्टीफन जेसी

2

आप संसाधन फ़ोल्डर में आवश्यक "फॉंट" फाइलें जोड़ सकते हैं। फिर प्रोजेक्ट Info.plistफ़ाइल पर जाएं और "एप्लिकेशन द्वारा प्रदान किए गए" फ़ॉन्ट्स और "फॉंट नेम" के रूप में मूल्य का उपयोग करें।

तब आप विधि कह सकते हैं [UIFont fontwithName:@"FONT NAME" size:12];


1

मैंने हर संभव कोशिश की लेकिन नए फोंट दिखाई नहीं दिए इसलिए मुझे इसका हल मिला:

जब आप फ़ॉट फ़ाइलों (ओटीएफ या टीटीएफ) को खींचते हैं, तो "लक्ष्य में जोड़ें" के तहत चेकबॉक्स की जांच करना न भूलें।

ऐसा करने के बाद आपका फ़ॉन्ट दिखाई देगा और सब कुछ ठीक चलेगा।


1

हालाँकि ऊपर दिए गए कुछ उत्तर सही हैं, फिर भी मैंने फॉन्ट वाले लोगों के लिए एक विस्तृत विज़ुअल ट्यूटोरियल लिखा है।

ऊपर दिए गए उपाय जो आपको फॉन्ट को जोड़ने और उपयोग करने के लिए कहते हैं

[self.labelOutlet setFont:[UIFont fontWithName:@"Sathu" size:10]];

सही हैं। कृपया अब किसी अन्य हैकिश तरीके का उपयोग करें। यदि आप अभी भी फ़ॉन्ट नाम खोजने और उन्हें जोड़ने के साथ समस्याओं का सामना कर रहे हैं, तो यहां ट्यूटोरियल है -

Ios एप्लिकेशन में कस्टम फोंट का उपयोग करना


मैंने बस यही कोशिश की। काम करने लगता है लेकिन मेरा फ़ॉन्ट छोटा है, इससे कोई फर्क नहीं पड़ता कि मैंने इसे किस आकार में सेट किया है। इसके लायक क्या है, मैं एक स्वतंत्र रूप से उपलब्ध ओटीएफ
ari

इसे किसी अन्य कस्टम फ़ॉन्ट के साथ आज़माएँ और यदि समस्या बनी रहती है, तो मुझे बताएं। यदि यह उस तरह से काम करता है, तो आपके फ़ॉन्ट के साथ समस्या है।
भारत गुलाटी

1

हाँ आप अपने एप्लिकेशन में कस्टम फ़ॉन्ट का उपयोग कर सकते हैं

वहाँ के बाद कदम से कदम:

सहायक फ़ाइलों में अपनी परियोजना में अपनी कस्टम फ़ॉन्ट फ़ाइलें जोड़ें

UIAppFonts नामक आपकी Info.plist फ़ाइल में एक कुंजी जोड़ें।

इस कुंजी को एक सरणी बनाएं

आपके पास प्रत्येक फ़ॉन्ट के लिए, अपनी फ़ॉन्ट फ़ाइल का पूरा नाम (एक्सटेंशन सहित) UIAppFonts सरणी में आइटम के रूप में दर्ज करें

Info.plist को सेव करें। अब अपने आवेदन में आप [UIFont fontWithName: @ "अपने कस्टम फ़ॉन्ट का नाम" आकार: 20] पर कॉल कर सकते हैं, कस्टम फ़ॉन्ट पाने के लिए अपने UILabels के साथ उपयोग करने के बाद इसे सही फ़ॉन्ट नहीं मिलने पर आप डबल क्लिक करें। कस्टम फ़ॉन्ट पर, और ध्यान से देखें कि शीर्ष साइड फ़ॉन्ट नाम आ रहा है और इस फ़ॉन्ट को कॉपी करें, पेस्ट करें, यहां [UIFont fontWithName: @ "यहां अपने कस्टम फ़ॉन्ट का नाम" आकार: 20 "लिखें

मुझे आशा है कि आपको सही उत्तर मिलेगा


1

हाँ आप अपने एप्लिकेशन में कस्टम फ़ॉन्ट का उपयोग कर सकते हैं

वहाँ के बाद कदम से कदम:

  • सहायक फ़ाइलों में अपनी परियोजना में अपनी कस्टम फ़ॉन्ट फ़ाइलें जोड़ें
  • अपने लिए एक कुंजी जोड़ें Info.plistUIAppFonts नामक फ़ाइल में ।
  • इस कुंजी को एक सरणी बनाएं
  • आपके पास प्रत्येक फ़ॉन्ट के लिए, अपनी फ़ॉन्ट फ़ाइल का पूरा नाम (एक्सटेंशन सहित) UIAppFonts सरणी में आइटम के रूप में दर्ज करें
  • Info.plist अपने एप्लिकेशन में अभी सेव करें आप [UIFont fontWithName:@"your Custom font Name" size:20]कस्टम फ़ॉन्ट को अपने साथ उपयोग करने के लिए कॉल कर सकते हैंUILabels

इसे लागू करने के बाद यदि आपका सही फ़ॉन्ट नहीं मिल रहा है तो आप कस्टम फ़ॉन्ट पर डबल क्लिक करें, और ध्यान से देखें शीर्ष साइड फ़ॉन्ट का नाम आ रहा है और इस फ़ॉन्ट को कॉपी करें, पेस्ट करें, यहाँ [UIFont fontWithName:@" here past your Custom font Name" size:20] मुझे आशा है कि आपको सही उत्तर मिलेगा

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.