/***************************************************************************/ /* */ /* ftbitmap.h */ /* */ /* FreeType utility functions for bitmaps (specification). */ /* */ /* Copyright 2004-2017 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 */
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
config | Folder | 0755 |
|
|
freetype.h | File | 279.94 KB | 0644 |
|
ftadvanc.h | File | 10.39 KB | 0644 |
|
ftautoh.h | File | 19.42 KB | 0644 |
|
ftbbox.h | File | 5.11 KB | 0644 |
|
ftbdf.h | File | 6.63 KB | 0644 |
|
ftbitmap.h | File | 14.35 KB | 0644 |
|
ftbzip2.h | File | 4.2 KB | 0644 |
|
ftcache.h | File | 58.1 KB | 0644 |
|
ftcffdrv.h | File | 12.11 KB | 0644 |
|
ftchapters.h | File | 9.38 KB | 0644 |
|
ftcid.h | File | 5.52 KB | 0644 |
|
fterrdef.h | File | 14.1 KB | 0644 |
|
fterrors.h | File | 11.1 KB | 0644 |
|
ftfntfmt.h | File | 4.86 KB | 0644 |
|
ftgasp.h | File | 4.68 KB | 0644 |
|
ftglyph.h | File | 37.78 KB | 0644 |
|
ftgxval.h | File | 13.08 KB | 0644 |
|
ftgzip.h | File | 5.49 KB | 0644 |
|
ftimage.h | File | 73.91 KB | 0644 |
|
ftincrem.h | File | 11.13 KB | 0644 |
|
ftlcdfil.h | File | 12.28 KB | 0644 |
|
ftlist.h | File | 16.36 KB | 0644 |
|
ftlzw.h | File | 4.15 KB | 0644 |
|
ftmac.h | File | 16.69 KB | 0644 |
|
ftmm.h | File | 29.86 KB | 0644 |
|
ftmodapi.h | File | 37.05 KB | 0644 |
|
ftmoderr.h | File | 10.17 KB | 0644 |
|
ftotval.h | File | 7.41 KB | 0644 |
|
ftoutln.h | File | 34.9 KB | 0644 |
|
ftpcfdrv.h | File | 3.68 KB | 0644 |
|
ftpfr.h | File | 6.13 KB | 0644 |
|
ftrender.h | File | 11.05 KB | 0644 |
|
ftsizes.h | File | 9.33 KB | 0644 |
|
ftsnames.h | File | 16.21 KB | 0644 |
|
ftstroke.h | File | 21.78 KB | 0644 |
|
ftsynth.h | File | 4.03 KB | 0644 |
|
ftsystem.h | File | 10.31 KB | 0644 |
|
fttrigon.h | File | 8.23 KB | 0644 |
|
ftttdrv.h | File | 15.13 KB | 0644 |
|
fttypes.h | File | 34.84 KB | 0644 |
|
ftwinfnt.h | File | 10.16 KB | 0644 |
|
t1tables.h | File | 34.21 KB | 0644 |
|
ttnameid.h | File | 58.55 KB | 0644 |
|
tttables.h | File | 44.33 KB | 0644 |
|
tttags.h | File | 5.29 KB | 0644 |
|
ttunpat.h | File | 2.28 KB | 0644 |
|