0 +0−0 | С.В. | 19:27:13 10/05/2016 | ||||||
| ||||||||
Не так. Отождествление шрифтов в Винде выполняется при каждом вызове функции, выбирающей заданный шрифт в DeviceContext по структуре LOGFONT (я не буду вспоминать, как она называется). При этом, название шрифта, как ни странно, не являлось (в те времена, когда я ещё программировал для винды) окончательным аргументом для винды. Логика винды была такая: она перебирала ВСЕ шрифты, установленные в системе, выбирая нужный в соответствии с некоторой системой (по совпадению/несовпадению параметров LOGFONT аналогичной структуре реального шрифта начислялись некие штрафные очки). При этом вес параметра PitchAndFamily был вроде как выше, чем вес названия шрифта. В итоге, винда могла выбрать совершенно не тот шрифт, который запросил пользователь, а для гарантированного выбора того самого шрифта приходилось писать собственную альтернативную систему отождествления со своим полным списком шрифтов). :) Сухой остаток прост: быстродействие винды можно было увеличить путём истребления ненужных шрифтов. |