Formatting.
This commit is contained in:
parent
cf60371a1b
commit
4091786c81
|
@ -1,9 +1,9 @@
|
||||||
2006-04-01 David Turner <david@freetype.org>
|
2006-04-01 David Turner <david@freetype.org>
|
||||||
|
|
||||||
* docs/CHANGES: update
|
* docs/CHANGES: Updated.
|
||||||
|
|
||||||
* include/freetype/ftcache.h, include/freetype/config/ftheader.h:
|
* include/freetype/ftcache.h, include/freetype/config/ftheader.h:
|
||||||
updating documentation comments
|
Update documentation comments.
|
||||||
|
|
||||||
2006-04-01 Werner Lemberg <wl@gnu.org>
|
2006-04-01 Werner Lemberg <wl@gnu.org>
|
||||||
|
|
||||||
|
|
|
@ -42,8 +42,8 @@ LATEST CHANGES BETWEEN 2.2 and 2.1.10
|
||||||
|
|
||||||
- The LIGHT hinting algorithm produces more pleasant results.
|
- The LIGHT hinting algorithm produces more pleasant results.
|
||||||
Also, using the FT_LOAD_TARGET_LIGHT flags within FT_Load_Glyph
|
Also, using the FT_LOAD_TARGET_LIGHT flags within FT_Load_Glyph
|
||||||
always forces auto-hinting, as a special exception. This allows
|
always forces auto-hinting, as a special exception. This allows
|
||||||
you to experiment with it even if you have enabled the TrueType
|
you to experiment with it even if you have enabled the TrueType
|
||||||
bytecode interpreter in your build.
|
bytecode interpreter in your build.
|
||||||
|
|
||||||
- The auto hinter now employs a new algorithm for CJK fonts, based
|
- The auto hinter now employs a new algorithm for CJK fonts, based
|
||||||
|
@ -77,7 +77,7 @@ LATEST CHANGES BETWEEN 2.2 and 2.1.10
|
||||||
bitmap strikes should be updated to use this function.
|
bitmap strikes should be updated to use this function.
|
||||||
|
|
||||||
- A new API `FT_Get_SubGlyph_Info' has been added to retrieve
|
- A new API `FT_Get_SubGlyph_Info' has been added to retrieve
|
||||||
subglyph data. This can be used by rogue clients which used to
|
subglyph data. This can be used by rogue clients which used to
|
||||||
access the internal headers to get the corresponding data.
|
access the internal headers to get the corresponding data.
|
||||||
|
|
||||||
- In 2.1.10, the behaviour of `FT_Set_Pixel_Sizes' was changed for
|
- In 2.1.10, the behaviour of `FT_Set_Pixel_Sizes' was changed for
|
||||||
|
|
|
@ -623,9 +623,9 @@
|
||||||
*
|
*
|
||||||
* @description:
|
* @description:
|
||||||
* A macro used in #include statements to name the file containing the
|
* A macro used in #include statements to name the file containing the
|
||||||
* FreeType 2 API used to stroke outline path
|
* FreeType 2 API used to stroke outline path.
|
||||||
*/
|
*/
|
||||||
#define FT_STROKER_H <freetype/ftstroke.h>
|
#define FT_STROKER_H <freetype/ftstroke.h>
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************
|
/*************************************************************************
|
||||||
|
@ -635,9 +635,9 @@
|
||||||
*
|
*
|
||||||
* @description:
|
* @description:
|
||||||
* A macro used in #include statements to name the file containing the
|
* A macro used in #include statements to name the file containing the
|
||||||
* FreeType 2 API used to perform artificial obliquing and emboldening
|
* FreeType 2 API used to perform artificial obliquing and emboldening.
|
||||||
*/
|
*/
|
||||||
#define FT_SYNTHESIS_H <freetype/ftsynth.h>
|
#define FT_SYNTHESIS_H <freetype/ftsynth.h>
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************
|
/*************************************************************************
|
||||||
|
@ -648,9 +648,9 @@
|
||||||
* @description:
|
* @description:
|
||||||
* A macro used in #include statements to name the file containing the
|
* A macro used in #include statements to name the file containing the
|
||||||
* FreeType 2 API used to provide functions specific to the XFree86 and
|
* FreeType 2 API used to provide functions specific to the XFree86 and
|
||||||
* X.Org X11 servers
|
* X.Org X11 servers.
|
||||||
*/
|
*/
|
||||||
#define FT_XFREE86_H <freetype/ftxf86.h>
|
#define FT_XFREE86_H <freetype/ftxf86.h>
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************
|
/*************************************************************************
|
||||||
|
@ -660,10 +660,10 @@
|
||||||
*
|
*
|
||||||
* @description:
|
* @description:
|
||||||
* A macro used in #include statements to name the file containing the
|
* A macro used in #include statements to name the file containing the
|
||||||
* FreeType 2 API used to perform trigonometric computations (e.g.
|
* FreeType 2 API used to perform trigonometric computations (e.g.,
|
||||||
* cosines and arc tangents).
|
* cosines and arc tangents).
|
||||||
*/
|
*/
|
||||||
#define FT_TRIGONOMETRY_H <freetype/fttrigon.h>
|
#define FT_TRIGONOMETRY_H <freetype/fttrigon.h>
|
||||||
|
|
||||||
/* */
|
/* */
|
||||||
|
|
||||||
|
|
|
@ -46,38 +46,39 @@ FT_BEGIN_HEADER
|
||||||
*
|
*
|
||||||
* Note that all types and functions begin with the FTC_ prefix.
|
* Note that all types and functions begin with the FTC_ prefix.
|
||||||
*
|
*
|
||||||
* the cache is highly portable and thus doesn't know anything about
|
* The cache is highly portable and thus doesn't know anything about the
|
||||||
* the fonts installed on your system, or how to access them. This implies
|
* fonts installed on your system, or how to access them. This implies
|
||||||
* the following scheme:
|
* the following scheme:
|
||||||
*
|
*
|
||||||
* first, available/installed font faces are uniquely identified by
|
* First, available or installed font faces are uniquely identified by
|
||||||
* @FTC_FaceID values provided to the cache by the client. Note that the
|
* @FTC_FaceID values, provided to the cache by the client. Note that
|
||||||
* cache only stores and compares these values, and doesn't try to
|
* the cache only stores and compares these values, and doesn't try to
|
||||||
* interpret them in any way.
|
* interpret them in any way.
|
||||||
*
|
*
|
||||||
* Second, the cache will call, only when needed, a client-provided
|
* Second, the cache calls, only when needed, a client-provided function
|
||||||
* function to convert a @FTC_FaceID into a new @FT_Face object. The latter
|
* to convert a @FTC_FaceID into a new @FT_Face object. The latter is
|
||||||
* will then be completely managed by the cache, including its termination
|
* then completely managed by the cache, including its termination
|
||||||
* through @FT_Done_Face.
|
* through @FT_Done_Face.
|
||||||
*
|
*
|
||||||
* Clients are free to map face ids to anything. The most simple usage is
|
* Clients are free to map face IDs to anything else. The most simple
|
||||||
* to associate them to a (pathname,face_index) pair that is used to call
|
* usage is to associate them to a (pathname,face_index) pair that is
|
||||||
* @FT_New_Face. However, more complex schemes are also possible.
|
* used to call @FT_New_Face. However, more complex schemes are also
|
||||||
|
* possible.
|
||||||
*
|
*
|
||||||
* Note that for the cache to work correctly, the face id values must be
|
* Note that for the cache to work correctly, the face ID values must be
|
||||||
* *persistent*, which means that the content they point to should not
|
* *persistent*, which means that the contents they point to should not
|
||||||
* change at runtime, or that their value should not become invalid.
|
* change at runtime, or that their value should not become invalid.
|
||||||
*
|
*
|
||||||
* If this is unavoidable (e.g. when a font is uninstalled at runtime),
|
* If this is unavoidable (e.g., when a font is uninstalled at runtime),
|
||||||
* you should call @FTC_Manager_RemoveFaceID as soon as possible, to let
|
* you should call @FTC_Manager_RemoveFaceID as soon as possible, to let
|
||||||
* the cache get rid of any references to the old @FTC_FaceID it may
|
* the cache get rid of any references to the old @FTC_FaceID it may
|
||||||
* keep internally. Failure to do so will lead to incorrect behaviour
|
* keep internally. Failure to do so will lead to incorrect behaviour
|
||||||
* or even crashes.
|
* or even crashes.
|
||||||
*
|
*
|
||||||
* To use the cache, start by calling @FTC_Manager_New to create a new
|
* To use the cache, start with calling @FTC_Manager_New to create a new
|
||||||
* @FTC_Manager object, which models a single cache instance. You can
|
* @FTC_Manager object, which models a single cache instance. You can
|
||||||
* then lookup @FT_Face and @FT_Size objects with @FTC_Manager_LookupFace
|
* then look up @FT_Face and @FT_Size objects with
|
||||||
* and @FTC_Manager_LookupSize respectively.
|
* @FTC_Manager_LookupFace and @FTC_Manager_LookupSize, respectively.
|
||||||
*
|
*
|
||||||
* If you want to use the charmap caching, call @FTC_CMapCache_New, then
|
* If you want to use the charmap caching, call @FTC_CMapCache_New, then
|
||||||
* later use @FTC_CMapCache_Lookup to perform the equivalent of
|
* later use @FTC_CMapCache_Lookup to perform the equivalent of
|
||||||
|
@ -87,14 +88,13 @@ FT_BEGIN_HEADER
|
||||||
* later use @FTC_ImageCache_Lookup to retrieve the corresponding
|
* later use @FTC_ImageCache_Lookup to retrieve the corresponding
|
||||||
* @FT_Glyph objects from the cache.
|
* @FT_Glyph objects from the cache.
|
||||||
*
|
*
|
||||||
* If you need lots of small bitmaps, it is much more memory efficient to
|
* If you need lots of small bitmaps, it is much more memory efficient
|
||||||
* call @FTC_SBitCache_New, then later @FTC_SBitCache_Lookup, this returns
|
* to call @FTC_SBitCache_New followed by @FTC_SBitCache_Lookup. This
|
||||||
* @FTC_SBitRec structures, which are used to store small bitmaps directly.
|
* returns @FTC_SBitRec structures, which are used to store small
|
||||||
* (a small bitmap is one whose metrics and dimensions all fit in 8-bit
|
* bitmaps directly. (A small bitmap is one whose metrics and
|
||||||
* integers).
|
* dimensions all fit into 8-bit integers).
|
||||||
*
|
*
|
||||||
* We hope to also provide a kerning cache in the near future. Stay
|
* We hope to also provide a kerning cache in the near future.
|
||||||
* tuned.
|
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* <Order>
|
* <Order>
|
||||||
|
@ -139,65 +139,70 @@ FT_BEGIN_HEADER
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************
|
/*************************************************************************
|
||||||
*
|
*
|
||||||
* @type: FTC_FaceID
|
* @type: FTC_FaceID
|
||||||
*
|
*
|
||||||
* @description:
|
* @description:
|
||||||
* An opaque pointer type that is used to identity face objects. The
|
* An opaque pointer type that is used to identity face objects. The
|
||||||
* contents of such objects is application-dependent.
|
* contents of such objects is application-dependent.
|
||||||
*
|
*
|
||||||
* these pointers are typically used to point to a user-defined
|
* These pointers are typically used to point to a user-defined
|
||||||
* structure containing a font file path, and face index.
|
* structure containing a font file path, and face index.
|
||||||
*
|
*
|
||||||
* @note:
|
* @note:
|
||||||
* never use NULL as a valid @FTC_FaceID
|
* Never use NULL as a valid @FTC_FaceID.
|
||||||
*
|
*
|
||||||
* Face ids are passed by the client to the cache manager, which will
|
* Face IDs are passed by the client to the cache manager, which calls,
|
||||||
* call, when needed, the @FTC_Face_Requester to translate them into
|
* when needed, the @FTC_Face_Requester to translate them into new
|
||||||
* new @FT_Face objects
|
* @FT_Face objects.
|
||||||
*
|
*
|
||||||
* if the content of a given face id changes at runtime, or if the
|
* If the content of a given face ID changes at runtime, or if the value
|
||||||
* value becomes invalid (e.g. when uninstalling a font), you should
|
* becomes invalid (e.g., when uninstalling a font), you should
|
||||||
* immediately call @FTC_Manager_RemoveFaceID before any other cache
|
* immediately call @FTC_Manager_RemoveFaceID before any other cache
|
||||||
* function.
|
* function.
|
||||||
*
|
*
|
||||||
* Failure to do so will result in incorrect behaviour or even
|
* Failure to do so will result in incorrect behaviour or even
|
||||||
* memory leaks and crashes !
|
* memory leaks and crashes.
|
||||||
**/
|
*/
|
||||||
typedef struct FTC_FaceIDRec_* FTC_FaceID;
|
typedef struct FTC_FaceIDRec_* FTC_FaceID;
|
||||||
|
|
||||||
|
|
||||||
/************************************************************************
|
/************************************************************************
|
||||||
*
|
*
|
||||||
* @functype: FTC_Face_Requester
|
* @functype:
|
||||||
*
|
* FTC_Face_Requester
|
||||||
* @description:
|
*
|
||||||
* A callback function provided by client applications. It is used
|
* @description:
|
||||||
* by the cache manager to translate a given @FTC_FaceID into a new
|
* A callback function provided by client applications. It is used by
|
||||||
* valid @FT_Face object, on demand.
|
* the cache manager to translate a given @FTC_FaceID into a new valid
|
||||||
*
|
* @FT_Face object, on demand.
|
||||||
* <Input>
|
*
|
||||||
* face_id :: The face ID to resolve.
|
* <Input>
|
||||||
*
|
* face_id ::
|
||||||
* library :: A handle to a FreeType library object.
|
* The face ID to resolve.
|
||||||
*
|
*
|
||||||
* req_data :: Application-provided request data (see note below).
|
* library ::
|
||||||
*
|
* A handle to a FreeType library object.
|
||||||
* <Output>
|
*
|
||||||
* aface :: A new @FT_Face handle.
|
* req_data ::
|
||||||
*
|
* Application-provided request data (see note below).
|
||||||
* <Return>
|
*
|
||||||
* FreeType error code. 0 means success.
|
* <Output>
|
||||||
*
|
* aface ::
|
||||||
* <Note>
|
* A new @FT_Face handle.
|
||||||
* The third parameter 'req_data' is the same than the one passed
|
*
|
||||||
* by the client when @FTC_Manager_New is called.
|
* <Return>
|
||||||
*
|
* FreeType error code. 0 means success.
|
||||||
* The face requester should not perform funny things on the returned
|
*
|
||||||
* face object, like creating a new @FT_Size for it, or setting a
|
* <Note>
|
||||||
* transformation through @FT_Set_Transform!
|
* The third parameter `req_data' is the same as the one passed by the
|
||||||
**/
|
* client when @FTC_Manager_New is called.
|
||||||
|
*
|
||||||
|
* The face requester should not perform funny things on the returned
|
||||||
|
* face object, like creating a new @FT_Size for it, or setting a
|
||||||
|
* transformation through @FT_Set_Transform!
|
||||||
|
*/
|
||||||
typedef FT_Error
|
typedef FT_Error
|
||||||
(*FTC_Face_Requester)( FTC_FaceID face_id,
|
(*FTC_Face_Requester)( FTC_FaceID face_id,
|
||||||
FT_Library library,
|
FT_Library library,
|
||||||
|
@ -234,12 +239,12 @@ FT_BEGIN_HEADER
|
||||||
/* It is used to cache one or more @FT_Face objects, along with */
|
/* It is used to cache one or more @FT_Face objects, along with */
|
||||||
/* corresponding @FT_Size objects. */
|
/* corresponding @FT_Size objects. */
|
||||||
/* */
|
/* */
|
||||||
/* the manager intentionally limits the total number of opened */
|
/* The manager intentionally limits the total number of opened */
|
||||||
/* @FT_Face and @FT_Size objects to limit memory usage. See the */
|
/* @FT_Face and @FT_Size objects to control memory usage. See the */
|
||||||
/* 'max_faces' and 'max_sizes' parameters of @FTC_Manager_New. */
|
/* `max_faces' and `max_sizes' parameters of @FTC_Manager_New. */
|
||||||
/* */
|
/* */
|
||||||
/* the manager is also used to cache 'nodes' of various types */
|
/* The manager is also used to cache `nodes' of various types while */
|
||||||
/* while limiting their total memory usage. */
|
/* limiting their total memory usage. */
|
||||||
/* */
|
/* */
|
||||||
/* All limitations are enforced by keeping lists of managed objects */
|
/* All limitations are enforced by keeping lists of managed objects */
|
||||||
/* in most-recently-used order, and flushing old nodes to make room */
|
/* in most-recently-used order, and flushing old nodes to make room */
|
||||||
|
@ -277,24 +282,23 @@ FT_BEGIN_HEADER
|
||||||
/* Creates a new cache manager. */
|
/* Creates a new cache manager. */
|
||||||
/* */
|
/* */
|
||||||
/* <Input> */
|
/* <Input> */
|
||||||
/* library :: The parent FreeType library handle to use. */
|
/* library :: The parent FreeType library handle to use. */
|
||||||
/* */
|
/* */
|
||||||
/* max_faces :: Maximum number of opened @FT_Face objects managed */
|
/* max_faces :: Maximum number of opened @FT_Face objects managed by */
|
||||||
/* by this cache instance. */
|
/* this cache instance. */
|
||||||
/* */
|
/* */
|
||||||
/* max_sizes :: Maximum number of opened @FT_Size objects managed */
|
/* max_sizes :: Maximum number of opened @FT_Size objects managed by */
|
||||||
/* by this cache instance. */
|
/* this cache instance. */
|
||||||
/* */
|
/* */
|
||||||
/* max_bytes :: Maximum number of bytes to use for cached data */
|
/* max_bytes :: Maximum number of bytes to use for cached data nodes. */
|
||||||
/* nodes. Use 0 for defaults. Note that this value */
|
/* Use 0 for defaults. Note that this value does not */
|
||||||
/* does not account for managed FT_Face and FT_Size */
|
/* account for managed FT_Face and FT_Size objects. */
|
||||||
/* objects. */
|
|
||||||
/* */
|
/* */
|
||||||
/* requester :: An application-provided callback used to translate */
|
/* requester :: An application-provided callback used to translate */
|
||||||
/* face IDs into real @FT_Face objects. */
|
/* face IDs into real @FT_Face objects. */
|
||||||
/* */
|
/* */
|
||||||
/* req_data :: A generic pointer that is passed to the requester */
|
/* req_data :: A generic pointer that is passed to the requester */
|
||||||
/* each time it is called (see @FTC_Face_Requester). */
|
/* each time it is called (see @FTC_Face_Requester). */
|
||||||
/* */
|
/* */
|
||||||
/* <Output> */
|
/* <Output> */
|
||||||
/* amanager :: A handle to a new manager object. 0 in case of */
|
/* amanager :: A handle to a new manager object. 0 in case of */
|
||||||
|
@ -376,7 +380,6 @@ FT_BEGIN_HEADER
|
||||||
/* the @FT_Set_Transform function) on a returned face! If you need */
|
/* the @FT_Set_Transform function) on a returned face! If you need */
|
||||||
/* to transform glyphs, do it yourself after glyph loading. */
|
/* to transform glyphs, do it yourself after glyph loading. */
|
||||||
/* */
|
/* */
|
||||||
/* <Note> */
|
|
||||||
/* When you perform a lookup, out-of-memory errors are detected */
|
/* When you perform a lookup, out-of-memory errors are detected */
|
||||||
/* _within_ the lookup and force incremental flushes of the cache */
|
/* _within_ the lookup and force incremental flushes of the cache */
|
||||||
/* until enough memory is released for the lookup to succeed. */
|
/* until enough memory is released for the lookup to succeed. */
|
||||||
|
|
Loading…
Reference in New Issue