* builds/win32/detekt.mk: Fix .PHONY target for Intel compiler.
Renamed "ftnames.h" to "ftsnames.h", and FT_NAMES_H to FT_SFNT_NAMES_H. * docs/docmaker.py: Added generation of INDEX link in table of contents. * INSTALL, docs/BUILD: Updated documentation to indicate that the compilation process has changed slightly (no more `src' required in * builds/*/*-def.mk: Changed the objects directory from "obj" to "objs". * include/freetype/config/ftheader.h: Removed obsolete macros like FT_SOURCE_FILE, etc. and added cache-specific macro definitions that were previously defined in <freetype/ftcache.h>. Added comments to be included in a new API Reference section. * src/*/*: Removed the use of FT_SOURCE_FILE, etc. Now, each component needs to add its own directory to the include path at compile time. Modified all "rules.mk" and "descrip.mms" accordingly. * src/cid/cidobjs.c, src/cid/cidload.c, src/pcf/pcfread.c, src/type1/t1load.c, src/type1/t1objs.c: Added a few casts to remove compiler warnings in pedantic modes. * include/config/ft2build.h, include/config/ftheader.h: The file top-level <ft2build.h>. * include/config/ftheader.h: Added new section describing the #include macros. the Type 2 glyph charstring (used by conversion programs). * docs/docmaker.py: Added cross-references generation as well as seac emulation provided by the Type 2 endchar operator. * src/cid/cidafm.c, src/cid/cidafm.h: removed un-needed files, Added support for clipped direct rendering in the smooth renderer. * src/cff/t2objs.c (T2_Init_Face): For pure CFF fonts, set
This commit is contained in:
parent
0e20e1e575
commit
521a2d7a13
83
ChangeLog
83
ChangeLog
|
@ -1,25 +1,32 @@
|
||||||
2001-03-20 David Turner <david.turner@freetype.org>
|
2001-03-20 Werner Lemberg <wl@gnu.org>
|
||||||
|
|
||||||
|
* builds/win32/detekt.mk: Fix .PHONY target for Intel compiler.
|
||||||
|
|
||||||
|
2001-03-20 David Turner <david.turner@freetype.org>
|
||||||
|
|
||||||
* include/freetype/config/ftheader.h, include/freetype/ftsnames.h:
|
* include/freetype/config/ftheader.h, include/freetype/ftsnames.h:
|
||||||
renamed "ftnames.h" to "ftsnames.h", and FT_NAMES_H to FT_SFNT_NAMES_H
|
Renamed "ftnames.h" to "ftsnames.h", and FT_NAMES_H to
|
||||||
|
FT_SFNT_NAMES_H.
|
||||||
|
|
||||||
* docs/docmaker.py: added generation of INDEX link in table of contents
|
* docs/docmaker.py: Added generation of INDEX link in table of
|
||||||
|
contents.
|
||||||
|
|
||||||
* INSTALL, docs/BUILD: updated documentation to indicate that the
|
* INSTALL, docs/BUILD: Updated documentation to indicate that the
|
||||||
compilation process has changed slightly (no more 'src' required in
|
compilation process has changed slightly (no more `src' required in
|
||||||
the include path).
|
the include path).
|
||||||
|
|
||||||
* builds/*/*-def.mk: changed the objects directory from "obj" to "objs"
|
* builds/*/*-def.mk: Changed the objects directory from "obj" to
|
||||||
|
"objs".
|
||||||
|
|
||||||
* include/freetype/config/ftheader.h: removed obsolete macros like
|
* include/freetype/config/ftheader.h: Removed obsolete macros like
|
||||||
FT_SOURCE_FILE, etc.. and added cache-specific macro definitions that
|
FT_SOURCE_FILE, etc. and added cache-specific macro definitions that
|
||||||
were previously defined in <freetype/ftcache.h>. Added comments to be
|
were previously defined in <freetype/ftcache.h>. Added comments to
|
||||||
included in a new API Reference section.
|
be included in a new API Reference section.
|
||||||
|
|
||||||
* src/*/*: removed the use of FT_SOURCE_FILE, etc.. now, each component
|
|
||||||
needs to added its own directory to the include path at compile time.
|
|
||||||
Modified all "rules.mk" and "descrip.mms" accordingly..
|
|
||||||
|
|
||||||
|
* src/*/*: Removed the use of FT_SOURCE_FILE, etc. Now, each
|
||||||
|
component needs to add its own directory to the include path at
|
||||||
|
compile time. Modified all "rules.mk" and "descrip.mms"
|
||||||
|
accordingly.
|
||||||
|
|
||||||
2001-03-20 Werner Lemberg <wl@gnu.org>
|
2001-03-20 Werner Lemberg <wl@gnu.org>
|
||||||
|
|
||||||
|
@ -36,19 +43,19 @@
|
||||||
* src/cff/cffparse.c (cff_parse_font_bbox): Assign the units per em
|
* src/cff/cffparse.c (cff_parse_font_bbox): Assign the units per em
|
||||||
value an unsigned short value, first by shifting right 16 bits,
|
value an unsigned short value, first by shifting right 16 bits,
|
||||||
then by casting the results to FT_UShort.
|
then by casting the results to FT_UShort.
|
||||||
|
|
||||||
2001-03-17 David Turner <david.turner@freetype.org>
|
2001-03-17 David Turner <david.turner@freetype.org>
|
||||||
|
|
||||||
* src/cid/cidobjs.c, src/cid/cidload.c, src/pcf/pcfread.c,
|
* src/cid/cidobjs.c, src/cid/cidload.c, src/pcf/pcfread.c,
|
||||||
src/type1/t1load.c, src/type1/t1objs.c: added a few casts to remove
|
src/type1/t1load.c, src/type1/t1objs.c: Added a few casts to remove
|
||||||
compiler warnings in pedantic modes..
|
compiler warnings in pedantic modes.
|
||||||
|
|
||||||
* include/config/ft2build.h, include/config/ftheader.h: the file
|
* include/config/ft2build.h, include/config/ftheader.h: The file
|
||||||
"ft2build.h" was renamed to "ftheader.h" to avoid conflicts with the
|
"ft2build.h" was renamed to "ftheader.h" to avoid conflicts with the
|
||||||
top-level <ft2build.h>
|
top-level <ft2build.h>.
|
||||||
|
|
||||||
* include/config/ftheader.h: added new section describing the #include
|
* include/config/ftheader.h: Added new section describing the #include
|
||||||
macros..
|
macros.
|
||||||
|
|
||||||
2001-03-17 Tom Kacvinsky <tjk@ams.org>
|
2001-03-17 Tom Kacvinsky <tjk@ams.org>
|
||||||
|
|
||||||
|
@ -64,7 +71,7 @@
|
||||||
* src/cff/cffdrivr.c (get_cff_glyph_name): New function. Used in
|
* src/cff/cffdrivr.c (get_cff_glyph_name): New function. Used in
|
||||||
cff_get_interface to facilitate getting a glyph name for glyph index
|
cff_get_interface to facilitate getting a glyph name for glyph index
|
||||||
via FT_Get_Glyph_Name().
|
via FT_Get_Glyph_Name().
|
||||||
|
|
||||||
(cff_get_interface): Added support for getting a glyph name via the
|
(cff_get_interface): Added support for getting a glyph name via the
|
||||||
"glyph_name" module interface. Uses the new function
|
"glyph_name" module interface. Uses the new function
|
||||||
get_cff_glyph_name().
|
get_cff_glyph_name().
|
||||||
|
@ -75,7 +82,7 @@
|
||||||
not defined. This is to add support for getting a glyph name from a
|
not defined. This is to add support for getting a glyph name from a
|
||||||
glyph index via FT_Get_Glyph_Name().
|
glyph index via FT_Get_Glyph_Name().
|
||||||
Submitted by Sander van der Wal <svdwal@xs4all.nl>
|
Submitted by Sander van der Wal <svdwal@xs4all.nl>
|
||||||
|
|
||||||
* src/cff/cffgload.c (CFF_Parse_CharStrings): Added support for
|
* src/cff/cffgload.c (CFF_Parse_CharStrings): Added support for
|
||||||
deprecated operator "dotsection".
|
deprecated operator "dotsection".
|
||||||
Submitted by Sander van der Wal <svdwal@xs4all.nl>
|
Submitted by Sander van der Wal <svdwal@xs4all.nl>
|
||||||
|
@ -150,7 +157,7 @@
|
||||||
2001-03-05 Tom Kacvinsky <tjk@ams.org>
|
2001-03-05 Tom Kacvinsky <tjk@ams.org>
|
||||||
|
|
||||||
* src/cff/cffgload.c (CFF_Load_Glyph): Set glyph control data to the
|
* src/cff/cffgload.c (CFF_Load_Glyph): Set glyph control data to the
|
||||||
the Type 2 glyph charstring (used by conversion programs).
|
the Type 2 glyph charstring (used by conversion programs).
|
||||||
Submitted by Ha Shao <hashao@chinese.com>.
|
Submitted by Ha Shao <hashao@chinese.com>.
|
||||||
|
|
||||||
2001-03-04 Antoine Leca <Antoine.Leca@renault.fr>
|
2001-03-04 Antoine Leca <Antoine.Leca@renault.fr>
|
||||||
|
@ -304,7 +311,7 @@
|
||||||
|
|
||||||
2001-01-11 David Turner <david.turner@freetype.org>
|
2001-01-11 David Turner <david.turner@freetype.org>
|
||||||
|
|
||||||
* docs/docmaker.py: Added cross-references generation as well as
|
* docs/docmaker.py: Added cross-references generation as well as
|
||||||
more robust handling of pathname wildcard matching.
|
more robust handling of pathname wildcard matching.
|
||||||
|
|
||||||
2001-01-10 Werner Lemberg <wl@gnu.org>
|
2001-01-10 Werner Lemberg <wl@gnu.org>
|
||||||
|
@ -332,7 +339,7 @@
|
||||||
2001-01-03 Tom Kacvinsky <tjk@ams.org>
|
2001-01-03 Tom Kacvinsky <tjk@ams.org>
|
||||||
|
|
||||||
* src/cff/rules.mk: Use cffgload.{c,h} instead of t2gload.{c,h}.
|
* src/cff/rules.mk: Use cffgload.{c,h} instead of t2gload.{c,h}.
|
||||||
|
|
||||||
* include/freetype/internal/internal.h: Changed to use cfftypes.h
|
* include/freetype/internal/internal.h: Changed to use cfftypes.h
|
||||||
(cfferrs.h) instead of t2types.h (t2errors.h, respectively).
|
(cfferrs.h) instead of t2types.h (t2errors.h, respectively).
|
||||||
|
|
||||||
|
@ -354,7 +361,7 @@
|
||||||
* src/cff/t2gload.h: Renamed cffgload.h.
|
* src/cff/t2gload.h: Renamed cffgload.h.
|
||||||
|
|
||||||
* src/cff/t2gload.c: Renamed cffgload.c
|
* src/cff/t2gload.c: Renamed cffgload.c
|
||||||
|
|
||||||
2000-01-02 Jouk Jansen <joukj@hrem.stm.tudelft.nl>
|
2000-01-02 Jouk Jansen <joukj@hrem.stm.tudelft.nl>
|
||||||
|
|
||||||
* builds/vms: Support files for VMS architecture added.
|
* builds/vms: Support files for VMS architecture added.
|
||||||
|
@ -398,7 +405,7 @@
|
||||||
|
|
||||||
* src/cff/t2gload.c (t2_lookup_glyph_by_stdcharcode,
|
* src/cff/t2gload.c (t2_lookup_glyph_by_stdcharcode,
|
||||||
t2_operator_seac): Added these functions for use in implementing the
|
t2_operator_seac): Added these functions for use in implementing the
|
||||||
seac emulation provided by the Type 2 endchar operator.
|
seac emulation provided by the Type 2 endchar operator.
|
||||||
(T2_Parse_CharStrings): Added seac emulation for the endchar
|
(T2_Parse_CharStrings): Added seac emulation for the endchar
|
||||||
operator.
|
operator.
|
||||||
|
|
||||||
|
@ -406,13 +413,13 @@
|
||||||
CFF_Done_Encoding, CFF_Done_Charset): Extended to load and parse the
|
CFF_Done_Encoding, CFF_Done_Charset): Extended to load and parse the
|
||||||
charset/encoding tables, and free the memory used by them when the
|
charset/encoding tables, and free the memory used by them when the
|
||||||
CFF driver is finished with them. Added tables
|
CFF driver is finished with them. Added tables
|
||||||
|
|
||||||
cff_isoadobe_charset
|
cff_isoadobe_charset
|
||||||
cff_expert_charset
|
cff_expert_charset
|
||||||
cff_expertsubset_charset
|
cff_expertsubset_charset
|
||||||
cff_standard_encoding
|
cff_standard_encoding
|
||||||
cff_expert_encoding
|
cff_expert_encoding
|
||||||
|
|
||||||
so that the encoding/charset parser can handle predefined encodings and
|
so that the encoding/charset parser can handle predefined encodings and
|
||||||
charsets.
|
charsets.
|
||||||
|
|
||||||
|
@ -433,7 +440,7 @@
|
||||||
|
|
||||||
2000-12-21 David Turner <david.turner@freetype.org>
|
2000-12-21 David Turner <david.turner@freetype.org>
|
||||||
|
|
||||||
* src/cid/cidafm.c, src/cid/cidafm.h: removed un-needed files,
|
* src/cid/cidafm.c, src/cid/cidafm.h: removed un-needed files,
|
||||||
we'll work on supporting CID AFM files later I guess :-)
|
we'll work on supporting CID AFM files later I guess :-)
|
||||||
|
|
||||||
2000-12-21 Tom Kacvinsky <tjk@ams.org>
|
2000-12-21 Tom Kacvinsky <tjk@ams.org>
|
||||||
|
@ -459,7 +466,7 @@
|
||||||
|
|
||||||
2000-12-14 David Turner <david.turner@freetype.org>
|
2000-12-14 David Turner <david.turner@freetype.org>
|
||||||
|
|
||||||
Added support for clipped direct rendering in the smooth renderer.
|
Added support for clipped direct rendering in the smooth renderer.
|
||||||
This should not break binary compatibility of existing applications.
|
This should not break binary compatibility of existing applications.
|
||||||
|
|
||||||
* include/freetype/fttypes.h, include/freetype/ftimage.h: Move
|
* include/freetype/fttypes.h, include/freetype/ftimage.h: Move
|
||||||
|
@ -468,7 +475,7 @@
|
||||||
FT_Raster_Flag enumeration.
|
FT_Raster_Flag enumeration.
|
||||||
Add `clip_box' element to FT_Raster_Params structure.
|
Add `clip_box' element to FT_Raster_Params structure.
|
||||||
* src/smooth/ftgrays.c (grays_convert_glyph): Implement it.
|
* src/smooth/ftgrays.c (grays_convert_glyph): Implement it.
|
||||||
|
|
||||||
* INSTALL: Updated installation instructions on Win32, listing the
|
* INSTALL: Updated installation instructions on Win32, listing the
|
||||||
new "make setup list" target used to list supported
|
new "make setup list" target used to list supported
|
||||||
compilers/targets.
|
compilers/targets.
|
||||||
|
@ -483,7 +490,7 @@
|
||||||
to use direct definitions. This is the only way to do these things
|
to use direct definitions. This is the only way to do these things
|
||||||
in a portable way :-( The rest of the code should follow shortly
|
in a portable way :-( The rest of the code should follow shortly
|
||||||
though everything compiles now.
|
though everything compiles now.
|
||||||
|
|
||||||
* builds/compiler/intelc.mk, builds/compiler/watcom.mk: New files.
|
* builds/compiler/intelc.mk, builds/compiler/watcom.mk: New files.
|
||||||
|
|
||||||
* builds/win32/detect.mk: Added support for the Intel C/C++
|
* builds/win32/detect.mk: Added support for the Intel C/C++
|
||||||
|
@ -759,13 +766,13 @@
|
||||||
|
|
||||||
2000-11-22 Tom Kacvinsky <tjk@ams.org>
|
2000-11-22 Tom Kacvinsky <tjk@ams.org>
|
||||||
|
|
||||||
* src/cff/t2objs.c (T2_Init_Face): For pure CFF fonts, set
|
* src/cff/t2objs.c (T2_Init_Face): For pure CFF fonts, set
|
||||||
`root->num_faces' to `cff->num_faces' and set `units_per_EM'
|
`root->num_faces' to `cff->num_faces' and set `units_per_EM'
|
||||||
to 1000.
|
to 1000.
|
||||||
|
|
||||||
* src/cff/t2parse.c (parse_t2_real): Fixed real number parsing
|
* src/cff/t2parse.c (parse_t2_real): Fixed real number parsing
|
||||||
loop.
|
loop.
|
||||||
|
|
||||||
* src/cff/t2load.c (T2_Get_String): Called T2_Get_Name with a
|
* src/cff/t2load.c (T2_Get_String): Called T2_Get_Name with a
|
||||||
sid that was off by one.
|
sid that was off by one.
|
||||||
|
|
||||||
|
|
12
INSTALL
12
INSTALL
|
@ -60,14 +60,14 @@ I. From the command line
|
||||||
II. In your own environment (IDE)
|
II. In your own environment (IDE)
|
||||||
---------------------------------
|
---------------------------------
|
||||||
|
|
||||||
You need to add the directories "freetype2/include" to
|
You need to add the directories "freetype2/include" to your include
|
||||||
your include path when compiling the library.
|
path when compiling the library.
|
||||||
|
|
||||||
FreeType 2 is made of several components, each one of them is located
|
FreeType 2 is made of several components; each one of them is
|
||||||
in a subdirectory of "freetype2/src". For example, 'freetype2/src/truetype/'
|
located in a subdirectory of "freetype2/src". For example,
|
||||||
contains the TrueType font driver.
|
`freetype2/src/truetype/' contains the TrueType font driver.
|
||||||
|
|
||||||
DO NOT COMPILE ALL C FILES !! Rather, compile the following ones:
|
DO NOT COMPILE ALL C FILES! Rather, compile the following ones:
|
||||||
|
|
||||||
-- base components (required)
|
-- base components (required)
|
||||||
|
|
||||||
|
|
|
@ -86,12 +86,12 @@ ifeq ($(PLATFORM),win32)
|
||||||
.PHONY: visualc
|
.PHONY: visualc
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifneq ($(findstring intelc,$(MAKECMDGOALS)),) # Intel C/C++
|
ifneq ($(findstring intelc,$(MAKECMDGOALS)),) # Intel C/C++
|
||||||
CONFIG_FILE := w32-intl.mk
|
CONFIG_FILE := w32-intl.mk
|
||||||
SEP := $(BACKSLASH)
|
SEP := $(BACKSLASH)
|
||||||
CC := cl
|
CC := cl
|
||||||
visualc: setup
|
visualc: setup
|
||||||
.PHONY: visualc
|
.PHONY: intelc
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifneq ($(findstring watcom,$(MAKECMDGOALS)),) # Watcom C/C++
|
ifneq ($(findstring watcom,$(MAKECMDGOALS)),) # Watcom C/C++
|
||||||
|
|
28
docs/BUILD
28
docs/BUILD
|
@ -13,8 +13,8 @@ instructions on how to compile the library on your favorite platform.
|
||||||
I. QUICK COMMAND-LINE GUIDE
|
I. QUICK COMMAND-LINE GUIDE
|
||||||
---------------------------
|
---------------------------
|
||||||
|
|
||||||
THE FOLLOWING WILL ONLY WORK WITH GNU MAKE, IT WILL FAIL MISERABLY
|
THE FOLLOWING WILL ONLY WORK WITH GNU MAKE, IT WILL FAIL MISERABLY
|
||||||
WITH OTHER MAKE TOOLS, FOR EXAMPLE "BSD MAKE"..
|
WITH OTHER MAKE TOOLS, FOR EXAMPLE "BSD MAKE".
|
||||||
|
|
||||||
Install GNU Make (version 3.78.1 or newer), then try the following
|
Install GNU Make (version 3.78.1 or newer), then try the following
|
||||||
on Unix or any system with gcc:
|
on Unix or any system with gcc:
|
||||||
|
@ -62,8 +62,8 @@ II. COMMAND-LINE COMPILATION
|
||||||
Make -- trying to build the library with any other Make tool will
|
Make -- trying to build the library with any other Make tool will
|
||||||
*fail*.
|
*fail*.
|
||||||
|
|
||||||
NEARLY ALL OTHER MAKE TOOLS WILL FAIL, INCLUDING "BSD MAKE", SO REALLY
|
NEARLY ALL OTHER MAKE TOOLS WILL FAIL, INCLUDING "BSD MAKE", SO
|
||||||
INSTALL A RECENT VERSION OF GNU MAKE ON YOUR SYSTEM !!
|
REALLY INSTALL A RECENT VERSION OF GNU MAKE ON YOUR SYSTEM!
|
||||||
|
|
||||||
Make sure that you are invoking GNU Make from the command line, by
|
Make sure that you are invoking GNU Make from the command line, by
|
||||||
typing something like:
|
typing something like:
|
||||||
|
@ -72,7 +72,7 @@ II. COMMAND-LINE COMPILATION
|
||||||
|
|
||||||
to display its version number.
|
to display its version number.
|
||||||
|
|
||||||
VERSION 3.78.1 OR NEWER IS NEEDED !!.
|
VERSION 3.78.1 OR NEWER IS NEEDED!
|
||||||
|
|
||||||
b. Invoke `make'
|
b. Invoke `make'
|
||||||
|
|
||||||
|
@ -208,7 +208,7 @@ III. DETAILED COMPILATION PROCEDURE
|
||||||
src/truetype/truetype.c - the TrueType font driver
|
src/truetype/truetype.c - the TrueType font driver
|
||||||
src/type1/type1.c - the Type 1 font driver
|
src/type1/type1.c - the Type 1 font driver
|
||||||
|
|
||||||
The last module of FreeType 2, "winfonts" (implementing support for
|
The last module of FreeType 2, `winfonts' (implementing support for
|
||||||
Windows FNT format), is a single file.
|
Windows FNT format), is a single file.
|
||||||
|
|
||||||
To compile one component, do the following:
|
To compile one component, do the following:
|
||||||
|
@ -216,18 +216,18 @@ III. DETAILED COMPILATION PROCEDURE
|
||||||
- Add the top-level `include' directory to your compilation
|
- Add the top-level `include' directory to your compilation
|
||||||
include path
|
include path
|
||||||
|
|
||||||
- Add the `src/<component>' directory to your compilation include path,
|
- Add the `src/<component>' directory to your compilation include
|
||||||
or simply 'cd' to the component's source directory
|
path, or simply `cd' to the component's source directory.
|
||||||
|
|
||||||
- Compile the component `source' file (see list below); you don't
|
- Compile the component `source' file (see list below); you don't
|
||||||
need to be in the component's directory if you added `src/<component>'
|
need to be in the component's directory if you added
|
||||||
to your include path..
|
`src/<component>' to your include path.
|
||||||
|
|
||||||
For example, the following line can be used to compile the truetype
|
For example, the following line can be used to compile the truetype
|
||||||
driver on Unix:
|
driver on Unix:
|
||||||
|
|
||||||
cd freetype2/
|
cd freetype2/
|
||||||
cc -c -Iinclude -Isrc/truetype src/truetype/truetype.c
|
cc -c -Iinclude -Isrc/truetype src/truetype/truetype.c
|
||||||
|
|
||||||
Alternatively:
|
Alternatively:
|
||||||
|
|
||||||
|
@ -252,7 +252,7 @@ III. DETAILED COMPILATION PROCEDURE
|
||||||
IV. Support for flat-directory compilation
|
IV. Support for flat-directory compilation
|
||||||
------------------------------------------
|
------------------------------------------
|
||||||
|
|
||||||
It is possible to put all FreeType 2 source files into a single
|
It is possible to put all FreeType 2 source files into a single
|
||||||
directory, with the exception of the `include' hierarchy.
|
directory, with the exception of the `include' hierarchy.
|
||||||
|
|
||||||
1. Copy all files in current directory:
|
1. Copy all files in current directory:
|
||||||
|
@ -270,7 +270,7 @@ IV. Support for flat-directory compilation
|
||||||
cc -c -Ifreetype2/include ftbase.c
|
cc -c -Ifreetype2/include ftbase.c
|
||||||
etc.
|
etc.
|
||||||
|
|
||||||
You don't need to define the FT_FLAT_COMPILATION macro (as this was required
|
You don't need to define the FT_FLAT_COMPILATION macro (as this was
|
||||||
in previous releases of FreeType 2)
|
required in previous releases of FreeType 2).
|
||||||
|
|
||||||
End of file
|
End of file
|
||||||
|
|
|
@ -901,12 +901,13 @@ class DocSectionList:
|
||||||
# provide a new one.
|
# provide a new one.
|
||||||
#
|
#
|
||||||
if abstract:
|
if abstract:
|
||||||
section.block.print_error( "duplicate section definition for " +
|
section.block.print_error(
|
||||||
"'" + name + "'\n" +
|
"duplicate section definition for " +
|
||||||
"previous definition in " +
|
"'" + name + "'\n" +
|
||||||
"'" + section.block.location() + "'\n" +
|
"previous definition in " +
|
||||||
"second definition in " +
|
"'" + section.block.location() + "'\n" +
|
||||||
"'" + block.location() + "'" )
|
"second definition in " +
|
||||||
|
"'" + block.location() + "'" )
|
||||||
else:
|
else:
|
||||||
# The old section didn't contain an abstract; we are
|
# The old section didn't contain an abstract; we are
|
||||||
# now going to replace it.
|
# now going to replace it.
|
||||||
|
|
|
@ -60,318 +60,369 @@
|
||||||
/* */
|
/* */
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
|
||||||
/*************************************************************************
|
/*************************************************************************/
|
||||||
*
|
/* */
|
||||||
* <Section> header_file_macros
|
/* <Section> */
|
||||||
*
|
/* header_file_macros */
|
||||||
* <Title> Header File Macros
|
/* */
|
||||||
*
|
/* <Title> */
|
||||||
* <Abstract>
|
/* Header File Macros */
|
||||||
* Macro definitions used to #include specific header files
|
/* */
|
||||||
*
|
/* <Abstract> */
|
||||||
* <Description>
|
/* Macro definitions used to #include specific header files. */
|
||||||
* The following macros are defined to the name of specific FreeType 2
|
/* */
|
||||||
* header files. They can be used directly in #include statements as in:
|
/* <Description> */
|
||||||
*
|
/* The following macros are defined to the name of specific */
|
||||||
* {
|
/* FreeType 2 header files. They can be used directly in #include */
|
||||||
* #include FT_FREETYPE_H
|
/* statements as in: */
|
||||||
* #include FT_MULTIPLE_MASTERS_H
|
/* */
|
||||||
* #include FT_GLYPH_H
|
/* { */
|
||||||
* }
|
/* #include FT_FREETYPE_H */
|
||||||
*
|
/* #include FT_MULTIPLE_MASTERS_H */
|
||||||
* there are several reasons why we're now using macros to name
|
/* #include FT_GLYPH_H */
|
||||||
* public header files. The first one is that the macros are not
|
/* } */
|
||||||
* limited to the infamous 8.3 naming rule required by Dos
|
/* */
|
||||||
* (and FT_MULTIPLE_MASTERS_H is a lot more meaningful than "ftmm.h")
|
/* There are several reasons why we are now using macros to name */
|
||||||
*
|
/* public header files. The first one is that such macros are not */
|
||||||
* The second reason is that is allows for more flexibility in the way
|
/* limited to the infamous 8.3 naming rule required by DOS (and */
|
||||||
* FreeType 2 is installed on a given system..
|
/* `FT_MULTIPLE_MASTERS_H' is a lot more meaningful than `ftmm.h'). */
|
||||||
*
|
/* */
|
||||||
*/
|
/* The second reason is that is allows for more flexibility in the */
|
||||||
|
/* way FreeType 2 is installed on a given system. */
|
||||||
|
/* */
|
||||||
|
/*************************************************************************/
|
||||||
|
|
||||||
/* configuration files */
|
/* configuration files */
|
||||||
/*************************************************************************
|
|
||||||
*
|
/*************************************************************************/
|
||||||
* @macro: FT_CONFIG_CONFIG_H
|
/* */
|
||||||
*
|
/* @macro: */
|
||||||
* @description:
|
/* FT_CONFIG_CONFIG_H */
|
||||||
* a macro used in #include statements to name the file containing
|
/* */
|
||||||
* FreeType 2 configuration
|
/* @description: */
|
||||||
*/
|
/* A macro used in #include statements to name the file containing */
|
||||||
|
/* FreeType 2 configuration data. */
|
||||||
|
/* */
|
||||||
#ifndef FT_CONFIG_CONFIG_H
|
#ifndef FT_CONFIG_CONFIG_H
|
||||||
#define FT_CONFIG_CONFIG_H <freetype/config/ftconfig.h>
|
#define FT_CONFIG_CONFIG_H <freetype/config/ftconfig.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*************************************************************************
|
|
||||||
*
|
/*************************************************************************/
|
||||||
* @macro: FT_CONFIG_OPTIONS_H
|
/* */
|
||||||
*
|
/* @macro: */
|
||||||
* @description:
|
/* FT_CONFIG_OPTIONS_H */
|
||||||
* a macro used in #include statements to name the file containing
|
/* */
|
||||||
* FreeType 2 project-specific configuration options
|
/* @description: */
|
||||||
*/
|
/* A macro used in #include statements to name the file containing */
|
||||||
|
/* FreeType 2 project-specific configuration options. */
|
||||||
|
/* */
|
||||||
#ifndef FT_CONFIG_OPTIONS_H
|
#ifndef FT_CONFIG_OPTIONS_H
|
||||||
#define FT_CONFIG_OPTIONS_H <freetype/config/ftoption.h>
|
#define FT_CONFIG_OPTIONS_H <freetype/config/ftoption.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*************************************************************************
|
|
||||||
*
|
/*************************************************************************/
|
||||||
* @macro: FT_CONFIG_MODULES_H
|
/* */
|
||||||
*
|
/* @macro: */
|
||||||
* @description:
|
/* FT_CONFIG_MODULES_H */
|
||||||
* a macro used in #include statements to name the file containing
|
/* */
|
||||||
* the list of FreeType 2 modules that are statically linked to new
|
/* @description: */
|
||||||
* library instances in @FT_Init_FreeType
|
/* A macro used in #include statements to name the file containing */
|
||||||
*/
|
/* the list of FreeType 2 modules that are statically linked to new */
|
||||||
|
/* library instances in @FT_Init_FreeType. */
|
||||||
|
/* */
|
||||||
#ifndef FT_CONFIG_MODULES_H
|
#ifndef FT_CONFIG_MODULES_H
|
||||||
#define FT_CONFIG_MODULES_H <freetype/config/ftmodule.h>
|
#define FT_CONFIG_MODULES_H <freetype/config/ftmodule.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* public headers */
|
/* public headers */
|
||||||
/*************************************************************************
|
|
||||||
*
|
/*************************************************************************/
|
||||||
* @macro: FT_FREETYPE_H
|
/* */
|
||||||
*
|
/* @macro: */
|
||||||
* @description:
|
/* FT_FREETYPE_H */
|
||||||
* a macro used in #include statements to name the file containing
|
/* */
|
||||||
* the base FreeType 2 API
|
/* @description: */
|
||||||
*/
|
/* A macro used in #include statements to name the file containing */
|
||||||
#define FT_FREETYPE_H <freetype/freetype.h>
|
/* the base FreeType 2 API. */
|
||||||
|
/* */
|
||||||
|
#define FT_FREETYPE_H <freetype/freetype.h>
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************
|
/*************************************************************************/
|
||||||
*
|
/* */
|
||||||
* @macro: FT_ERRORS_H
|
/* @macro: */
|
||||||
*
|
/* FT_ERRORS_H */
|
||||||
* @description:
|
/* */
|
||||||
* a macro used in #include statements to name the file containing
|
/* @description: */
|
||||||
* the list of FreeType 2 error codes (and messages).
|
/* A macro used in #include statements to name the file containing */
|
||||||
*
|
/* the list of FreeType 2 error codes (and messages). */
|
||||||
* it is included by @FT_FREETYPE_H
|
/* */
|
||||||
*/
|
/* It is included by @FT_FREETYPE_H. */
|
||||||
#define FT_ERRORS_H <freetype/fterrors.h>
|
/* */
|
||||||
|
#define FT_ERRORS_H <freetype/fterrors.h>
|
||||||
/*************************************************************************
|
|
||||||
*
|
|
||||||
* @macro: FT_SYSTEM_H
|
|
||||||
*
|
|
||||||
* @description:
|
|
||||||
* a macro used in #include statements to name the file containing
|
|
||||||
* the FreeType 2 interface to low-level operations (i.e. memory management
|
|
||||||
* and stream i/o)
|
|
||||||
*
|
|
||||||
* it is included by @FT_FREETYPE_H
|
|
||||||
*/
|
|
||||||
#define FT_SYSTEM_H <freetype/ftsystem.h>
|
|
||||||
|
|
||||||
/*************************************************************************
|
|
||||||
*
|
|
||||||
* @macro: FT_IMAGE_H
|
|
||||||
*
|
|
||||||
* @description:
|
|
||||||
* a macro used in #include statements to name the file containing
|
|
||||||
* types definitions related to glyph images (i.e. bitmaps, outlines,
|
|
||||||
* scan-converter parameters)
|
|
||||||
*
|
|
||||||
* it is included by @FT_FREETYPE_H
|
|
||||||
*/
|
|
||||||
#define FT_IMAGE_H <freetype/ftimage.h>
|
|
||||||
|
|
||||||
/*************************************************************************
|
|
||||||
*
|
|
||||||
* @macro: FT_TYPES_H
|
|
||||||
*
|
|
||||||
* @description:
|
|
||||||
* a macro used in #include statements to name the file containing
|
|
||||||
* the basic data types defined by FreeType 2
|
|
||||||
*
|
|
||||||
* it is included by @FT_FREETYPE_H
|
|
||||||
*/
|
|
||||||
#define FT_TYPES_H <freetype/fttypes.h>
|
|
||||||
|
|
||||||
/*************************************************************************
|
|
||||||
*
|
|
||||||
* @macro: FT_LIST_H
|
|
||||||
*
|
|
||||||
* @description:
|
|
||||||
* a macro used in #include statements to name the file containing
|
|
||||||
* the list management API of FreeType 2
|
|
||||||
*
|
|
||||||
* (most applications will never need to include this file)
|
|
||||||
*/
|
|
||||||
#define FT_LIST_H <freetype/ftlist.h>
|
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************
|
/*************************************************************************/
|
||||||
*
|
/* */
|
||||||
* @macro: FT_OUTLINE_H
|
/* @macro: */
|
||||||
*
|
/* FT_SYSTEM_H */
|
||||||
* @description:
|
/* */
|
||||||
* a macro used in #include statements to name the file containing
|
/* @description: */
|
||||||
* the scalable outline management API of FreeType 2
|
/* A macro used in #include statements to name the file containing */
|
||||||
*/
|
/* the FreeType 2 interface to low-level operations (i.e. memory */
|
||||||
#define FT_OUTLINE_H <freetype/ftoutln.h>
|
/* management and stream i/o). */
|
||||||
|
/* */
|
||||||
|
/* It is included by @FT_FREETYPE_H. */
|
||||||
|
/* */
|
||||||
|
#define FT_SYSTEM_H <freetype/ftsystem.h>
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************
|
/*************************************************************************/
|
||||||
*
|
/* */
|
||||||
* @macro: FT_MODULE_H
|
/* @macro: */
|
||||||
*
|
/* FT_IMAGE_H */
|
||||||
* @description:
|
/* */
|
||||||
* a macro used in #include statements to name the file containing
|
/* @description: */
|
||||||
* the module management API of FreeType 2
|
/* A macro used in #include statements to name the file containing */
|
||||||
*/
|
/* types definitions related to glyph images (i.e. bitmaps, outlines, */
|
||||||
#define FT_MODULE_H <freetype/ftmodule.h>
|
/* scan-converter parameters). */
|
||||||
|
/* */
|
||||||
|
/* It is included by @FT_FREETYPE_H. */
|
||||||
|
/* */
|
||||||
|
#define FT_IMAGE_H <freetype/ftimage.h>
|
||||||
|
|
||||||
/*************************************************************************
|
|
||||||
*
|
|
||||||
* @macro: FT_RENDER_H
|
|
||||||
*
|
|
||||||
* @description:
|
|
||||||
* a macro used in #include statements to name the file containing
|
|
||||||
* the renderer module management API of FreeType 2
|
|
||||||
*/
|
|
||||||
#define FT_RENDER_H <freetype/ftrender.h>
|
|
||||||
|
|
||||||
/*************************************************************************
|
/*************************************************************************/
|
||||||
*
|
/* */
|
||||||
* @macro: FT_TYPE1_TABLES_H
|
/* @macro: */
|
||||||
*
|
/* FT_TYPES_H */
|
||||||
* @description:
|
/* */
|
||||||
* a macro used in #include statements to name the file containing
|
/* @description: */
|
||||||
* the types and API specific to the Type 1 format.
|
/* A macro used in #include statements to name the file containing */
|
||||||
*/
|
/* the basic data types defined by FreeType 2. */
|
||||||
#define FT_TYPE1_TABLES_H <freetype/t1tables.h>
|
/* */
|
||||||
|
/* It is included by @FT_FREETYPE_H. */
|
||||||
|
/* */
|
||||||
|
#define FT_TYPES_H <freetype/fttypes.h>
|
||||||
|
|
||||||
/*************************************************************************
|
|
||||||
*
|
|
||||||
* @macro: FT_TRUETYPE_IDS_H
|
|
||||||
*
|
|
||||||
* @description:
|
|
||||||
* a macro used in #include statements to name the file containing
|
|
||||||
* the enumeration values used to identify name strings, languages,
|
|
||||||
* encodings, etc.. This file really contains a _large_ set of
|
|
||||||
* constant macro definitions, taken from the TrueType and OpenType
|
|
||||||
* specs..
|
|
||||||
*/
|
|
||||||
#define FT_TRUETYPE_IDS_H <freetype/ttnameid.h>
|
|
||||||
|
|
||||||
/*************************************************************************
|
/*************************************************************************/
|
||||||
*
|
/* */
|
||||||
* @macro: FT_TRUETYPE_TABLES_H
|
/* @macro: */
|
||||||
*
|
/* FT_LIST_H */
|
||||||
* @description:
|
/* */
|
||||||
* a macro used in #include statements to name the file containing
|
/* @description: */
|
||||||
* the types and API specific to the TrueType (as well as OpenType) format.
|
/* A macro used in #include statements to name the file containing */
|
||||||
*/
|
/* the list management API of FreeType 2. */
|
||||||
#define FT_TRUETYPE_TABLES_H <freetype/tttables.h>
|
/* */
|
||||||
|
/* (Most applications will never need to include this file.) */
|
||||||
|
/* */
|
||||||
|
#define FT_LIST_H <freetype/ftlist.h>
|
||||||
|
|
||||||
/*************************************************************************
|
|
||||||
*
|
|
||||||
* @macro: FT_TRUETYPE_TAGS_H
|
|
||||||
*
|
|
||||||
* @description:
|
|
||||||
* a macro used in #include statements to name the file containing
|
|
||||||
* the definitions of TrueType 4-byte "tags" used to identify blocks
|
|
||||||
* in SFNT-based font formats (i.e. TrueType and OpenType)
|
|
||||||
*/
|
|
||||||
#define FT_TRUETYPE_TAGS_H <freetype/tttags.h>
|
|
||||||
|
|
||||||
/*************************************************************************
|
/*************************************************************************/
|
||||||
*
|
/* */
|
||||||
* @macro: FT_GLYPH_H
|
/* @macro: */
|
||||||
*
|
/* FT_OUTLINE_H */
|
||||||
* @description:
|
/* */
|
||||||
* a macro used in #include statements to name the file containing
|
/* @description: */
|
||||||
* the API of the optional glyph management component.
|
/* A macro used in #include statements to name the file containing */
|
||||||
*/
|
/* the scalable outline management API of FreeType 2. */
|
||||||
#define FT_GLYPH_H <freetype/ftglyph.h>
|
/* */
|
||||||
|
#define FT_OUTLINE_H <freetype/ftoutln.h>
|
||||||
|
|
||||||
/*************************************************************************
|
|
||||||
*
|
|
||||||
* @macro: FT_BBOX_H
|
|
||||||
*
|
|
||||||
* @description:
|
|
||||||
* a macro used in #include statements to name the file containing
|
|
||||||
* the API of the optional exact bounding box computation routines
|
|
||||||
*/
|
|
||||||
#define FT_BBOX_H <freetype/ftbbox.h>
|
|
||||||
|
|
||||||
/*************************************************************************
|
/*************************************************************************/
|
||||||
*
|
/* */
|
||||||
* @macro: FT_CACHE_H
|
/* @macro: */
|
||||||
*
|
/* FT_MODULE_H */
|
||||||
* @description:
|
/* */
|
||||||
* a macro used in #include statements to name the file containing
|
/* @description: */
|
||||||
* the API of the optional FreeType 2 cache sub-system.
|
/* A macro used in #include statements to name the file containing */
|
||||||
*/
|
/* the module management API of FreeType 2. */
|
||||||
#define FT_CACHE_H <freetype/ftcache.h>
|
/* */
|
||||||
|
#define FT_MODULE_H <freetype/ftmodule.h>
|
||||||
|
|
||||||
/*************************************************************************
|
|
||||||
*
|
|
||||||
* @macro: FT_CACHE_IMAGE_H
|
|
||||||
*
|
|
||||||
* @description:
|
|
||||||
* a macro used in #include statements to name the file containing
|
|
||||||
* the "glyph image" API of the FreeType 2 cache sub-system
|
|
||||||
*
|
|
||||||
* it is used to define a cache for @FT_Glyph elements. You can also
|
|
||||||
* see the API defined in @FT_CACHE_SMALL_BITMAPS_H if you only need
|
|
||||||
* to store small glyph bitmaps, as it will use less memory
|
|
||||||
*/
|
|
||||||
#define FT_CACHE_IMAGE_H <freetype/cache/ftcimage.h>
|
|
||||||
|
|
||||||
/*************************************************************************
|
/*************************************************************************/
|
||||||
*
|
/* */
|
||||||
* @macro: FT_CACHE_SMALL_BITMAPS_H
|
/* @macro: */
|
||||||
*
|
/* FT_RENDER_H */
|
||||||
* @description:
|
/* */
|
||||||
* a macro used in #include statements to name the file containing
|
/* @description: */
|
||||||
* the "small bitmaps" API of the FreeType 2 cache sub-system
|
/* A macro used in #include statements to name the file containing */
|
||||||
*
|
/* the renderer module management API of FreeType 2. */
|
||||||
* it is used to define a cache for small glyph bitmaps in a relatively
|
/* */
|
||||||
* memory-efficient way. You can also use the API defined in
|
#define FT_RENDER_H <freetype/ftrender.h>
|
||||||
* @FT_CACHE_IMAGE_H if you want to cache arbitrary glyph images, including
|
|
||||||
* scalable outlines.
|
|
||||||
*/
|
|
||||||
#define FT_CACHE_SMALL_BITMAPS_H <freetype/cache/ftcsbits.h>
|
|
||||||
|
|
||||||
/*************************************************************************
|
|
||||||
*
|
|
||||||
* @macro: FT_MAC_H
|
|
||||||
*
|
|
||||||
* @description:
|
|
||||||
* a macro used in #include statements to name the file containing
|
|
||||||
* the Macintosh-specific FreeType 2 API. The latter is used to
|
|
||||||
* access fonts embedded in resource forks..
|
|
||||||
*
|
|
||||||
* this header file must be explicitely included by client applications
|
|
||||||
* compiled on the Mac (note that the base API still works though)
|
|
||||||
*/
|
|
||||||
#define FT_MAC_H <freetype/ftmac.h>
|
|
||||||
|
|
||||||
/*************************************************************************
|
/*************************************************************************/
|
||||||
*
|
/* */
|
||||||
* @macro: FT_MULTIPLE_MASTERS_H
|
/* @macro: */
|
||||||
*
|
/* FT_TYPE1_TABLES_H */
|
||||||
* @description:
|
/* */
|
||||||
* a macro used in #include statements to name the file containing
|
/* @description: */
|
||||||
* the optional multiple-masters management API of FreeType 2
|
/* A macro used in #include statements to name the file containing */
|
||||||
*/
|
/* the types and API specific to the Type 1 format. */
|
||||||
|
/* */
|
||||||
|
#define FT_TYPE1_TABLES_H <freetype/t1tables.h>
|
||||||
|
|
||||||
|
|
||||||
|
/*************************************************************************/
|
||||||
|
/* */
|
||||||
|
/* @macro: */
|
||||||
|
/* FT_TRUETYPE_IDS_H */
|
||||||
|
/* */
|
||||||
|
/* @description: */
|
||||||
|
/* A macro used in #include statements to name the file containing */
|
||||||
|
/* the enumeration values used to identify name strings, languages, */
|
||||||
|
/* encodings, etc. This file really contains a _large_ set of */
|
||||||
|
/* constant macro definitions, taken from the TrueType and OpenType */
|
||||||
|
/* specifications. */
|
||||||
|
/* */
|
||||||
|
#define FT_TRUETYPE_IDS_H <freetype/ttnameid.h>
|
||||||
|
|
||||||
|
|
||||||
|
/*************************************************************************/
|
||||||
|
/* */
|
||||||
|
/* @macro: */
|
||||||
|
/* FT_TRUETYPE_TABLES_H */
|
||||||
|
/* */
|
||||||
|
/* @description: */
|
||||||
|
/* A macro used in #include statements to name the file containing */
|
||||||
|
/* the types and API specific to the TrueType (as well as OpenType) */
|
||||||
|
/* format. */
|
||||||
|
/* */
|
||||||
|
#define FT_TRUETYPE_TABLES_H <freetype/tttables.h>
|
||||||
|
|
||||||
|
|
||||||
|
/*************************************************************************/
|
||||||
|
/* */
|
||||||
|
/* @macro: */
|
||||||
|
/* FT_TRUETYPE_TAGS_H */
|
||||||
|
/* */
|
||||||
|
/* @description: */
|
||||||
|
/* A macro used in #include statements to name the file containing */
|
||||||
|
/* the definitions of TrueType 4-byte `tags' used to identify blocks */
|
||||||
|
/* in SFNT-based font formats (i.e. TrueType and OpenType). */
|
||||||
|
/* */
|
||||||
|
#define FT_TRUETYPE_TAGS_H <freetype/tttags.h>
|
||||||
|
|
||||||
|
|
||||||
|
/*************************************************************************/
|
||||||
|
/* */
|
||||||
|
/* @macro: */
|
||||||
|
/* FT_GLYPH_H */
|
||||||
|
/* */
|
||||||
|
/* @description: */
|
||||||
|
/* A macro used in #include statements to name the file containing */
|
||||||
|
/* the API of the optional glyph management component. */
|
||||||
|
/* */
|
||||||
|
#define FT_GLYPH_H <freetype/ftglyph.h>
|
||||||
|
|
||||||
|
|
||||||
|
/*************************************************************************/
|
||||||
|
/* */
|
||||||
|
/* @macro: */
|
||||||
|
/* FT_BBOX_H */
|
||||||
|
/* */
|
||||||
|
/* @description: */
|
||||||
|
/* A macro used in #include statements to name the file containing */
|
||||||
|
/* the API of the optional exact bounding box computation routines. */
|
||||||
|
/* */
|
||||||
|
#define FT_BBOX_H <freetype/ftbbox.h>
|
||||||
|
|
||||||
|
|
||||||
|
/*************************************************************************/
|
||||||
|
/* */
|
||||||
|
/* @macro: */
|
||||||
|
/* FT_CACHE_H */
|
||||||
|
/* */
|
||||||
|
/* @description: */
|
||||||
|
/* A macro used in #include statements to name the file containing */
|
||||||
|
/* the API of the optional FreeType 2 cache sub-system. */
|
||||||
|
/* */
|
||||||
|
#define FT_CACHE_H <freetype/ftcache.h>
|
||||||
|
|
||||||
|
|
||||||
|
/*************************************************************************/
|
||||||
|
/* */
|
||||||
|
/* @macro: */
|
||||||
|
/* FT_CACHE_IMAGE_H */
|
||||||
|
/* */
|
||||||
|
/* @description: */
|
||||||
|
/* A macro used in #include statements to name the file containing */
|
||||||
|
/* the `glyph image' API of the FreeType 2 cache sub-system. */
|
||||||
|
/* */
|
||||||
|
/* It is used to define a cache for @FT_Glyph elements. You can also */
|
||||||
|
/* see the API defined in @FT_CACHE_SMALL_BITMAPS_H if you only need */
|
||||||
|
/* to store small glyph bitmaps, as it will use less memory. */
|
||||||
|
/* */
|
||||||
|
#define FT_CACHE_IMAGE_H <freetype/cache/ftcimage.h>
|
||||||
|
|
||||||
|
|
||||||
|
/*************************************************************************/
|
||||||
|
/* */
|
||||||
|
/* @macro: */
|
||||||
|
/* FT_CACHE_SMALL_BITMAPS_H */
|
||||||
|
/* */
|
||||||
|
/* @description: */
|
||||||
|
/* A macro used in #include statements to name the file containing */
|
||||||
|
/* the `small bitmaps' API of the FreeType 2 cache sub-system. */
|
||||||
|
/* */
|
||||||
|
/* It is used to define a cache for small glyph bitmaps in a */
|
||||||
|
/* relatively memory-efficient way. You can also use the API defined */
|
||||||
|
/* in @FT_CACHE_IMAGE_H if you want to cache arbitrary glyph images, */
|
||||||
|
/* including scalable outlines. */
|
||||||
|
/* */
|
||||||
|
#define FT_CACHE_SMALL_BITMAPS_H <freetype/cache/ftcsbits.h>
|
||||||
|
|
||||||
|
|
||||||
|
/*************************************************************************/
|
||||||
|
/* */
|
||||||
|
/* @macro: */
|
||||||
|
/* FT_MAC_H */
|
||||||
|
/* */
|
||||||
|
/* @description: */
|
||||||
|
/* A macro used in #include statements to name the file containing */
|
||||||
|
/* the Macintosh-specific FreeType 2 API. The latter is used to */
|
||||||
|
/* access fonts embedded in resource forks. */
|
||||||
|
/* */
|
||||||
|
/* This header file must be explicitly included by client */
|
||||||
|
/* applications compiled on the Mac (note that the base API still */
|
||||||
|
/* works though). */
|
||||||
|
/* */
|
||||||
|
#define FT_MAC_H <freetype/ftmac.h>
|
||||||
|
|
||||||
|
|
||||||
|
/*************************************************************************/
|
||||||
|
/* */
|
||||||
|
/* @macro: */
|
||||||
|
/* FT_MULTIPLE_MASTERS_H */
|
||||||
|
/* */
|
||||||
|
/* @description: */
|
||||||
|
/* A macro used in #include statements to name the file containing */
|
||||||
|
/* the optional multiple-masters management API of FreeType 2. */
|
||||||
|
/* */
|
||||||
#define FT_MULTIPLE_MASTERS_H <freetype/ftmm.h>
|
#define FT_MULTIPLE_MASTERS_H <freetype/ftmm.h>
|
||||||
|
|
||||||
/*************************************************************************
|
|
||||||
*
|
|
||||||
* @macro: FT_SFNT_NAMES_H
|
|
||||||
*
|
|
||||||
* @description:
|
|
||||||
* a macro used in #include statements to name the file containing
|
|
||||||
* the optional FreeType 2 API used to access embedded "name" strings
|
|
||||||
* in SFNT-based font formats (i.e. TrueType and OpenType)
|
|
||||||
*/
|
|
||||||
#define FT_SFNT_NAMES_H <freetype/ftsnames.h>
|
|
||||||
|
|
||||||
/* */
|
/*************************************************************************/
|
||||||
|
/* */
|
||||||
|
/* @macro: */
|
||||||
|
/* FT_SFNT_NAMES_H */
|
||||||
|
/* */
|
||||||
|
/* @description: */
|
||||||
|
/* A macro used in #include statements to name the file containing */
|
||||||
|
/* the optional FreeType 2 API used to access embedded `name' strings */
|
||||||
|
/* in SFNT-based font formats (i.e. TrueType and OpenType). */
|
||||||
|
/* */
|
||||||
|
#define FT_SFNT_NAMES_H <freetype/ftsnames.h>
|
||||||
|
|
||||||
|
/* */
|
||||||
|
|
||||||
|
|
||||||
#define FT_SYNTHESIS_H <freetype/ftsynth.h>
|
#define FT_SYNTHESIS_H <freetype/ftsynth.h>
|
||||||
|
|
||||||
|
@ -382,6 +433,7 @@
|
||||||
#define FT_CACHE_INTERNAL_CHUNK_H <freetype/cache/ftcchunk.h>
|
#define FT_CACHE_INTERNAL_CHUNK_H <freetype/cache/ftcchunk.h>
|
||||||
|
|
||||||
/* now include internal headers definitions from <freetype/internal/...> */
|
/* now include internal headers definitions from <freetype/internal/...> */
|
||||||
|
|
||||||
#define FT_INTERNAL_INTERNAL_H <freetype/internal/internal.h>
|
#define FT_INTERNAL_INTERNAL_H <freetype/internal/internal.h>
|
||||||
#include FT_INTERNAL_INTERNAL_H
|
#include FT_INTERNAL_INTERNAL_H
|
||||||
|
|
||||||
|
|
|
@ -276,9 +276,9 @@ FT_BEGIN_HEADER
|
||||||
/* FT_Offset */
|
/* FT_Offset */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* This is equivalent to the ANSI C "size_t" type, i.e. it's the */
|
/* This is equivalent to the ANSI C `size_t' type, i.e. the largest */
|
||||||
/* largest _unsigned_ integer type used to express a file size or */
|
/* _unsigned_ integer type used to express a file size or position, */
|
||||||
/* position, or a memory block size. */
|
/* or a memory block size. */
|
||||||
/* */
|
/* */
|
||||||
typedef size_t FT_Offset;
|
typedef size_t FT_Offset;
|
||||||
|
|
||||||
|
@ -289,7 +289,7 @@ FT_BEGIN_HEADER
|
||||||
/* FT_PtrDist */
|
/* FT_PtrDist */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* This is equivalent to the ANSI C "ptrdiff_t" type, i.e. the */
|
/* This is equivalent to the ANSI C `ptrdiff_t' type, i.e. the */
|
||||||
/* largest _signed_ integer type used to express the distance */
|
/* largest _signed_ integer type used to express the distance */
|
||||||
/* between two pointers. */
|
/* between two pointers. */
|
||||||
/* */
|
/* */
|
||||||
|
|
|
@ -2079,10 +2079,10 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
FT_EXPORT_DEF(FT_Error)
|
FT_EXPORT_DEF( FT_Error ) FT_Render_Glyph_Internal(
|
||||||
FT_Render_Glyph_Internal( FT_Library library,
|
FT_Library library,
|
||||||
FT_GlyphSlot slot,
|
FT_GlyphSlot slot,
|
||||||
FT_UInt render_mode )
|
FT_UInt render_mode )
|
||||||
{
|
{
|
||||||
FT_Error error = FT_Err_Ok;
|
FT_Error error = FT_Err_Ok;
|
||||||
FT_Renderer renderer;
|
FT_Renderer renderer;
|
||||||
|
|
|
@ -225,14 +225,15 @@
|
||||||
FT_Pointer buffer,
|
FT_Pointer buffer,
|
||||||
FT_UInt buffer_max )
|
FT_UInt buffer_max )
|
||||||
{
|
{
|
||||||
CFF_Font* font = (CFF_Font*)face->extra.data;
|
CFF_Font* font = (CFF_Font*)face->extra.data;
|
||||||
FT_Memory memory = FT_FACE_MEMORY(face);
|
FT_Memory memory = FT_FACE_MEMORY(face);
|
||||||
FT_String* gname;
|
FT_String* gname;
|
||||||
FT_UShort sid;
|
FT_UShort sid;
|
||||||
PSNames_Interface* psnames;
|
PSNames_Interface* psnames;
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
|
|
||||||
psnames = (PSNames_Interface*)FT_Get_Module_Interface( face->root.driver->root.library, "psnames" );
|
psnames = (PSNames_Interface*)FT_Get_Module_Interface(
|
||||||
|
face->root.driver->root.library, "psnames" );
|
||||||
|
|
||||||
if ( !psnames )
|
if ( !psnames )
|
||||||
{
|
{
|
||||||
|
@ -255,7 +256,7 @@
|
||||||
FT_UInt len = strlen( gname );
|
FT_UInt len = strlen( gname );
|
||||||
|
|
||||||
|
|
||||||
if (len >= buffer_max)
|
if ( len >= buffer_max )
|
||||||
len = buffer_max - 1;
|
len = buffer_max - 1;
|
||||||
|
|
||||||
MEM_Copy( buffer, gname, len );
|
MEM_Copy( buffer, gname, len );
|
||||||
|
@ -269,6 +270,7 @@
|
||||||
return error;
|
return error;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Function> */
|
/* <Function> */
|
||||||
|
|
|
@ -1066,7 +1066,6 @@
|
||||||
|
|
||||||
case cff_op_hintmask:
|
case cff_op_hintmask:
|
||||||
case cff_op_cntrmask:
|
case cff_op_cntrmask:
|
||||||
|
|
||||||
FT_TRACE4(( op == cff_op_hintmask ? " hintmask"
|
FT_TRACE4(( op == cff_op_hintmask ? " hintmask"
|
||||||
: " cntrmask" ));
|
: " cntrmask" ));
|
||||||
|
|
||||||
|
@ -1078,7 +1077,9 @@
|
||||||
|
|
||||||
FT_TRACE4(( " " ));
|
FT_TRACE4(( " " ));
|
||||||
|
|
||||||
for ( maskbyte = 0; maskbyte < ( decoder->num_hints + 7 ) >> 3 ; maskbyte++, ip++ )
|
for ( maskbyte = 0;
|
||||||
|
maskbyte < ( decoder->num_hints + 7 ) >> 3;
|
||||||
|
maskbyte++, ip++ )
|
||||||
{
|
{
|
||||||
FT_TRACE4(( "%02X", *ip ));
|
FT_TRACE4(( "%02X", *ip ));
|
||||||
}
|
}
|
||||||
|
@ -1839,10 +1840,8 @@
|
||||||
goto Unimplemented;
|
goto Unimplemented;
|
||||||
|
|
||||||
case cff_op_dotsection:
|
case cff_op_dotsection:
|
||||||
{
|
/* this operator is deprecated and ignored by the parser */
|
||||||
/* this operator is deprecated and ignored by the parser */
|
FT_TRACE4(( " dotsection" ));
|
||||||
FT_TRACE4(( " dotsection" ));
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case cff_op_and:
|
case cff_op_and:
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||||
/* */
|
/* */
|
||||||
/* This file is part of the FreeType project, and may only be used, */
|
/* This file is part of the FreeType project, and may only be used, */
|
||||||
/* modified, and xdistributed under the terms of the FreeType project */
|
/* modified, and distributed under the terms of the FreeType project */
|
||||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||||
/* this file you indicate that you have read the license and */
|
/* this file you indicate that you have read the license and */
|
||||||
/* understand and accept it fully. */
|
/* understand and accept it fully. */
|
||||||
|
|
|
@ -388,8 +388,8 @@
|
||||||
|
|
||||||
/* set global bbox, as well as EM size */
|
/* set global bbox, as well as EM size */
|
||||||
root->bbox = dict->font_bbox;
|
root->bbox = dict->font_bbox;
|
||||||
root->ascender = (FT_Short)(root->bbox.yMax >> 16);
|
root->ascender = (FT_Short)( root->bbox.yMax >> 16 );
|
||||||
root->descender = (FT_Short)(root->bbox.yMin >> 16);
|
root->descender = (FT_Short)( root->bbox.yMin >> 16 );
|
||||||
root->height = ( ( root->ascender - root->descender ) * 12 ) / 10;
|
root->height = ( ( root->ascender - root->descender ) * 12 ) / 10;
|
||||||
|
|
||||||
if ( dict->units_per_em )
|
if ( dict->units_per_em )
|
||||||
|
|
|
@ -339,7 +339,7 @@
|
||||||
temp = ABS( matrix->yy );
|
temp = ABS( matrix->yy );
|
||||||
|
|
||||||
*upm = (FT_UShort)( FT_DivFix( 0x10000L,
|
*upm = (FT_UShort)( FT_DivFix( 0x10000L,
|
||||||
FT_DivFix( temp, 1000 ) ) >> 16 );
|
FT_DivFix( temp, 1000 ) ) >> 16 );
|
||||||
|
|
||||||
if ( temp != 0x10000L )
|
if ( temp != 0x10000L )
|
||||||
{
|
{
|
||||||
|
|
|
@ -225,8 +225,8 @@
|
||||||
if ( !root->units_per_EM )
|
if ( !root->units_per_EM )
|
||||||
root->units_per_EM = 1000;
|
root->units_per_EM = 1000;
|
||||||
|
|
||||||
root->ascender = (FT_Short)(face->cid.font_bbox.yMax >> 16);
|
root->ascender = (FT_Short)( face->cid.font_bbox.yMax >> 16 );
|
||||||
root->descender = (FT_Short)(face->cid.font_bbox.yMin >> 16);
|
root->descender = (FT_Short)( face->cid.font_bbox.yMin >> 16 );
|
||||||
root->height = ( ( root->ascender + root->descender ) * 12 )
|
root->height = ( ( root->ascender + root->descender ) * 12 )
|
||||||
/ 10;
|
/ 10;
|
||||||
|
|
||||||
|
|
|
@ -981,10 +981,10 @@ THE SOFTWARE.
|
||||||
yres = find_property( face, "RESOLUTION_Y" );
|
yres = find_property( face, "RESOLUTION_Y" );
|
||||||
if ( ( xres != NULL ) && ( yres != NULL ) )
|
if ( ( xres != NULL ) && ( yres != NULL ) )
|
||||||
{
|
{
|
||||||
root->available_sizes->width = (FT_Short)
|
root->available_sizes->width =
|
||||||
(prop->value.integer * 75 / xres->value.integer);
|
(FT_Short)( prop->value.integer * 75 / xres->value.integer );
|
||||||
root->available_sizes->height = (FT_Short)
|
root->available_sizes->height =
|
||||||
(prop->value.integer * 75 / yres->value.integer);
|
(FT_Short)( prop->value.integer * 75 / yres->value.integer );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
|
@ -268,20 +268,19 @@
|
||||||
root->num_fixed_sizes = 0;
|
root->num_fixed_sizes = 0;
|
||||||
root->available_sizes = 0;
|
root->available_sizes = 0;
|
||||||
|
|
||||||
root->bbox = face->type1.font_bbox;
|
root->bbox = face->type1.font_bbox;
|
||||||
|
|
||||||
/* Set units_per_EM if we didn't set it in parse_font_matrix. */
|
/* Set units_per_EM if we didn't set it in parse_font_matrix. */
|
||||||
if ( !root->units_per_EM )
|
if ( !root->units_per_EM )
|
||||||
root->units_per_EM = 1000;
|
root->units_per_EM = 1000;
|
||||||
|
|
||||||
root->ascender = (FT_Short)(face->type1.font_bbox.yMax >> 16);
|
root->ascender = (FT_Short)( face->type1.font_bbox.yMax >> 16 );
|
||||||
root->descender = (FT_Short)(face->type1.font_bbox.yMin >> 16);
|
root->descender = (FT_Short)( face->type1.font_bbox.yMin >> 16 );
|
||||||
root->height = ( ( root->ascender - root->descender ) * 12 ) / 10;
|
root->height = ( ( root->ascender - root->descender ) * 12 ) / 10;
|
||||||
|
|
||||||
/* now compute the maximum advance width */
|
/* now compute the maximum advance width */
|
||||||
|
root->max_advance_width =
|
||||||
|
(FT_Short)( face->type1.font_bbox.xMax >> 16 );
|
||||||
root->max_advance_width = (FT_Short)(face->type1.font_bbox.xMax >> 16);
|
|
||||||
{
|
{
|
||||||
FT_Int max_advance;
|
FT_Int max_advance;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue