---
title: "CTFontManagerRegisterFontsWithAssetNames(_:_:_:_:_:)"
framework: coretext
role: symbol
role_heading: Function
path: "coretext/ctfontmanagerregisterfontswithassetnames(_:_:_:_:_:)"
---

# CTFontManagerRegisterFontsWithAssetNames(_:_:_:_:_:)

Registers named font assets in the specified bundle with the font manager.

## Declaration

```swift
func CTFontManagerRegisterFontsWithAssetNames(_ fontAssetNames: CFArray, _ bundle: CFBundle?, _ scope: CTFontManagerScope, _ enabled: Bool, _ registrationHandler: ((CFArray, Bool) -> Bool)?)
```

## Parameters

- `fontAssetNames`: An array of font name assets in the asset catalog.
- `bundle`: A bundle that contains the asset catalog. Passing NULL resolves to the main bundle.
- `scope`: A scope constant that defines the availability and lifetime of the registration. On iOS, the only supported scope is doc://com.apple.coretext/documentation/CoreText/CTFontManagerScope/persistent, which means the fonts aren’t automatically available to other processes. Other processes can call doc://com.apple.coretext/documentation/CoreText/CTFontManagerRequestFonts(_:_:) to get access to the fonts. See doc://com.apple.coretext/documentation/CoreText/CTFontManagerScope for more details.
- `enabled`: A Boolean value that indicates whether the font assets should be enabled for font descriptor matching and discoverable through doc://com.apple.coretext/documentation/CoreText/CTFontManagerRequestFonts(_:_:).
- `registrationHandler`: A block called as errors arise or upon completion. The block’s errors parameter contains an array of doc://com.apple.documentation/documentation/CoreFoundation/CFError references; an empty array indicates no errors. Each error reference contains a doc://com.apple.documentation/documentation/CoreFoundation/CFArray of font asset names corresponding to doc://com.apple.coretext/documentation/CoreText/kCTFontManagerErrorFontAssetNameKey. These represent the font asset names causing the error and failing to register successfully. This block may be called multiple times during the registration process. The done parameter becomes doc://com.apple.documentation/documentation/Swift/true when the registration process completes. Return doc://com.apple.documentation/documentation/Swift/false from the block to stop the registration operation, like after receiving an error.

## Discussion

Discussion Registered fonts are discoverable through font descriptor matching in the calling process. Calling this function extracts the font assets from the asset catalog and registers them. You must make this call after the completion handler of either beginAccessingResources(completionHandler:): or conditionallyBeginAccessingResources(completionHandler:) is called successfully. Name the assets using PostScript names for individual faces, or family names for variable or collection fonts. You can use the same names to unregister the fonts with CTFontManagerUnregisterFontDescriptors(_:_:_:).

## See Also

### Functions

- [CTFontDescriptorMatchFontDescriptorsWithProgressHandler(_:_:_:)](coretext/ctfontdescriptormatchfontdescriptorswithprogresshandler(_:_:_:).md)
- [CTFontManagerCompareFontFamilyNames(_:_:_:)](coretext/ctfontmanagercomparefontfamilynames(_:_:_:).md)
- [CTFontManagerCopyAvailableFontFamilyNames()](coretext/ctfontmanagercopyavailablefontfamilynames().md)
- [CTFontManagerCopyAvailableFontURLs()](coretext/ctfontmanagercopyavailablefonturls().md)
- [CTFontManagerCopyAvailablePostScriptNames()](coretext/ctfontmanagercopyavailablepostscriptnames().md)
- [CTFontManagerCreateFontDescriptorFromData(_:)](coretext/ctfontmanagercreatefontdescriptorfromdata(_:).md)
- [CTFontManagerCreateFontDescriptorsFromURL(_:)](coretext/ctfontmanagercreatefontdescriptorsfromurl(_:).md)
- [CTFontManagerCreateFontRequestRunLoopSource(_:_:)](coretext/ctfontmanagercreatefontrequestrunloopsource(_:_:).md)
- [CTFontManagerEnableFontDescriptors(_:_:)](coretext/ctfontmanagerenablefontdescriptors(_:_:).md)
- [CTFontManagerGetAutoActivationSetting(_:)](coretext/ctfontmanagergetautoactivationsetting(_:).md)
- [CTFontManagerGetScopeForURL(_:)](coretext/ctfontmanagergetscopeforurl(_:).md)
- [CTFontManagerIsSupportedFont(_:)](coretext/ctfontmanagerissupportedfont(_:).md)
- [CTFontManagerRegisterFontsForURL(_:_:_:)](coretext/ctfontmanagerregisterfontsforurl(_:_:_:).md)
- [CTFontManagerRegisterFontsForURLs(_:_:_:)](coretext/ctfontmanagerregisterfontsforurls(_:_:_:).md)
- [CTFontManagerRegisterGraphicsFont(_:_:)](coretext/ctfontmanagerregistergraphicsfont(_:_:).md)
