| Index: third_party/freetype2/src/include/freetype/ftbitmap.h
|
| diff --git a/third_party/freetype2/src/include/freetype/ftbitmap.h b/third_party/freetype2/src/include/freetype/ftbitmap.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..46cc47b7d1ed9f9ea6522def7fa2bae81a66db30
|
| --- /dev/null
|
| +++ b/third_party/freetype2/src/include/freetype/ftbitmap.h
|
| @@ -0,0 +1,240 @@
|
| +/***************************************************************************/
|
| +/* */
|
| +/* ftbitmap.h */
|
| +/* */
|
| +/* FreeType utility functions for bitmaps (specification). */
|
| +/* */
|
| +/* Copyright 2004-2015 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 handling @FT_Bitmap objects. */
|
| + /* Note that none of the functions changes the bitmap's `flow' (as */
|
| + /* indicated by the sign of the `pitch' field in `FT_Bitmap'). */
|
| + /* */
|
| + /*************************************************************************/
|
| +
|
| +
|
| + /*************************************************************************/
|
| + /* */
|
| + /* <Function> */
|
| + /* FT_Bitmap_Init */
|
| + /* */
|
| + /* <Description> */
|
| + /* Initialize a pointer to an @FT_Bitmap structure. */
|
| + /* */
|
| + /* <InOut> */
|
| + /* abitmap :: A pointer to the bitmap structure. */
|
| + /* */
|
| + /* <Note> */
|
| + /* A deprecated name for the same function is `FT_Bitmap_New'. */
|
| + /* */
|
| + FT_EXPORT( void )
|
| + FT_Bitmap_Init( FT_Bitmap *abitmap );
|
| +
|
| +
|
| + /* deprecated */
|
| + FT_EXPORT( void )
|
| + FT_Bitmap_New( FT_Bitmap *abitmap );
|
| +
|
| +
|
| + /*************************************************************************/
|
| + /* */
|
| + /* <Function> */
|
| + /* FT_Bitmap_Copy */
|
| + /* */
|
| + /* <Description> */
|
| + /* Copy a 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. */
|
| + /* */
|
| + /* Bitmaps in @FT_PIXEL_MODE_GRAY2 and @FT_PIXEL_MODE_GRAY@ format */
|
| + /* are converted to @FT_PIXEL_MODE_GRAY format (i.e., 8bpp). */
|
| + /* */
|
| + 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, 8bpp or 32bpp */
|
| + /* to a bitmap object with depth 8bpp, making the number of used */
|
| + /* bytes 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_GlyphSlot_Own_Bitmap */
|
| + /* */
|
| + /* <Description> */
|
| + /* Make sure that a glyph slot owns `slot->bitmap'. */
|
| + /* */
|
| + /* <Input> */
|
| + /* slot :: The glyph slot. */
|
| + /* */
|
| + /* <Return> */
|
| + /* FreeType error code. 0~means success. */
|
| + /* */
|
| + /* <Note> */
|
| + /* This function is to be used in combination with */
|
| + /* @FT_Bitmap_Embolden. */
|
| + /* */
|
| + FT_EXPORT( FT_Error )
|
| + FT_GlyphSlot_Own_Bitmap( FT_GlyphSlot slot );
|
| +
|
| +
|
| + /*************************************************************************/
|
| + /* */
|
| + /* <Function> */
|
| + /* FT_Bitmap_Done */
|
| + /* */
|
| + /* <Description> */
|
| + /* Destroy a bitmap object initialized with @FT_Bitmap_Init. */
|
| + /* */
|
| + /* <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 */
|
|
|