Freetype Glyph Performance - PullRequest
       61

Freetype Glyph Performance

0 голосов
/ 19 сентября 2018

Я пытаюсь понять, что происходит в freetype, чтобы понять производительность, которую я получаю.

После загрузки шрифта:

FT_Init_FreeType(Context);                                                      
FT_New_Face(Context, FontFileName, 0, Face);

Все, что это делает, это загрузитьшрифт, но не создает никаких глифов.Когда я создаю свои глифы:

 for (j = 32; j < 128; j++) {                                                 
    FT_Load_Char(i->ftFace, j, FT_LOAD_RENDER); 
    ...
 }

имеет очень низкую производительность.После просмотра документов выглядит, что FT_Load_Char вызывает FT_Load_Glyph.Я не уверен, почему это будет иметь такую ​​низкую производительность, и хотел бы получить лучшее понимание.Документы не объясняют, что именно делает эта функция.Единственное, что я могу себе представить, - это то, где преобразования применяются к SVG в ttf, а затем превращаются в растровое изображение.Это единственное объяснение, которое я могу придумать для производительности.

Если кто-то с большим опытом работы с freetype хотел бы уточнить, что происходит, или есть предложения о том, как избежать низкой производительности генерации глифа, есливозможно, это было бы очень признательно.

...