извлечь изображение символа шрифта из файла ttf

Кто-нибудь знает, как извлечь изображение символов из файла шрифта (ttf)?


person Jack    schedule 04.01.2010    source источник


Ответы (3)


TTF - это векторный формат, поэтому на самом деле нет никаких форм символов. Загрузите шрифт, выберите его в контексте устройства (в памяти), отрисуйте символ, возьмите растровое изображение.

Соответствующие API: AddFontResource, CreateFont, CreateDC, CreateBitmap, SelectObject, TextOut (или DrawText).

person Seva Alekseyev    schedule 04.01.2010

Можно использовать GetGlyphOutline с GGO_BEZIER, форма одного символа.

person Mark Ransom    schedule 04.01.2010
comment
вы знаете такую ​​же функцию в C#? - person Jack; 05.01.2010

Ради полноты я хотел бы добавить графический интерфейс и способ Python в этот довольно старый поток.

Если целью является извлечение изображений (например, png) из файла .ttf, я нашел два довольно простых способа, оба из которых включают программу с открытым исходным кодом fontforge (Ссылка на их сайт):

  • Способ графического интерфейса пользователя (подходит для извлечения нескольких символов): откройте файл .ttf в fontforge, щелкните символ, который хотите экспортировать. Затем: файл -> экспорт -> формат: png
  • CLI/Python Way (подходит для автоматизации): FontForge имеет cli API для Python 2.7, который позволяет автоматизировать извлечение изображений. Обратитесь к этой теме суперпользователя. полный сценарий.

Ссылка 1: https://fontforge.org/en-US/
Ссылка 2 : https://superuser.com/questions/1337567/how-do-i-convert-a-ttf-into-individual-png-character-images

person Pewepow    schedule 09.10.2020