AddSubsettedFontA

Текст, Шрифты

Описание

Завершающая A обозначает точку входа ANSI (char) в DLL; интерфейс ActiveX/COM открывает только Unicode-форму. Поведение идентично AddSubsettedFont, а строковые аргументы интерпретируются в кодовой странице, заданной текущим режимом SetAnsiMode

Внедряет "подмножество" шрифта: в документ попадают сведения только о заданных символах, что уменьшает его размер. Функция также позволяет внедрять любой символ Unicode, то есть доступны китайские, японские, корейские и другие символы

Более продвинутые возможности построения подмножеств шрифтов даёт новая функция AddTrueTypeSubsettedFont

Синтаксис

Delphi

Function DLAddSubsettedFontA(InstanceID: Integer; FontName: PAnsiChar; CharsetIndex: Integer; SubsetChars: PAnsiChar): Integer;

DLL

int DLAddSubsettedFontA(int InstanceID, const char * FontName, int CharsetIndex, const char * SubsetChars);

Параметры

FontNameИмя устанавливаемого TrueType-шрифта: либо имя шрифта как в папке Windows\Fonts (например "Times New Roman Bold"), либо имя семейства с необязательным указателем стиля в квадратных скобках (например "Times New Roman [BoldItalic]"). Возможные указатели стиля: [Bold], [Italic], [BoldItalic]
CharsetIndexУкажите набор символов, содержащий нужные для подмножества символы: 1 = ANSI 2 = Default 3 = Symbol 4 = Shift JIS 5 = Hangeul 6 = GB2312 7 = Chinese Big 5 8 = OEM 9 = Johab 10 = Hebrew 11 = Arabic 12 = Greek 13 = Turkish 14 = Vietnamese 15 = Thai 16 = East Europe 17 = Russian 18 = Mac 19 = Baltic
SubsetCharsСтрока с символами, которые вы хотите включить в подмножество. Повторяющиеся символы игнорируются; в подмножество шрифта помещается не более 255 символов. Внедрить можно любой символ Unicode, но убедитесь, что он есть в указанном наборе символов

Возвращаемые значения

0Подмножество шрифта добавить не удалось либо параметр CharSet вне диапазона
Non-zeroFontID добавленного шрифта; этот ID передаётся функции SelectFont для выбора шрифта