-/***************************************************************************/\r
-/* */\r
-/* ftbitmap.h */\r
-/* */\r
-/* FreeType utility functions for converting 1bpp, 2bpp, 4bpp, and 8bpp */\r
-/* bitmaps into 8bpp format (specification). */\r
-/* */\r
-/* Copyright 2004, 2005, 2006 by */\r
-/* David Turner, Robert Wilhelm, and Werner Lemberg. */\r
-/* */\r
-/* This file is part of the FreeType project, and may only be used, */\r
-/* modified, and distributed under the terms of the FreeType project */\r
-/* license, LICENSE.TXT. By continuing to use, modify, or distribute */\r
-/* this file you indicate that you have read the license and */\r
-/* understand and accept it fully. */\r
-/* */\r
-/***************************************************************************/\r
-\r
-\r
-#ifndef __FTBITMAP_H__\r
-#define __FTBITMAP_H__\r
-\r
-\r
-#include <ft2build.h>\r
-#include FT_FREETYPE_H\r
-\r
-#ifdef FREETYPE_H\r
-#error "freetype.h of FreeType 1 has been loaded!"\r
-#error "Please fix the directory search order for header files"\r
-#error "so that freetype.h of FreeType 2 is found first."\r
-#endif\r
-\r
-\r
-FT_BEGIN_HEADER\r
-\r
-\r
- /*************************************************************************/\r
- /* */\r
- /* <Section> */\r
- /* bitmap_handling */\r
- /* */\r
- /* <Title> */\r
- /* Bitmap Handling */\r
- /* */\r
- /* <Abstract> */\r
- /* Handling FT_Bitmap objects. */\r
- /* */\r
- /* <Description> */\r
- /* This section contains functions for converting FT_Bitmap objects. */\r
- /* */\r
- /*************************************************************************/\r
-\r
-\r
- /*************************************************************************/\r
- /* */\r
- /* <Function> */\r
- /* FT_Bitmap_New */\r
- /* */\r
- /* <Description> */\r
- /* Initialize a pointer to an @FT_Bitmap structure. */\r
- /* */\r
- /* <InOut> */\r
- /* abitmap :: A pointer to the bitmap structure. */\r
- /* */\r
- FT_EXPORT( void )\r
- FT_Bitmap_New( FT_Bitmap *abitmap );\r
-\r
-\r
- /*************************************************************************/\r
- /* */\r
- /* <Function> */\r
- /* FT_Bitmap_Copy */\r
- /* */\r
- /* <Description> */\r
- /* Copies an bitmap into another one. */\r
- /* */\r
- /* <Input> */\r
- /* library :: A handle to a library object. */\r
- /* */\r
- /* source :: A handle to the source bitmap. */\r
- /* */\r
- /* <Output> */\r
- /* target :: A handle to the target bitmap. */\r
- /* */\r
- /* <Return> */\r
- /* FreeType error code. 0 means success. */\r
- /* */\r
- FT_EXPORT( FT_Error )\r
- FT_Bitmap_Copy( FT_Library library,\r
- const FT_Bitmap *source,\r
- FT_Bitmap *target);\r
-\r
-\r
- /*************************************************************************/\r
- /* */\r
- /* <Function> */\r
- /* FT_Bitmap_Embolden */\r
- /* */\r
- /* <Description> */\r
- /* Embolden a bitmap. The new bitmap will be about `xStrength' */\r
- /* pixels wider and `yStrength' pixels higher. The left and bottom */\r
- /* borders are kept unchanged. */\r
- /* */\r
- /* <Input> */\r
- /* library :: A handle to a library object. */\r
- /* */\r
- /* xStrength :: How strong the glyph is emboldened horizontally. */\r
- /* Expressed in 26.6 pixel format. */\r
- /* */\r
- /* yStrength :: How strong the glyph is emboldened vertically. */\r
- /* Expressed in 26.6 pixel format. */\r
- /* */\r
- /* <InOut> */\r
- /* bitmap :: A handle to the target bitmap. */\r
- /* */\r
- /* <Return> */\r
- /* FreeType error code. 0 means success. */\r
- /* */\r
- /* <Note> */\r
- /* The current implementation restricts `xStrength' to be less than */\r
- /* or equal to 8 if bitmap is of pixel_mode @FT_PIXEL_MODE_MONO. */\r
- /* */\r
- /* If you want to embolden the bitmap owned by a @FT_GlyphSlotRec, */\r
- /* you should call `FT_GlyphSlot_Own_Bitmap' on the slot first. */\r
- /* */\r
- FT_EXPORT( FT_Error )\r
- FT_Bitmap_Embolden( FT_Library library,\r
- FT_Bitmap* bitmap,\r
- FT_Pos xStrength,\r
- FT_Pos yStrength );\r
-\r
-\r
- /*************************************************************************/\r
- /* */\r
- /* <Function> */\r
- /* FT_Bitmap_Convert */\r
- /* */\r
- /* <Description> */\r
- /* Convert a bitmap object with depth 1bpp, 2bpp, 4bpp, or 8bpp to a */\r
- /* bitmap object with depth 8bpp, making the number of used bytes per */\r
- /* line (a.k.a. the `pitch') a multiple of `alignment'. */\r
- /* */\r
- /* <Input> */\r
- /* library :: A handle to a library object. */\r
- /* */\r
- /* source :: The source bitmap. */\r
- /* */\r
- /* alignment :: The pitch of the bitmap is a multiple of this */\r
- /* parameter. Common values are 1, 2, or 4. */\r
- /* */\r
- /* <Output> */\r
- /* target :: The target bitmap. */\r
- /* */\r
- /* <Return> */\r
- /* FreeType error code. 0 means success. */\r
- /* */\r
- /* <Note> */\r
- /* It is possible to call @FT_Bitmap_Convert multiple times without */\r
- /* calling @FT_Bitmap_Done (the memory is simply reallocated). */\r
- /* */\r
- /* Use @FT_Bitmap_Done to finally remove the bitmap object. */\r
- /* */\r
- /* The `library' argument is taken to have access to FreeType's */\r
- /* memory handling functions. */\r
- /* */\r
- FT_EXPORT( FT_Error )\r
- FT_Bitmap_Convert( FT_Library library,\r
- const FT_Bitmap *source,\r
- FT_Bitmap *target,\r
- FT_Int alignment );\r
-\r
-\r
- /*************************************************************************/\r
- /* */\r
- /* <Function> */\r
- /* FT_Bitmap_Done */\r
- /* */\r
- /* <Description> */\r
- /* Destroy a bitmap object created with @FT_Bitmap_New. */\r
- /* */\r
- /* <Input> */\r
- /* library :: A handle to a library object. */\r
- /* */\r
- /* bitmap :: The bitmap object to be freed. */\r
- /* */\r
- /* <Return> */\r
- /* FreeType error code. 0 means success. */\r
- /* */\r
- /* <Note> */\r
- /* The `library' argument is taken to have access to FreeType's */\r
- /* memory handling functions. */\r
- /* */\r
- FT_EXPORT( FT_Error )\r
- FT_Bitmap_Done( FT_Library library,\r
- FT_Bitmap *bitmap );\r
-\r
-\r
- /* */\r
-\r
-\r
-FT_END_HEADER\r
-\r
-#endif /* __FTBITMAP_H__ */\r
-\r
-\r
-/* END */\r
+/***************************************************************************/
+/* */
+/* ftbitmap.h */
+/* */
+/* FreeType utility functions for converting 1bpp, 2bpp, 4bpp, and 8bpp */
+/* bitmaps into 8bpp format (specification). */
+/* */
+/* Copyright 2004, 2005, 2006 by */
+/* 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. */
+/* */
+/***************************************************************************/
+
+
+#ifndef __FTBITMAP_H__
+#define __FTBITMAP_H__
+
+
+#include <ft2build.h>
+#include FT_FREETYPE_H
+
+#ifdef FREETYPE_H
+#error "freetype.h of FreeType 1 has been loaded!"
+#error "Please fix the directory search order for header files"
+#error "so that freetype.h of FreeType 2 is found first."
+#endif
+
+
+FT_BEGIN_HEADER
+
+
+ /*************************************************************************/
+ /* */
+ /* <Section> */
+ /* bitmap_handling */
+ /* */
+ /* <Title> */
+ /* Bitmap Handling */
+ /* */
+ /* <Abstract> */
+ /* Handling FT_Bitmap objects. */
+ /* */
+ /* <Description> */
+ /* This section contains functions for converting FT_Bitmap objects. */
+ /* */
+ /*************************************************************************/
+
+
+ /*************************************************************************/
+ /* */
+ /* <Function> */
+ /* FT_Bitmap_New */
+ /* */
+ /* <Description> */
+ /* Initialize a pointer to an @FT_Bitmap structure. */
+ /* */
+ /* <InOut> */
+ /* abitmap :: A pointer to the bitmap structure. */
+ /* */
+ FT_EXPORT( void )
+ FT_Bitmap_New( FT_Bitmap *abitmap );
+
+
+ /*************************************************************************/
+ /* */
+ /* <Function> */
+ /* FT_Bitmap_Copy */
+ /* */
+ /* <Description> */
+ /* Copies an bitmap into another one. */
+ /* */
+ /* <Input> */
+ /* library :: A handle to a library object. */
+ /* */
+ /* source :: A handle to the source bitmap. */
+ /* */
+ /* <Output> */
+ /* target :: A handle to the target bitmap. */
+ /* */
+ /* <Return> */
+ /* FreeType error code. 0 means success. */
+ /* */
+ FT_EXPORT( FT_Error )
+ FT_Bitmap_Copy( FT_Library library,
+ const FT_Bitmap *source,
+ FT_Bitmap *target);
+
+
+ /*************************************************************************/
+ /* */
+ /* <Function> */
+ /* FT_Bitmap_Embolden */
+ /* */
+ /* <Description> */
+ /* Embolden a bitmap. The new bitmap will be about `xStrength' */
+ /* pixels wider and `yStrength' pixels higher. The left and bottom */
+ /* borders are kept unchanged. */
+ /* */
+ /* <Input> */
+ /* library :: A handle to a library object. */
+ /* */
+ /* xStrength :: How strong the glyph is emboldened horizontally. */
+ /* Expressed in 26.6 pixel format. */
+ /* */
+ /* yStrength :: How strong the glyph is emboldened vertically. */
+ /* Expressed in 26.6 pixel format. */
+ /* */
+ /* <InOut> */
+ /* bitmap :: A handle to the target bitmap. */
+ /* */
+ /* <Return> */
+ /* FreeType error code. 0 means success. */
+ /* */
+ /* <Note> */
+ /* The current implementation restricts `xStrength' to be less than */
+ /* or equal to 8 if bitmap is of pixel_mode @FT_PIXEL_MODE_MONO. */
+ /* */
+ /* If you want to embolden the bitmap owned by a @FT_GlyphSlotRec, */
+ /* you should call `FT_GlyphSlot_Own_Bitmap' on the slot first. */
+ /* */
+ FT_EXPORT( FT_Error )
+ FT_Bitmap_Embolden( FT_Library library,
+ FT_Bitmap* bitmap,
+ FT_Pos xStrength,
+ FT_Pos yStrength );
+
+
+ /*************************************************************************/
+ /* */
+ /* <Function> */
+ /* FT_Bitmap_Convert */
+ /* */
+ /* <Description> */
+ /* Convert a bitmap object with depth 1bpp, 2bpp, 4bpp, or 8bpp to a */
+ /* bitmap object with depth 8bpp, making the number of used bytes per */
+ /* line (a.k.a. the `pitch') a multiple of `alignment'. */
+ /* */
+ /* <Input> */
+ /* library :: A handle to a library object. */
+ /* */
+ /* source :: The source bitmap. */
+ /* */
+ /* alignment :: The pitch of the bitmap is a multiple of this */
+ /* parameter. Common values are 1, 2, or 4. */
+ /* */
+ /* <Output> */
+ /* target :: The target bitmap. */
+ /* */
+ /* <Return> */
+ /* FreeType error code. 0 means success. */
+ /* */
+ /* <Note> */
+ /* It is possible to call @FT_Bitmap_Convert multiple times without */
+ /* calling @FT_Bitmap_Done (the memory is simply reallocated). */
+ /* */
+ /* Use @FT_Bitmap_Done to finally remove the bitmap object. */
+ /* */
+ /* The `library' argument is taken to have access to FreeType's */
+ /* memory handling functions. */
+ /* */
+ FT_EXPORT( FT_Error )
+ FT_Bitmap_Convert( FT_Library library,
+ const FT_Bitmap *source,
+ FT_Bitmap *target,
+ FT_Int alignment );
+
+
+ /*************************************************************************/
+ /* */
+ /* <Function> */
+ /* FT_Bitmap_Done */
+ /* */
+ /* <Description> */
+ /* Destroy a bitmap object created with @FT_Bitmap_New. */
+ /* */
+ /* <Input> */
+ /* library :: A handle to a library object. */
+ /* */
+ /* bitmap :: The bitmap object to be freed. */
+ /* */
+ /* <Return> */
+ /* FreeType error code. 0 means success. */
+ /* */
+ /* <Note> */
+ /* The `library' argument is taken to have access to FreeType's */
+ /* memory handling functions. */
+ /* */
+ FT_EXPORT( FT_Error )
+ FT_Bitmap_Done( FT_Library library,
+ FT_Bitmap *bitmap );
+
+
+ /* */
+
+
+FT_END_HEADER
+
+#endif /* __FTBITMAP_H__ */
+
+
+/* END */