Як я можу отримати ім'я PostScript шрифту TTF, встановленого в OS X?


16

На моєму Mac встановлений шрифт TTF, який я додав до проекту розробки X-Code. Протягом життя я не можу змусити його працювати зі своїм додатком, але думаю, що це тому, що я використовую неправильну назву шрифту.

Як я можу отримати ім'я шрифту Postscript із метаданих шрифту за допомогою книги шрифтів чи будь-якого іншого інструменту?

У мене є думка, що це Postscript nameможе відрізнятися від Font name, але мені потрібно це перевірити.

Відповіді:


24

Відкрийте додаток Книга шрифтів . (Це має бути у вашій папці Програми .)

Виберіть шрифт, для якого вам потрібна назва Postscript.

Виберіть Показати інформацію про шрифт у меню попереднього перегляду . (Або використовуйте + i).

скріншот: інформація про шрифт шрифта


7

Ваше припущення правильне. iOS вимагає, щоб ви визначили шрифт на основі його імені Postscript (або Повного імені), який не завжди є таким, як власне Filename .

Ви можете отримати ім'я PostScript за допомогою FontBook (як показано на прийнятій відповіді тут), але є й інші способи.

Зсередини XCode ви можете отримати Ім'я PostScript з встановлених шрифтів проекту за допомогою UIFont. Просто запустіть це, щоб надрукувати імена PostScript встановлених шрифтів проекту:

В Objective-C ( джерело ):

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

Або Swift 3.0 ( джерело )

for familyName in UIFont.familyNames {
    for fontName in UIFont.fontNames(forFamilyName: familyName ) {
        print("\(familyName) : \(fontName)")
    }
}

Або з терміналу , всередині каталогу, де у вас є файли шрифтів, ви можете запустити цей скрипт, щоб надрукувати всі імена PostScript шрифтів усередині поточного каталогу (використовує fc-scanутиліту з fontconfig, яка вже встановлена ​​програма) ( джерело ):

for file in "$arg"*.{ttf,otf}; do fc-scan --format "%{postscriptname}\n" $file; done

Ось скріншот наведеної вище команди, що працює в моєму ~/Library/Fontsкаталозі:

введіть тут опис зображення

Сценарій, описаний вище, буде проходити через усі файли .ttfта .otfфайли в поточному каталозі, після чого роздруковуватиме ім'я PostScript для кожного шрифту, який ви можете використовувати для посилання на файл шрифту в XCode або деінде.

Якщо ви хочете поцікавитись додатковою інформацією (PostScriptName, ім'я файлу) та кольоровим кодуванням, можете запустити цей альтернативний сценарій:

for file in "$arg"*.{ttf,otf}; do 
    postscriptname=$(fc-scan --format "%{postscriptname}\n" $file);
    printf "\033[36m PostScript Name:\033[0m %s \e[90m(%s)\033[0m\n" "$postscriptname" "$file";
done

введіть тут опис зображення

Це трохи швидше, ніж копіювання вставлення коду у вашому файлі AppDelegate.m для друку імен кожного разу, коли ви хочете додати новий файл шрифту, який є популярним методом, а також швидше, ніж відкривати шрифт у FontBook для перевірити ім'я PostScript.

ПОСЛІДНИЙ ПОРАДА: Якщо ви вказали вищезгаданий скрипт у своєму терміналі, і все, що вам потрібно зробити, - це ввести одну команду, щоб отримати всі назви шрифтів PostScript для всіх файлів у поточному каталозі, тоді ви заощадите час у своєму робочому процесі розвитку та готуйте цей зручний сценарій для використання, коли вам це потрібно.

Сподіваюся, це допомагає!


2

Натрапив на дещо інший випадок використання, яким я вважав, що слід поділитися для інших:

Файл шрифту, який я придбав та завантажив, обмежується лише для використання додатків. Зазвичай я використовую FontBook, як прийняту відповідь, щоб захопити ім'я PostScript. Однак через обмеження використання програми мені не вдалося імпортувати шрифт у FontBook.

Що для мене працювало - це клацнути правою кнопкою миші файл шрифту та вибрати «Отримати інформацію». Значення в полі "Повне ім'я" на вкладці "Загальне" - це те, що працювало для мене, і, здається, є ім'ям PostScript. Це підтверджено кількома іншими файлами шрифтів, про які я точно знав ім'я PostScript.

Легко і не передбачає відкриття іншого додатка.


0

Ви можете використовувати FontDrop

Чудовий онлайн-інструмент, який дозволяє витягувати інформацію з файлів шрифтів

Перемістіть файл шрифту на область, що випадає:

введіть тут опис зображення

Прокрутіть трохи потім виберіть вкладку "Дані":

введіть тут опис зображення

Ви знайдете ім'я післяскрипту вашого шрифту під назвою властивості "postScriptName"

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.