2000-07-08 21:51:42 +02:00
|
|
|
/***************************************************************************/
|
|
|
|
/* */
|
2000-10-28 19:10:06 +02:00
|
|
|
/* t1tokens.h */
|
2000-07-08 21:51:42 +02:00
|
|
|
/* */
|
2000-10-28 19:10:06 +02:00
|
|
|
/* Type 1 tokenizer (specification). */
|
2000-07-08 21:51:42 +02:00
|
|
|
/* */
|
2004-02-25 22:17:49 +01:00
|
|
|
/* Copyright 1996-2001, 2002, 2003, 2004 by */
|
2000-07-08 21:51:42 +02:00
|
|
|
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
|
|
|
/* */
|
|
|
|
/* This file is part of the FreeType project, and may only be used, */
|
|
|
|
/* modified, and distributed under the terms of the FreeType project */
|
|
|
|
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
|
|
|
/* this file you indicate that you have read the license and */
|
|
|
|
/* understand and accept it fully. */
|
|
|
|
/* */
|
|
|
|
/***************************************************************************/
|
|
|
|
|
2000-01-27 15:02:04 +01:00
|
|
|
|
2000-07-31 20:59:02 +02:00
|
|
|
#undef FT_STRUCTURE
|
2002-02-28 19:59:37 +01:00
|
|
|
#define FT_STRUCTURE PS_FontInfoRec
|
2000-08-24 00:47:44 +02:00
|
|
|
#undef T1CODE
|
2002-03-14 11:09:35 +01:00
|
|
|
#define T1CODE T1_FIELD_LOCATION_FONT_INFO
|
2000-05-24 23:12:02 +02:00
|
|
|
|
Make reference valid HTML 4.01 transitional.
* src/tools/docmaker/tohtml.py (html_header_1): Add doctype
and charset.
(html_header_2): Fix style elements and add some more.
Fix syntax.
(block_header, block_footer, description_header, description_footer,
marker_header, marker_footer, source_header, source_footer,
chapter_header, chapter_footer): Don't use <center>...</center> but
`align=center' table attribute.
Use double quotes around table widths given in percent.
(keyword_prefix, keyword_suffix): Don't change font colour directly
but use a new <span> class.
(section_synopsis_header, section_synopsis_footer): Don't change
colour.
(print_html_field): <tr> gets the `valign' attribute, not <table>.
(print_html_field_list): Ditto.
(index_exit): Don't use <center>...</center> but `align=center'
table attribute.
(toc_exit, section_enter): Ditto.
(block_enter): Use <h4><a>, not <a><h4>.
This change reimplements fix from 2003-05-30 without breaking
binary compatibility.
* include/freetype/t1tables.h (PS_FontInfoRec): `italic_angle',
`is_fixed_pitch', `underline_position', `underline_thickness' are
reverted to be normal values.
* include/freetype/internal/psaux.h (T1_FieldType): Remove
`T1_FIELD_TYPE_BOOL_P', `T1_FIELD_TYPE_INTEGER_P',
`T1_FIELD_TYPE_FIXED_P', `T1_FIELD_TYPE_FIXED_1000_P'.
(T1_FIELD_TYPE_BOOL_P, T1_FIELD_NUM_P, T1_FIELD_FIXED_P,
T1_FIELD_FIXED_1000_P): Removed.
(T1_FIELD_TYPE_BOOL): Renamed to...
(T1_FIELD_BOOL): New macro. Updated all callers.
* src/type42/t42parse.c: `italic_angle', `is_fixed_pitch',
`underline_position', `underline_thickness', `paint_type',
`stroke_width' are reverted to be normal values.
(T42_KEYWORD_COUNT): New macro.
(t42_parse_dict): New array `keyword_flags' to mark that a value has
already been assigned to a dictionary entry.
* src/type42/t42objs.c (T42_Face_Init, T42_Face_Done): Updated.
* src/cid/cidtoken.h: `italic_angle', `is_fixed_pitch',
`underline_position', `underline_thickness' are reverted to be
normal values.
* src/cid/cidobjs.c (cid_face_done, cid_face_init): Updated.
* src/psaux/psobjs.c (ps_parser_load_field): Updated.
* src/type1/t1tokens.h: `italic_angle', `is_fixed_pitch',
`underline_position', `underline_thickness', `paint_type',
`stroke_width' are reverted to be normal values.
* src/type1/t1objs.c (T1_Face_Done, T1_Face_Init): Updated.
* src/type1/t1load.c (T1_FIELD_COUNT): New macro.
(parse_dict): Add parameter for keyword flags.
Record only first instance of a field.
(T1_Open_Face): New array `keyword_flags'.
2003-07-26 00:09:53 +02:00
|
|
|
T1_FIELD_STRING( "version", version )
|
|
|
|
T1_FIELD_STRING( "Notice", notice )
|
|
|
|
T1_FIELD_STRING( "FullName", full_name )
|
|
|
|
T1_FIELD_STRING( "FamilyName", family_name )
|
|
|
|
T1_FIELD_STRING( "Weight", weight )
|
2000-05-24 23:12:02 +02:00
|
|
|
|
Avoid overwriting of numeric font dictionary entries for synthetic
fonts. Additionally, some entries were handled as `integer' instead
of `number'.
* include/freetype/internal/psaux.h (T1_FieldType): Add
T1_FIELD_TYPE_BOOL_P, T1_FIELD_TYPE_INTEGER_P, and
T1_FIELD_TYPE_FIXED_P.
(T1_FIELD_BOOL_P, T1_FIELD_NUM_P, T1_FIELD_FIXED_P): New macros.
* src/psaux/psobjs.c (ps_parser_load_field): Handle new field types.
* include/freetype/internal/cfftypes.h (CFF_FontRecDict),
src/cff/cfftoken.h: Change type of underline_position and
underline_thickness to FT_Fixed.
* src/cff/cffload.c (cff_subfont_load): Fix default values of
underline_position and underline_thickness.
* src/cff/cffobjs.c (cff_face_init): Set underline_position
and underline_thickness in `root'.
* include/freetype/internal/t1types.h (T1_Font): Change point_type
and stroke_width to pointers.
* include/freetype/t1tables.h (PS_FontInfo): Change italic_angle,
is_fixed_pitch, underline_position, and underline_thickness to
pointers.
* src/type1/t1tokens.h: Change italic_angle, is_fixed_pitch,
underline_position, and underline_thickness to pointers. Change
the type of the latter two to `fixed'.
Change type of stroke_width to `fixed' and make it a pointer.
Change paint_type to pointer.
* src/type1/t1objs.c (T1_Face_Done): Updated.
(T1_Face_Init): Updated.
Fix assignment of underline_position and underline_thickness.
* src/cid/cidtoken.h: Change italic_angle, is_fixed_pitch,
underline_position, and underline_thickness to pointers. Change
the type of the latter two to `fixed'.
Change type of stroke_width to `fixed'.
* src/cid/cidobjs.c (cid_face_done): Updated.
(cid_face_init): Updated.
Fix assignment of underline_position and underline_thickness.
* src/type42/t42parse.c: Change italic_angle, is_fixed_pitch,
underline_position, and underline_thickness to pointers. Change the
type of the latter two to `fixed'.
Change type of stroke_width to `fixed' and make it a pointer.
Change paint_type to pointer.
* src/type42/t42objs.c (T42_Face_Init): Updated.
Fix assignment of underline_position and underline_thickness.
(T42_Face_Done): Updated.
* src/base/ftobjs.c (open_face_from_buffer): Fix compiler warning.
* src/pshinter/pshglob.c, src/pshinter/pshglob.h
(psh_globals_set_scale): Make it a local function.
* test/gview.c: Fix remaming ps3->ps typo.
Formatting.
2003-05-30 11:12:50 +02:00
|
|
|
/* we use pointers to detect modifications made by synthetic fonts */
|
2003-08-18 00:31:23 +02:00
|
|
|
T1_FIELD_NUM ( "ItalicAngle", italic_angle )
|
Make reference valid HTML 4.01 transitional.
* src/tools/docmaker/tohtml.py (html_header_1): Add doctype
and charset.
(html_header_2): Fix style elements and add some more.
Fix syntax.
(block_header, block_footer, description_header, description_footer,
marker_header, marker_footer, source_header, source_footer,
chapter_header, chapter_footer): Don't use <center>...</center> but
`align=center' table attribute.
Use double quotes around table widths given in percent.
(keyword_prefix, keyword_suffix): Don't change font colour directly
but use a new <span> class.
(section_synopsis_header, section_synopsis_footer): Don't change
colour.
(print_html_field): <tr> gets the `valign' attribute, not <table>.
(print_html_field_list): Ditto.
(index_exit): Don't use <center>...</center> but `align=center'
table attribute.
(toc_exit, section_enter): Ditto.
(block_enter): Use <h4><a>, not <a><h4>.
This change reimplements fix from 2003-05-30 without breaking
binary compatibility.
* include/freetype/t1tables.h (PS_FontInfoRec): `italic_angle',
`is_fixed_pitch', `underline_position', `underline_thickness' are
reverted to be normal values.
* include/freetype/internal/psaux.h (T1_FieldType): Remove
`T1_FIELD_TYPE_BOOL_P', `T1_FIELD_TYPE_INTEGER_P',
`T1_FIELD_TYPE_FIXED_P', `T1_FIELD_TYPE_FIXED_1000_P'.
(T1_FIELD_TYPE_BOOL_P, T1_FIELD_NUM_P, T1_FIELD_FIXED_P,
T1_FIELD_FIXED_1000_P): Removed.
(T1_FIELD_TYPE_BOOL): Renamed to...
(T1_FIELD_BOOL): New macro. Updated all callers.
* src/type42/t42parse.c: `italic_angle', `is_fixed_pitch',
`underline_position', `underline_thickness', `paint_type',
`stroke_width' are reverted to be normal values.
(T42_KEYWORD_COUNT): New macro.
(t42_parse_dict): New array `keyword_flags' to mark that a value has
already been assigned to a dictionary entry.
* src/type42/t42objs.c (T42_Face_Init, T42_Face_Done): Updated.
* src/cid/cidtoken.h: `italic_angle', `is_fixed_pitch',
`underline_position', `underline_thickness' are reverted to be
normal values.
* src/cid/cidobjs.c (cid_face_done, cid_face_init): Updated.
* src/psaux/psobjs.c (ps_parser_load_field): Updated.
* src/type1/t1tokens.h: `italic_angle', `is_fixed_pitch',
`underline_position', `underline_thickness', `paint_type',
`stroke_width' are reverted to be normal values.
* src/type1/t1objs.c (T1_Face_Done, T1_Face_Init): Updated.
* src/type1/t1load.c (T1_FIELD_COUNT): New macro.
(parse_dict): Add parameter for keyword flags.
Record only first instance of a field.
(T1_Open_Face): New array `keyword_flags'.
2003-07-26 00:09:53 +02:00
|
|
|
T1_FIELD_BOOL ( "isFixedPitch", is_fixed_pitch )
|
2003-08-18 00:31:23 +02:00
|
|
|
T1_FIELD_NUM ( "UnderlinePosition", underline_position )
|
|
|
|
T1_FIELD_NUM ( "UnderlineThickness", underline_thickness )
|
2000-07-08 21:51:42 +02:00
|
|
|
|
2000-05-24 23:12:02 +02:00
|
|
|
|
2000-07-31 20:59:02 +02:00
|
|
|
#undef FT_STRUCTURE
|
2002-02-28 19:59:37 +01:00
|
|
|
#define FT_STRUCTURE PS_PrivateRec
|
2000-08-24 00:47:44 +02:00
|
|
|
#undef T1CODE
|
2002-03-14 11:09:35 +01:00
|
|
|
#define T1CODE T1_FIELD_LOCATION_PRIVATE
|
2000-05-24 23:12:02 +02:00
|
|
|
|
2000-08-24 00:47:44 +02:00
|
|
|
T1_FIELD_NUM ( "UniqueID", unique_id )
|
|
|
|
T1_FIELD_NUM ( "lenIV", lenIV )
|
|
|
|
T1_FIELD_NUM ( "LanguageGroup", language_group )
|
|
|
|
T1_FIELD_NUM ( "password", password )
|
2000-07-08 21:51:42 +02:00
|
|
|
|
2003-06-06 07:07:53 +02:00
|
|
|
T1_FIELD_FIXED_1000( "BlueScale", blue_scale )
|
2000-08-24 00:47:44 +02:00
|
|
|
T1_FIELD_NUM ( "BlueShift", blue_shift )
|
|
|
|
T1_FIELD_NUM ( "BlueFuzz", blue_fuzz )
|
2000-07-08 21:51:42 +02:00
|
|
|
|
2000-08-24 00:47:44 +02:00
|
|
|
T1_FIELD_NUM_TABLE ( "BlueValues", blue_values, 14 )
|
|
|
|
T1_FIELD_NUM_TABLE ( "OtherBlues", other_blues, 10 )
|
|
|
|
T1_FIELD_NUM_TABLE ( "FamilyBlues", family_blues, 14 )
|
|
|
|
T1_FIELD_NUM_TABLE ( "FamilyOtherBlues", family_other_blues, 10 )
|
2000-06-28 01:21:51 +02:00
|
|
|
|
2000-08-24 00:47:44 +02:00
|
|
|
T1_FIELD_NUM_TABLE2( "StdHW", standard_width, 1 )
|
|
|
|
T1_FIELD_NUM_TABLE2( "StdVW", standard_height, 1 )
|
|
|
|
T1_FIELD_NUM_TABLE2( "MinFeature", min_feature, 2 )
|
2000-07-08 21:51:42 +02:00
|
|
|
|
2000-08-24 00:47:44 +02:00
|
|
|
T1_FIELD_NUM_TABLE ( "StemSnapH", snap_widths, 12 )
|
|
|
|
T1_FIELD_NUM_TABLE ( "StemSnapV", snap_heights, 12 )
|
2000-05-24 23:12:02 +02:00
|
|
|
|
2004-02-25 22:17:49 +01:00
|
|
|
T1_FIELD_FIXED ( "ExpansionFactor", expansion_factor )
|
|
|
|
|
2000-07-08 21:51:42 +02:00
|
|
|
|
2000-07-31 20:59:02 +02:00
|
|
|
#undef FT_STRUCTURE
|
2002-02-28 19:59:37 +01:00
|
|
|
#define FT_STRUCTURE T1_FontRec
|
2000-08-24 00:47:44 +02:00
|
|
|
#undef T1CODE
|
2002-03-14 11:09:35 +01:00
|
|
|
#define T1CODE T1_FIELD_LOCATION_FONT_DICT
|
2000-05-24 23:12:02 +02:00
|
|
|
|
Make reference valid HTML 4.01 transitional.
* src/tools/docmaker/tohtml.py (html_header_1): Add doctype
and charset.
(html_header_2): Fix style elements and add some more.
Fix syntax.
(block_header, block_footer, description_header, description_footer,
marker_header, marker_footer, source_header, source_footer,
chapter_header, chapter_footer): Don't use <center>...</center> but
`align=center' table attribute.
Use double quotes around table widths given in percent.
(keyword_prefix, keyword_suffix): Don't change font colour directly
but use a new <span> class.
(section_synopsis_header, section_synopsis_footer): Don't change
colour.
(print_html_field): <tr> gets the `valign' attribute, not <table>.
(print_html_field_list): Ditto.
(index_exit): Don't use <center>...</center> but `align=center'
table attribute.
(toc_exit, section_enter): Ditto.
(block_enter): Use <h4><a>, not <a><h4>.
This change reimplements fix from 2003-05-30 without breaking
binary compatibility.
* include/freetype/t1tables.h (PS_FontInfoRec): `italic_angle',
`is_fixed_pitch', `underline_position', `underline_thickness' are
reverted to be normal values.
* include/freetype/internal/psaux.h (T1_FieldType): Remove
`T1_FIELD_TYPE_BOOL_P', `T1_FIELD_TYPE_INTEGER_P',
`T1_FIELD_TYPE_FIXED_P', `T1_FIELD_TYPE_FIXED_1000_P'.
(T1_FIELD_TYPE_BOOL_P, T1_FIELD_NUM_P, T1_FIELD_FIXED_P,
T1_FIELD_FIXED_1000_P): Removed.
(T1_FIELD_TYPE_BOOL): Renamed to...
(T1_FIELD_BOOL): New macro. Updated all callers.
* src/type42/t42parse.c: `italic_angle', `is_fixed_pitch',
`underline_position', `underline_thickness', `paint_type',
`stroke_width' are reverted to be normal values.
(T42_KEYWORD_COUNT): New macro.
(t42_parse_dict): New array `keyword_flags' to mark that a value has
already been assigned to a dictionary entry.
* src/type42/t42objs.c (T42_Face_Init, T42_Face_Done): Updated.
* src/cid/cidtoken.h: `italic_angle', `is_fixed_pitch',
`underline_position', `underline_thickness' are reverted to be
normal values.
* src/cid/cidobjs.c (cid_face_done, cid_face_init): Updated.
* src/psaux/psobjs.c (ps_parser_load_field): Updated.
* src/type1/t1tokens.h: `italic_angle', `is_fixed_pitch',
`underline_position', `underline_thickness', `paint_type',
`stroke_width' are reverted to be normal values.
* src/type1/t1objs.c (T1_Face_Done, T1_Face_Init): Updated.
* src/type1/t1load.c (T1_FIELD_COUNT): New macro.
(parse_dict): Add parameter for keyword flags.
Record only first instance of a field.
(T1_Open_Face): New array `keyword_flags'.
2003-07-26 00:09:53 +02:00
|
|
|
T1_FIELD_KEY ( "FontName", font_name )
|
|
|
|
T1_FIELD_NUM ( "PaintType", paint_type )
|
|
|
|
T1_FIELD_NUM ( "FontType", font_type )
|
|
|
|
T1_FIELD_FIXED( "StrokeWidth", stroke_width )
|
2000-05-24 23:12:02 +02:00
|
|
|
|
2002-07-11 13:26:21 +02:00
|
|
|
#undef FT_STRUCTURE
|
|
|
|
#define FT_STRUCTURE FT_BBox
|
|
|
|
#undef T1CODE
|
|
|
|
#define T1CODE T1_FIELD_LOCATION_BBOX
|
|
|
|
|
|
|
|
T1_FIELD_BBOX("FontBBox", xMin )
|
|
|
|
|
2000-08-24 18:29:15 +02:00
|
|
|
|
2000-07-08 21:51:42 +02:00
|
|
|
/* END */
|