On Feb 26, 2016, at 7:17 AM, Gerriet M. Denkmann <gerr...@mdenkmann.de> wrote:
> 
> On 26 Feb 2016, at 17:33, Ken Thomases <k...@codeweavers.com> wrote:
>> 
>> On Feb 26, 2016, at 4:16 AM, Gerriet M. Denkmann <gerr...@mdenkmann.de> 
>> wrote:
>>> 
>>> I have a file “Some Font.ttf” and I want to know the displayName of this 
>>> font, which might be “Some-Font” or “Nice Font” or anything else.
>>> Or nil if this is not a well-formatted font file.
>>> I do NOT want to install the font nor do anything with it.
>>> 
>>> Short of reverse-engeneering the ttf format (which probably would be rather 
>>> too much): is there a way to get this?
>>> 
>>> Ideally I would line to do:
>>> NSFont *font = [ NSFont fontFromFilePath: @“/path/to/Some Font.ttf” ];
>>> NSString *displayName = font.displayName;   //      font.fontName would 
>>> probably also do
>>> 
>>> but this seems not to exist.
>> 
>> You can use CTFontManagerCreateFontDescriptorsFromURL() and then, for each 
>> descriptor, CTFontDescriptorCopyAttribute() with kCTFontDisplayNameAttribute.
>> 
>> Keep in mind that you may get multiple descriptors because a font file may 
>> include multiple fonts.  Consequently, there may be multiple display names.
> 
> Thanks a lot. Works perfectly.
> But did not find any font file which contains more than one descriptor. Any 
> examples (for testing)?

Well, the very first thing I found in Font Book was the American Typewriter 
font family, which is in /Library/Fonts/AmericanTypewriter.ttc.  That's a 
TrueType font collection file, which contains various weights of the font.

There are also font suitcase files such as /System/Library/Fonts/Times.dfont.

Regards,
Ken


_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to