-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathFontMgr.bi
82 lines (73 loc) · 2.81 KB
/
FontMgr.bi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
'-----------------------------------------------------------------------------------------------------------------------
' Cross-platform truetype / opentype font helper library
' Copyright (c) 2024 Samuel Gomes
'-----------------------------------------------------------------------------------------------------------------------
$INCLUDEONCE
'$INCLUDE:'Common.bi'
'$INCLUDE:'Types.bi'
'$INCLUDE:'BitwiseOps.bi'
'$INCLUDE:'StringOps.bi'
'$INCLUDE:'Pathname.bi'
CONST __FONTMGR_PROBE_SIZE_MIN~%% = 8~% ' minimum font height that can be reported
CONST __FONTMGR_PROBE_SIZE_MAX~%% = 120~%% ' maximum font height that can be reported
CONST __FONTMGR_PLATFORM_ID_UNI~% = 0~%
CONST __FONTMGR_PLATFORM_ID_MAC~% = 1~%
CONST __FONTMGR_PLATFORM_ID_WIN~% = 3~%
CONST __FONTMGR_LANGUAGE_ID_UNI~% = 0~% ' unicode
CONST __FONTMGR_LANGUAGE_ID_MAC~% = 0~% ' mac english
CONST __FONTMGR_LANGUAGE_ID_WIN~% = 1033~% ' Windows en-us
CONST __FONTMGR_SIZE_OF_LONG~& = 4~&
' Bunch of nameIDs that can be passed to FontMgr_GetName()
' Note that the font may not contain all of these
CONST FONTMGR_NAME_COPYRIGHT~%% = 0~%%
CONST FONTMGR_NAME_FAMILY~%% = 1~%%
CONST FONTMGR_NAME_STYLE~%% = 2~%%
CONST FONTMGR_NAME_UNIQUE~%% = 3~%%
CONST FONTMGR_NAME_FULL~%% = 4~%%
CONST FONTMGR_NAME_VERSION~%% = 5~%%
CONST FONTMGR_NAME_POSTSCRIPT~%% = 6~%%
CONST FONTMGR_NAME_TRADEMARK~%% = 7~%%
CONST FONTMGR_NAME_MANUFACTURER~%% = 8~%%
CONST FONTMGR_NAME_DESIGNER~%% = 9~%%
CONST FONTMGR_NAME_DESCRIPTION~%% = 10~%%
CONST FONTMGR_NAME_VENDOR_URL~%% = 11~%%
CONST FONTMGR_NAME_DESIGNER_URL~%% = 12~%%
CONST FONTMGR_NAME_LICENSE_DESCRIPTION~%% = 13~%%
CONST FONTMGR_NAME_LICENSE_INFO_URL~%% = 14~%%
CONST FONTMGR_NAME_PREFERRED_FAMILY~%% = 16~%%
CONST FONTMGR_NAME_PREFERRED_SUBFAMILY~%% = 17~%%
CONST FONTMGR_NAME_COMPATIBLE_FULL~%% = 18~%%
CONST FONTMGR_NAME_SAMPLE_TEXT~%% = 19~%%
TYPE __FontMgr_TTCHeaderType
szTag AS STRING * 4
uMajorVersion AS _UNSIGNED INTEGER
uMinorVersion AS _UNSIGNED INTEGER
uNumFonts AS _UNSIGNED LONG
END TYPE
TYPE __FontMgr_TTOffsetTableType
uMajorVersion AS _UNSIGNED INTEGER
uMinorVersion AS _UNSIGNED INTEGER
uNumOfTables AS _UNSIGNED INTEGER
uSearchRange AS _UNSIGNED INTEGER
uEntrySelector AS _UNSIGNED INTEGER
uRangeShift AS _UNSIGNED INTEGER
END TYPE
TYPE __FontMgr_TTTableDirectoryType
szTag AS STRING * 4
uCheckSum AS _UNSIGNED LONG
uOffset AS _UNSIGNED LONG
uLength AS _UNSIGNED LONG
END TYPE
TYPE __FontMgr_TTNameTableHeaderType
uFSelector AS _UNSIGNED INTEGER
uNRCount AS _UNSIGNED INTEGER
uStorageOffset AS _UNSIGNED INTEGER
END TYPE
TYPE __FontMgr_TTNameRecordType
uPlatformID AS _UNSIGNED INTEGER
uEncodingID AS _UNSIGNED INTEGER
uLanguageID AS _UNSIGNED INTEGER
uNameID AS _UNSIGNED INTEGER
uStringLength AS _UNSIGNED INTEGER
uStringOffset AS _UNSIGNED INTEGER
END TYPE