3918 |
Serge |
1 |
|
|
|
2 |
"http://www.w3.org/TR/html4/loose.dtd"> |
|
|
3 |
|
|
|
4 |
|
|
|
5 |
|
|
|
6 |
FreeType-2.5.0 API Reference |
|
|
7 |
|
|
|
8 |
body { font-family: Verdana, Geneva, Arial, Helvetica, serif; |
|
|
9 |
color: #000000; |
|
|
10 |
background: #FFFFFF; } |
|
|
11 |
|
|
|
12 |
p { text-align: justify; } |
|
|
13 |
h1 { text-align: center; } |
|
|
14 |
li { text-align: justify; } |
|
|
15 |
td { padding: 0 0.5em 0 0.5em; } |
|
|
16 |
td.left { padding: 0 0.5em 0 0.5em; |
|
|
17 |
text-align: left; } |
|
|
18 |
|
|
|
19 |
a:link { color: #0000EF; } |
|
|
20 |
a:visited { color: #51188E; } |
|
|
21 |
a:hover { color: #FF0000; } |
|
|
22 |
|
|
|
23 |
span.keyword { font-family: monospace; |
|
|
24 |
text-align: left; |
|
|
25 |
white-space: pre; |
|
|
26 |
color: darkblue; } |
|
|
27 |
|
|
|
28 |
pre.colored { color: blue; } |
|
|
29 |
|
|
|
30 |
ul.empty { list-style-type: none; } |
|
|
31 |
|
|
|
32 |
|
|
|
33 |
|
|
|
34 |
|
|
|
35 |
|
|
|
38 |
FreeType-2.5.0 API Reference
|
|
|
39 |
|
|
|
40 |
|
|
|
41 |
Type 1 Tables |
|
|
42 |
|
|
|
43 |
Synopsis
|
|
|
44 |
|
|
|
52 |
|
|
|
53 |
|
|
|
54 |
This section contains the definition of Type 1-specific tables, including structures related to other PostScript font formats.
|
|
|
55 |
|
|
|
|
56 |
|
|
|
57 |
|
|
|
58 |
|
|
|
59 |
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h). |
|
|
60 |
|
|
|
|
61 |
|
|
|
78 |
|
|
|
79 |
A structure used to model a Type 1 or Type 2 FontInfo dictionary. Note that for Multiple Master fonts, each instance has its own FontInfo dictionary.
|
|
|
80 |
|
|
|
|
81 |
|
|
|
|
82 |
|
|
|
83 |
|
|
|
86 |
|
|
|
87 |
|
|
|
88 |
|
|
|
89 |
|
|
|
90 |
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h). |
|
|
91 |
|
|
|
|
92 |
|
|
|
93 |
|
|
|
94 |
typedef struct PS_FontInfoRec_* PS_FontInfo; |
|
|
95 |
|
|
|
96 |
|
|
|
|
97 |
|
|
|
100 |
|
|
|
|
101 |
|
|
|
102 |
|
|
|
105 |
|
|
|
106 |
|
|
|
107 |
|
|
|
108 |
|
|
|
109 |
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h). |
|
|
110 |
|
|
|
|
111 |
|
|
|
116 |
|
|
|
117 |
This type is equivalent to PS_FontInfoRec. It is deprecated but kept to maintain source compatibility between various versions of FreeType.
|
|
|
118 |
|
|
|
|
119 |
|
|
|
|
120 |
|
|
|
121 |
|
|
|
124 |
|
|
|
125 |
|
|
|
126 |
|
|
|
127 |
|
|
|
128 |
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h). |
|
|
129 |
|
|
|
|
130 |
|
|
|
173 |
|
|
|
174 |
A structure used to model a Type 1 or Type 2 private dictionary. Note that for Multiple Master fonts, each instance has its own Private dictionary.
|
|
|
175 |
|
|
|
|
176 |
|
|
|
|
177 |
|
|
|
178 |
|
|
|
181 |
|
|
|
182 |
|
|
|
196 |
|
|
|
197 |
|
|
|
200 |
|
|
|
201 |
|
|
|
202 |
|
|
|
203 |
|
|
|
204 |
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h). |
|
|
205 |
|
|
|
|
206 |
|
|
|
211 |
|
|
|
212 |
This type is equivalent to PS_PrivateRec. It is deprecated but kept to maintain source compatibility between various versions of FreeType.
|
|
|
213 |
|
|
|
|
214 |
|
|
|
|
215 |
|
|
|
216 |
|
|
|
219 |
|
|
|
220 |
|
|
|
221 |
|
|
|
222 |
|
|
|
223 |
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h). |
|
|
224 |
|
|
|
|
225 |
|
|
|
226 |
|
|
|
227 |
typedef enum T1_Blend_Flags_ |
|
|
228 |
{ |
|
|
229 |
/*# required fields in a FontInfo blend dictionary */ |
|
|
230 |
T1_BLEND_UNDERLINE_POSITION = 0, |
|
|
231 |
T1_BLEND_UNDERLINE_THICKNESS, |
|
|
232 |
T1_BLEND_ITALIC_ANGLE, |
|
|
233 |
|
|
|
234 |
/*# required fields in a Private blend dictionary */ |
|
|
235 |
T1_BLEND_BLUE_VALUES, |
|
|
236 |
T1_BLEND_OTHER_BLUES, |
|
|
237 |
T1_BLEND_STANDARD_WIDTH, |
|
|
238 |
T1_BLEND_STANDARD_HEIGHT, |
|
|
239 |
T1_BLEND_STEM_SNAP_WIDTHS, |
|
|
240 |
T1_BLEND_STEM_SNAP_HEIGHTS, |
|
|
241 |
T1_BLEND_BLUE_SCALE, |
|
|
242 |
T1_BLEND_BLUE_SHIFT, |
|
|
243 |
T1_BLEND_FAMILY_BLUES, |
|
|
244 |
T1_BLEND_FAMILY_OTHER_BLUES, |
|
|
245 |
T1_BLEND_FORCE_BOLD, |
|
|
246 |
|
|
|
247 |
/*# never remove */ |
|
|
248 |
T1_BLEND_MAX |
|
|
249 |
|
|
|
250 |
} T1_Blend_Flags; |
|
|
251 |
|
|
|
252 |
|
|
|
|
253 |
|
|
|
254 |
A set of flags used to indicate which fields are present in a given blend dictionary (font info or private). Used to support Multiple Masters fonts.
|
|
|
255 |
|
|
|
|
256 |
|
|
|
|
257 |
|
|
|
258 |
|
|
|
261 |
|
|
|
262 |
|
|
|
263 |
|
|
|
264 |
|
|
|
265 |
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h). |
|
|
266 |
|
|
|
|
267 |
|
|
|
290 |
|
|
|
291 |
A structure used to represent data in a CID top-level dictionary.
|
|
|
292 |
|
|
|
|
293 |
|
|
|
|
294 |
|
|
|
295 |
|
|
|
298 |
|
|
|
299 |
|
|
|
313 |
|
|
|
314 |
|
|
|
317 |
|
|
|
318 |
|
|
|
319 |
|
|
|
320 |
|
|
|
321 |
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h). |
|
|
322 |
|
|
|
|
323 |
|
|
|
355 |
|
|
|
356 |
A structure used to represent CID Face information.
|
|
|
357 |
|
|
|
|
358 |
|
|
|
|
359 |
|
|
|
360 |
|
|
|
363 |
|
|
|
364 |
|
|
|
378 |
|
|
|
379 |
|
|
|
382 |
|
|
|
383 |
|
|
|
384 |
|
|
|
385 |
|
|
|
386 |
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h). |
|
|
387 |
|
|
|
|
388 |
|
|
|
393 |
|
|
|
394 |
This type is equivalent to CID_FaceInfoRec. It is deprecated but kept to maintain source compatibility between various versions of FreeType.
|
|
|
395 |
|
|
|
|
396 |
|
|
|
|
397 |
|
|
|
398 |
|
|
|
401 |
|
|
|
402 |
|
|
|
403 |
|
|
|
404 |
|
|
|
405 |
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h). |
|
|
406 |
|
|
|
|
407 |
|
|
|
413 |
|
|
|
414 |
Return true if a given face provides reliable PostScript glyph names. This is similar to using the FT_HAS_GLYPH_NAMES macro, except that certain fonts (mostly TrueType) contain incorrect glyph name tables.
|
|
|
415 |
When this function returns true, the caller is sure that the glyph names returned by FT_Get_Glyph_Name are reliable.
|
|
|
416 |
|
|
|
|
417 |
|
|
|
425 |
return | |
|
|
426 |
Boolean. True if glyph names are reliable.
|
|
|
427 |
|
|
|
|
428 |
|
|
|
|
429 |
|
|
|
430 |
|
|
|
433 |
|
|
|
434 |
|
|
|
435 |
|
|
|
436 |
|
|
|
437 |
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h). |
|
|
438 |
|
|
|
|
439 |
|
|
|
446 |
|
|
|
449 |
|
|
|
457 |
|
|
|
465 |
return | |
|
|
466 |
FreeType error code. 0 means success.
|
|
|
467 |
|
|
|
|
468 |
note | |
|
|
469 |
The string pointers within the font info structure are owned by the face and don't need to be freed by the caller.
|
|
|
470 |
If the font's format is not PostScript-based, this function will return the ‘FT_Err_Invalid_Argument’ error code.
|
|
|
471 |
|
|
|
|
472 |
|
|
|
|
473 |
|
|
|
474 |
|
|
|
477 |
|
|
|
478 |
|
|
|
479 |
|
|
|
480 |
|
|
|
481 |
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h). |
|
|
482 |
|
|
|
|
483 |
|
|
|
490 |
|
|
|
493 |
|
|
|
501 |
|
|
|
509 |
return | |
|
|
510 |
FreeType error code. 0 means success.
|
|
|
511 |
|
|
|
|
512 |
note | |
|
|
513 |
The string pointers within the PS_PrivateRec structure are owned by the face and don't need to be freed by the caller.
|
|
|
514 |
If the font's format is not PostScript-based, this function returns the ‘FT_Err_Invalid_Argument’ error code.
|
|
|
515 |
|
|
|
|
516 |
|
|
|
|
517 |
|
|
|
518 |
|
|
|
521 |
|
|
|
522 |
|
|
|
523 |
|
|
|
524 |
|
|
|
525 |
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h). |
|
|
526 |
|
|
|
|
527 |
|
|
|
528 |
|
|
|
529 |
typedef enum T1_EncodingType_ |
|
|
530 |
{ |
|
|
531 |
T1_ENCODING_TYPE_NONE = 0, |
|
|
532 |
T1_ENCODING_TYPE_ARRAY, |
|
|
533 |
T1_ENCODING_TYPE_STANDARD, |
|
|
534 |
T1_ENCODING_TYPE_ISOLATIN1, |
|
|
535 |
T1_ENCODING_TYPE_EXPERT |
|
|
536 |
|
|
|
537 |
} T1_EncodingType; |
|
|
538 |
|
|
|
539 |
|
|
|
|
540 |
|
|
|
541 |
An enumeration describing the ‘Encoding’ entry in a Type 1 dictionary.
|
|
|
542 |
|
|
|
|
543 |
|
|
|
|
544 |
|
|
|
545 |
|
|
|
548 |
|
|
|
549 |
|
|
|
550 |
|
|
|
551 |
|
|
|
552 |
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h). |
|
|
553 |
|
|
|
|
554 |
|
|
|
555 |
|
|
|
556 |
typedef enum PS_Dict_Keys_ |
|
|
557 |
{ |
|
|
558 |
/* conventionally in the font dictionary */ |
|
|
559 |
PS_DICT_FONT_TYPE, /* FT_Byte */ |
|
|
560 |
PS_DICT_FONT_MATRIX, /* FT_Fixed */ |
|
|
561 |
PS_DICT_FONT_BBOX, /* FT_Fixed */ |
|
|
562 |
PS_DICT_PAINT_TYPE, /* FT_Byte */ |
|
|
563 |
PS_DICT_FONT_NAME, /* FT_String* */ |
|
|
564 |
PS_DICT_UNIQUE_ID, /* FT_Int */ |
|
|
565 |
PS_DICT_NUM_CHAR_STRINGS, /* FT_Int */ |
|
|
566 |
PS_DICT_CHAR_STRING_KEY, /* FT_String* */ |
|
|
567 |
PS_DICT_CHAR_STRING, /* FT_String* */ |
|
|
568 |
PS_DICT_ENCODING_TYPE, /* T1_EncodingType */ |
|
|
569 |
PS_DICT_ENCODING_ENTRY, /* FT_String* */ |
|
|
570 |
|
|
|
571 |
/* conventionally in the font Private dictionary */ |
|
|
572 |
PS_DICT_NUM_SUBRS, /* FT_Int */ |
|
|
573 |
PS_DICT_SUBR, /* FT_String* */ |
|
|
574 |
PS_DICT_STD_HW, /* FT_UShort */ |
|
|
575 |
PS_DICT_STD_VW, /* FT_UShort */ |
|
|
576 |
PS_DICT_NUM_BLUE_VALUES, /* FT_Byte */ |
|
|
577 |
PS_DICT_BLUE_VALUE, /* FT_Short */ |
|
|
578 |
PS_DICT_BLUE_FUZZ, /* FT_Int */ |
|
|
579 |
PS_DICT_NUM_OTHER_BLUES, /* FT_Byte */ |
|
|
580 |
PS_DICT_OTHER_BLUE, /* FT_Short */ |
|
|
581 |
PS_DICT_NUM_FAMILY_BLUES, /* FT_Byte */ |
|
|
582 |
PS_DICT_FAMILY_BLUE, /* FT_Short */ |
|
|
583 |
PS_DICT_NUM_FAMILY_OTHER_BLUES, /* FT_Byte */ |
|
|
584 |
PS_DICT_FAMILY_OTHER_BLUE, /* FT_Short */ |
|
|
585 |
PS_DICT_BLUE_SCALE, /* FT_Fixed */ |
|
|
586 |
PS_DICT_BLUE_SHIFT, /* FT_Int */ |
|
|
587 |
PS_DICT_NUM_STEM_SNAP_H, /* FT_Byte */ |
|
|
588 |
PS_DICT_STEM_SNAP_H, /* FT_Short */ |
|
|
589 |
PS_DICT_NUM_STEM_SNAP_V, /* FT_Byte */ |
|
|
590 |
PS_DICT_STEM_SNAP_V, /* FT_Short */ |
|
|
591 |
PS_DICT_FORCE_BOLD, /* FT_Bool */ |
|
|
592 |
PS_DICT_RND_STEM_UP, /* FT_Bool */ |
|
|
593 |
PS_DICT_MIN_FEATURE, /* FT_Short */ |
|
|
594 |
PS_DICT_LEN_IV, /* FT_Int */ |
|
|
595 |
PS_DICT_PASSWORD, /* FT_Long */ |
|
|
596 |
PS_DICT_LANGUAGE_GROUP, /* FT_Long */ |
|
|
597 |
|
|
|
598 |
/* conventionally in the font FontInfo dictionary */ |
|
|
599 |
PS_DICT_VERSION, /* FT_String* */ |
|
|
600 |
PS_DICT_NOTICE, /* FT_String* */ |
|
|
601 |
PS_DICT_FULL_NAME, /* FT_String* */ |
|
|
602 |
PS_DICT_FAMILY_NAME, /* FT_String* */ |
|
|
603 |
PS_DICT_WEIGHT, /* FT_String* */ |
|
|
604 |
PS_DICT_IS_FIXED_PITCH, /* FT_Bool */ |
|
|
605 |
PS_DICT_UNDERLINE_POSITION, /* FT_Short */ |
|
|
606 |
PS_DICT_UNDERLINE_THICKNESS, /* FT_UShort */ |
|
|
607 |
PS_DICT_FS_TYPE, /* FT_UShort */ |
|
|
608 |
PS_DICT_ITALIC_ANGLE, /* FT_Long */ |
|
|
609 |
|
|
|
610 |
PS_DICT_MAX = PS_DICT_ITALIC_ANGLE |
|
|
611 |
|
|
|
612 |
} PS_Dict_Keys; |
|
|
613 |
|
|
|
614 |
|
|
|
|
615 |
|
|
|
618 |
|
|
|
|
619 |
|
|
|
620 |
|
|
|
623 |
|
|
|
624 |
|
|
|
625 |
|
|
|
626 |
|
|
|
627 |
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h). |
|
|
628 |
|
|
|
|
629 |
|
|
|
639 |
|
|
|
640 |
Retrieve the value for the supplied key from a PostScript font.
|
|
|
641 |
|
|
|
|
642 |
input | |
|
|
643 |
|
|
|
644 |
|
|
645 |
face | |
|
|
646 |
PostScript face handle.
|
|
|
647 |
|
|
|
|
648 |
key | |
|
|
649 |
An enumeration value representing the dictionary key to retrieve.
|
|
|
650 |
|
|
|
|
651 |
idx | |
|
|
652 |
For array values, this specifies the index to be returned.
|
|
|
653 |
|
|
|
|
654 |
value | |
|
|
655 |
A pointer to memory into which to write the value.
|
|
|
656 |
|
|
|
|
657 |
valen_len | |
|
|
658 |
The size, in bytes, of the memory supplied for the value.
|
|
|
659 |
|
|
|
|
660 |
| |
|
|
661 |
|
|
|
|
662 |
|
|
|
670 |
return | |
|
|
671 |
The amount of memory (in bytes) required to hold the requested value (if it exists, -1 otherwise).
|
|
|
672 |
|
|
|
|
673 |
note | |
|
|
674 |
The values returned are not pointers into the internal structures of the face, but are ‘fresh’ copies, so that the memory containing them belongs to the calling application. This also enforces the ‘read-only’ nature of these values, i.e., this function cannot be used to manipulate the face.
|
|
|
675 |
‘value’ is a void pointer because the values returned can be of various types.
|
|
|
676 |
If either ‘value’ is NULL or ‘value_len’ is too small, just the required memory size for the requested entry is returned.
|
|
|
677 |
The ‘idx’ parameter is used, not only to retrieve elements of, for example, the FontMatrix or FontBBox, but also to retrieve name keys from the CharStrings dictionary, and the charstrings themselves. It is ignored for atomic values.
|
|
|
678 |
PS_DICT_BLUE_SCALE returns a value that is scaled up by 1000. To get the value as in the font stream, you need to divide by 65536000.0 (to remove the FT_Fixed scale, and the x1000 scale).
|
|
|
679 |
IMPORTANT: Only key/value pairs read by the FreeType interpreter can be retrieved. So, for example, PostScript procedures such as NP, ND, and RD are not available. Arbitrary keys are, obviously, not be available either.
|
|
|
680 |
If the font's format is not PostScript-based, this function returns the ‘FT_Err_Invalid_Argument’ error code.
|
|
|
681 |
|
|
|
|
682 |
|
|
|
|
683 |
|
|
|
684 |
|
|
|
687 |
|
|
|
688 |
|
|
|
689 |
|
!DOCTYPE>