#include <math.h>
#include <string.h>
#include <memory.h>
Go to the source code of this file.
Classes | |
struct | stbtt__bitmap |
struct | stbtt_aligned_quad |
struct | stbtt_bakedchar |
struct | stbtt_fontinfo |
struct | stbtt_pack_context |
struct | stbtt_pack_range |
struct | stbtt_packedchar |
struct | stbtt_vertex |
Macros | |
#define | __STB_INCLUDE_STB_TRUETYPE_H__ |
#define | STBTT_DEF extern |
#define | STBTT_MACSTYLE_BOLD 1 |
#define | STBTT_MACSTYLE_DONTCARE 0 |
#define | STBTT_MACSTYLE_ITALIC 2 |
#define | STBTT_MACSTYLE_NONE 8 |
#define | STBTT_MACSTYLE_UNDERSCORE 4 |
#define | STBTT_POINT_SIZE(x) (-(x)) |
#define | stbtt_vertex_type short |
Typedefs | |
typedef struct stbrp_rect | stbrp_rect |
typedef struct stbtt_fontinfo | stbtt_fontinfo |
typedef struct stbtt_pack_context | stbtt_pack_context |
Functions | |
STBTT_DEF int | stbtt_BakeFontBitmap (const unsigned char *data, int offset, float pixel_height, unsigned char *pixels, int pw, int ph, int first_char, int num_chars, stbtt_bakedchar *chardata) |
STBTT_DEF int | stbtt_CompareUTF8toUTF16_bigendian (const char *s1, int len1, const char *s2, int len2) |
STBTT_DEF int | stbtt_FindGlyphIndex (const stbtt_fontinfo *info, int unicode_codepoint) |
STBTT_DEF int | stbtt_FindMatchingFont (const unsigned char *fontdata, const char *name, int flags) |
STBTT_DEF void | stbtt_FreeBitmap (unsigned char *bitmap, void *userdata) |
STBTT_DEF void | stbtt_FreeShape (const stbtt_fontinfo *info, stbtt_vertex *vertices) |
STBTT_DEF void | stbtt_GetBakedQuad (stbtt_bakedchar *chardata, int pw, int ph, int char_index, float *xpos, float *ypos, stbtt_aligned_quad *q, int opengl_fillrule) |
STBTT_DEF unsigned char * | stbtt_GetCodepointBitmap (const stbtt_fontinfo *info, float scale_x, float scale_y, int codepoint, int *width, int *height, int *xoff, int *yoff) |
STBTT_DEF void | stbtt_GetCodepointBitmapBox (const stbtt_fontinfo *font, int codepoint, float scale_x, float scale_y, int *ix0, int *iy0, int *ix1, int *iy1) |
STBTT_DEF void | stbtt_GetCodepointBitmapBoxSubpixel (const stbtt_fontinfo *font, int codepoint, float scale_x, float scale_y, float shift_x, float shift_y, int *ix0, int *iy0, int *ix1, int *iy1) |
STBTT_DEF unsigned char * | stbtt_GetCodepointBitmapSubpixel (const stbtt_fontinfo *info, float scale_x, float scale_y, float shift_x, float shift_y, int codepoint, int *width, int *height, int *xoff, int *yoff) |
STBTT_DEF int | stbtt_GetCodepointBox (const stbtt_fontinfo *info, int codepoint, int *x0, int *y0, int *x1, int *y1) |
STBTT_DEF void | stbtt_GetCodepointHMetrics (const stbtt_fontinfo *info, int codepoint, int *advanceWidth, int *leftSideBearing) |
STBTT_DEF int | stbtt_GetCodepointKernAdvance (const stbtt_fontinfo *info, int ch1, int ch2) |
STBTT_DEF int | stbtt_GetCodepointShape (const stbtt_fontinfo *info, int unicode_codepoint, stbtt_vertex **vertices) |
STBTT_DEF void | stbtt_GetFontBoundingBox (const stbtt_fontinfo *info, int *x0, int *y0, int *x1, int *y1) |
STBTT_DEF const char * | stbtt_GetFontNameString (const stbtt_fontinfo *font, int *length, int platformID, int encodingID, int languageID, int nameID) |
STBTT_DEF int | stbtt_GetFontOffsetForIndex (const unsigned char *data, int index) |
STBTT_DEF void | stbtt_GetFontVMetrics (const stbtt_fontinfo *info, int *ascent, int *descent, int *lineGap) |
STBTT_DEF unsigned char * | stbtt_GetGlyphBitmap (const stbtt_fontinfo *info, float scale_x, float scale_y, int glyph, int *width, int *height, int *xoff, int *yoff) |
STBTT_DEF void | stbtt_GetGlyphBitmapBox (const stbtt_fontinfo *font, int glyph, float scale_x, float scale_y, int *ix0, int *iy0, int *ix1, int *iy1) |
STBTT_DEF void | stbtt_GetGlyphBitmapBoxSubpixel (const stbtt_fontinfo *font, int glyph, float scale_x, float scale_y, float shift_x, float shift_y, int *ix0, int *iy0, int *ix1, int *iy1) |
STBTT_DEF unsigned char * | stbtt_GetGlyphBitmapSubpixel (const stbtt_fontinfo *info, float scale_x, float scale_y, float shift_x, float shift_y, int glyph, int *width, int *height, int *xoff, int *yoff) |
STBTT_DEF int | stbtt_GetGlyphBox (const stbtt_fontinfo *info, int glyph_index, int *x0, int *y0, int *x1, int *y1) |
STBTT_DEF void | stbtt_GetGlyphHMetrics (const stbtt_fontinfo *info, int glyph_index, int *advanceWidth, int *leftSideBearing) |
STBTT_DEF int | stbtt_GetGlyphKernAdvance (const stbtt_fontinfo *info, int glyph1, int glyph2) |
STBTT_DEF int | stbtt_GetGlyphShape (const stbtt_fontinfo *info, int glyph_index, stbtt_vertex **vertices) |
STBTT_DEF void | stbtt_GetPackedQuad (stbtt_packedchar *chardata, int pw, int ph, int char_index, float *xpos, float *ypos, stbtt_aligned_quad *q, int align_to_integer) |
STBTT_DEF int | stbtt_InitFont (stbtt_fontinfo *info, const unsigned char *data, int offset) |
STBTT_DEF int | stbtt_IsGlyphEmpty (const stbtt_fontinfo *info, int glyph_index) |
STBTT_DEF void | stbtt_MakeCodepointBitmap (const stbtt_fontinfo *info, unsigned char *output, int out_w, int out_h, int out_stride, float scale_x, float scale_y, int codepoint) |
STBTT_DEF void | stbtt_MakeCodepointBitmapSubpixel (const stbtt_fontinfo *info, unsigned char *output, int out_w, int out_h, int out_stride, float scale_x, float scale_y, float shift_x, float shift_y, int codepoint) |
STBTT_DEF void | stbtt_MakeGlyphBitmap (const stbtt_fontinfo *info, unsigned char *output, int out_w, int out_h, int out_stride, float scale_x, float scale_y, int glyph) |
STBTT_DEF void | stbtt_MakeGlyphBitmapSubpixel (const stbtt_fontinfo *info, unsigned char *output, int out_w, int out_h, int out_stride, float scale_x, float scale_y, float shift_x, float shift_y, int glyph) |
STBTT_DEF int | stbtt_PackBegin (stbtt_pack_context *spc, unsigned char *pixels, int width, int height, int stride_in_bytes, int padding, void *alloc_context) |
STBTT_DEF void | stbtt_PackEnd (stbtt_pack_context *spc) |
STBTT_DEF int | stbtt_PackFontRange (stbtt_pack_context *spc, unsigned char *fontdata, int font_index, float font_size, int first_unicode_char_in_range, int num_chars_in_range, stbtt_packedchar *chardata_for_range) |
STBTT_DEF int | stbtt_PackFontRanges (stbtt_pack_context *spc, unsigned char *fontdata, int font_index, stbtt_pack_range *ranges, int num_ranges) |
STBTT_DEF int | stbtt_PackFontRangesGatherRects (stbtt_pack_context *spc, stbtt_fontinfo *info, stbtt_pack_range *ranges, int num_ranges, stbrp_rect *rects) |
STBTT_DEF void | stbtt_PackFontRangesPackRects (stbtt_pack_context *spc, stbrp_rect *rects, int num_rects) |
STBTT_DEF int | stbtt_PackFontRangesRenderIntoRects (stbtt_pack_context *spc, stbtt_fontinfo *info, stbtt_pack_range *ranges, int num_ranges, stbrp_rect *rects) |
STBTT_DEF void | stbtt_PackSetOversampling (stbtt_pack_context *spc, unsigned int h_oversample, unsigned int v_oversample) |
STBTT_DEF void | stbtt_Rasterize (stbtt__bitmap *result, float flatness_in_pixels, stbtt_vertex *vertices, int num_verts, float scale_x, float scale_y, float shift_x, float shift_y, int x_off, int y_off, int invert, void *userdata) |
STBTT_DEF float | stbtt_ScaleForMappingEmToPixels (const stbtt_fontinfo *info, float pixels) |
STBTT_DEF float | stbtt_ScaleForPixelHeight (const stbtt_fontinfo *info, float pixels) |
#define __STB_INCLUDE_STB_TRUETYPE_H__ |
Definition at line 448 of file stb_truetype.h.
#define STBTT_DEF extern |
Definition at line 453 of file stb_truetype.h.
#define STBTT_MACSTYLE_BOLD 1 |
Definition at line 857 of file stb_truetype.h.
#define STBTT_MACSTYLE_DONTCARE 0 |
Definition at line 856 of file stb_truetype.h.
#define STBTT_MACSTYLE_ITALIC 2 |
Definition at line 858 of file stb_truetype.h.
#define STBTT_MACSTYLE_NONE 8 |
Definition at line 860 of file stb_truetype.h.
#define STBTT_MACSTYLE_UNDERSCORE 4 |
Definition at line 859 of file stb_truetype.h.
Definition at line 540 of file stb_truetype.h.
#define stbtt_vertex_type short |
Definition at line 733 of file stb_truetype.h.
typedef struct stbrp_rect stbrp_rect |
Definition at line 523 of file stb_truetype.h.
typedef struct stbtt_fontinfo stbtt_fontinfo |
Definition at line 521 of file stb_truetype.h.
typedef struct stbtt_pack_context stbtt_pack_context |
Definition at line 520 of file stb_truetype.h.
anonymous enum |
Enumerator | |
---|---|
STBTT_vmove | |
STBTT_vline | |
STBTT_vcurve |
Definition at line 724 of file stb_truetype.h.
anonymous enum |
Enumerator | |
---|---|
STBTT_PLATFORM_ID_UNICODE | |
STBTT_PLATFORM_ID_MAC | |
STBTT_PLATFORM_ID_ISO | |
STBTT_PLATFORM_ID_MICROSOFT |
Definition at line 874 of file stb_truetype.h.
anonymous enum |
Enumerator | |
---|---|
STBTT_UNICODE_EID_UNICODE_1_0 | |
STBTT_UNICODE_EID_UNICODE_1_1 | |
STBTT_UNICODE_EID_ISO_10646 | |
STBTT_UNICODE_EID_UNICODE_2_0_BMP | |
STBTT_UNICODE_EID_UNICODE_2_0_FULL |
Definition at line 881 of file stb_truetype.h.
anonymous enum |
Enumerator | |
---|---|
STBTT_MS_EID_SYMBOL | |
STBTT_MS_EID_UNICODE_BMP | |
STBTT_MS_EID_SHIFTJIS | |
STBTT_MS_EID_UNICODE_FULL |
Definition at line 889 of file stb_truetype.h.
anonymous enum |
Enumerator | |
---|---|
STBTT_MAC_EID_ROMAN | |
STBTT_MAC_EID_ARABIC | |
STBTT_MAC_EID_JAPANESE | |
STBTT_MAC_EID_HEBREW | |
STBTT_MAC_EID_CHINESE_TRAD | |
STBTT_MAC_EID_GREEK | |
STBTT_MAC_EID_KOREAN | |
STBTT_MAC_EID_RUSSIAN |
Definition at line 896 of file stb_truetype.h.
anonymous enum |
Definition at line 903 of file stb_truetype.h.
anonymous enum |
Definition at line 913 of file stb_truetype.h.
STBTT_DEF int stbtt_BakeFontBitmap | ( | const unsigned char * | data, |
int | offset, | ||
float | pixel_height, | ||
unsigned char * | pixels, | ||
int | pw, | ||
int | ph, | ||
int | first_char, | ||
int | num_chars, | ||
stbtt_bakedchar * | chardata | ||
) |
STBTT_DEF int stbtt_CompareUTF8toUTF16_bigendian | ( | const char * | s1, |
int | len1, | ||
const char * | s2, | ||
int | len2 | ||
) |
STBTT_DEF int stbtt_FindGlyphIndex | ( | const stbtt_fontinfo * | info, |
int | unicode_codepoint | ||
) |
STBTT_DEF int stbtt_FindMatchingFont | ( | const unsigned char * | fontdata, |
const char * | name, | ||
int | flags | ||
) |
STBTT_DEF void stbtt_FreeShape | ( | const stbtt_fontinfo * | info, |
stbtt_vertex * | vertices | ||
) |
STBTT_DEF void stbtt_GetBakedQuad | ( | stbtt_bakedchar * | chardata, |
int | pw, | ||
int | ph, | ||
int | char_index, | ||
float * | xpos, | ||
float * | ypos, | ||
stbtt_aligned_quad * | q, | ||
int | opengl_fillrule | ||
) |
STBTT_DEF unsigned char* stbtt_GetCodepointBitmap | ( | const stbtt_fontinfo * | info, |
float | scale_x, | ||
float | scale_y, | ||
int | codepoint, | ||
int * | width, | ||
int * | height, | ||
int * | xoff, | ||
int * | yoff | ||
) |
STBTT_DEF void stbtt_GetCodepointBitmapBox | ( | const stbtt_fontinfo * | font, |
int | codepoint, | ||
float | scale_x, | ||
float | scale_y, | ||
int * | ix0, | ||
int * | iy0, | ||
int * | ix1, | ||
int * | iy1 | ||
) |
STBTT_DEF void stbtt_GetCodepointBitmapBoxSubpixel | ( | const stbtt_fontinfo * | font, |
int | codepoint, | ||
float | scale_x, | ||
float | scale_y, | ||
float | shift_x, | ||
float | shift_y, | ||
int * | ix0, | ||
int * | iy0, | ||
int * | ix1, | ||
int * | iy1 | ||
) |
STBTT_DEF unsigned char* stbtt_GetCodepointBitmapSubpixel | ( | const stbtt_fontinfo * | info, |
float | scale_x, | ||
float | scale_y, | ||
float | shift_x, | ||
float | shift_y, | ||
int | codepoint, | ||
int * | width, | ||
int * | height, | ||
int * | xoff, | ||
int * | yoff | ||
) |
STBTT_DEF int stbtt_GetCodepointBox | ( | const stbtt_fontinfo * | info, |
int | codepoint, | ||
int * | x0, | ||
int * | y0, | ||
int * | x1, | ||
int * | y1 | ||
) |
STBTT_DEF void stbtt_GetCodepointHMetrics | ( | const stbtt_fontinfo * | info, |
int | codepoint, | ||
int * | advanceWidth, | ||
int * | leftSideBearing | ||
) |
STBTT_DEF int stbtt_GetCodepointKernAdvance | ( | const stbtt_fontinfo * | info, |
int | ch1, | ||
int | ch2 | ||
) |
STBTT_DEF int stbtt_GetCodepointShape | ( | const stbtt_fontinfo * | info, |
int | unicode_codepoint, | ||
stbtt_vertex ** | vertices | ||
) |
STBTT_DEF void stbtt_GetFontBoundingBox | ( | const stbtt_fontinfo * | info, |
int * | x0, | ||
int * | y0, | ||
int * | x1, | ||
int * | y1 | ||
) |
STBTT_DEF const char* stbtt_GetFontNameString | ( | const stbtt_fontinfo * | font, |
int * | length, | ||
int | platformID, | ||
int | encodingID, | ||
int | languageID, | ||
int | nameID | ||
) |
STBTT_DEF int stbtt_GetFontOffsetForIndex | ( | const unsigned char * | data, |
int | index | ||
) |
STBTT_DEF void stbtt_GetFontVMetrics | ( | const stbtt_fontinfo * | info, |
int * | ascent, | ||
int * | descent, | ||
int * | lineGap | ||
) |
STBTT_DEF unsigned char* stbtt_GetGlyphBitmap | ( | const stbtt_fontinfo * | info, |
float | scale_x, | ||
float | scale_y, | ||
int | glyph, | ||
int * | width, | ||
int * | height, | ||
int * | xoff, | ||
int * | yoff | ||
) |
STBTT_DEF void stbtt_GetGlyphBitmapBox | ( | const stbtt_fontinfo * | font, |
int | glyph, | ||
float | scale_x, | ||
float | scale_y, | ||
int * | ix0, | ||
int * | iy0, | ||
int * | ix1, | ||
int * | iy1 | ||
) |
STBTT_DEF void stbtt_GetGlyphBitmapBoxSubpixel | ( | const stbtt_fontinfo * | font, |
int | glyph, | ||
float | scale_x, | ||
float | scale_y, | ||
float | shift_x, | ||
float | shift_y, | ||
int * | ix0, | ||
int * | iy0, | ||
int * | ix1, | ||
int * | iy1 | ||
) |
STBTT_DEF unsigned char* stbtt_GetGlyphBitmapSubpixel | ( | const stbtt_fontinfo * | info, |
float | scale_x, | ||
float | scale_y, | ||
float | shift_x, | ||
float | shift_y, | ||
int | glyph, | ||
int * | width, | ||
int * | height, | ||
int * | xoff, | ||
int * | yoff | ||
) |
STBTT_DEF int stbtt_GetGlyphBox | ( | const stbtt_fontinfo * | info, |
int | glyph_index, | ||
int * | x0, | ||
int * | y0, | ||
int * | x1, | ||
int * | y1 | ||
) |
STBTT_DEF void stbtt_GetGlyphHMetrics | ( | const stbtt_fontinfo * | info, |
int | glyph_index, | ||
int * | advanceWidth, | ||
int * | leftSideBearing | ||
) |
STBTT_DEF int stbtt_GetGlyphKernAdvance | ( | const stbtt_fontinfo * | info, |
int | glyph1, | ||
int | glyph2 | ||
) |
STBTT_DEF int stbtt_GetGlyphShape | ( | const stbtt_fontinfo * | info, |
int | glyph_index, | ||
stbtt_vertex ** | vertices | ||
) |
STBTT_DEF void stbtt_GetPackedQuad | ( | stbtt_packedchar * | chardata, |
int | pw, | ||
int | ph, | ||
int | char_index, | ||
float * | xpos, | ||
float * | ypos, | ||
stbtt_aligned_quad * | q, | ||
int | align_to_integer | ||
) |
STBTT_DEF int stbtt_InitFont | ( | stbtt_fontinfo * | info, |
const unsigned char * | data, | ||
int | offset | ||
) |
STBTT_DEF int stbtt_IsGlyphEmpty | ( | const stbtt_fontinfo * | info, |
int | glyph_index | ||
) |
STBTT_DEF void stbtt_MakeCodepointBitmap | ( | const stbtt_fontinfo * | info, |
unsigned char * | output, | ||
int | out_w, | ||
int | out_h, | ||
int | out_stride, | ||
float | scale_x, | ||
float | scale_y, | ||
int | codepoint | ||
) |
STBTT_DEF void stbtt_MakeCodepointBitmapSubpixel | ( | const stbtt_fontinfo * | info, |
unsigned char * | output, | ||
int | out_w, | ||
int | out_h, | ||
int | out_stride, | ||
float | scale_x, | ||
float | scale_y, | ||
float | shift_x, | ||
float | shift_y, | ||
int | codepoint | ||
) |
STBTT_DEF void stbtt_MakeGlyphBitmap | ( | const stbtt_fontinfo * | info, |
unsigned char * | output, | ||
int | out_w, | ||
int | out_h, | ||
int | out_stride, | ||
float | scale_x, | ||
float | scale_y, | ||
int | glyph | ||
) |
STBTT_DEF void stbtt_MakeGlyphBitmapSubpixel | ( | const stbtt_fontinfo * | info, |
unsigned char * | output, | ||
int | out_w, | ||
int | out_h, | ||
int | out_stride, | ||
float | scale_x, | ||
float | scale_y, | ||
float | shift_x, | ||
float | shift_y, | ||
int | glyph | ||
) |
STBTT_DEF int stbtt_PackBegin | ( | stbtt_pack_context * | spc, |
unsigned char * | pixels, | ||
int | width, | ||
int | height, | ||
int | stride_in_bytes, | ||
int | padding, | ||
void * | alloc_context | ||
) |
STBTT_DEF void stbtt_PackEnd | ( | stbtt_pack_context * | spc | ) |
STBTT_DEF int stbtt_PackFontRange | ( | stbtt_pack_context * | spc, |
unsigned char * | fontdata, | ||
int | font_index, | ||
float | font_size, | ||
int | first_unicode_char_in_range, | ||
int | num_chars_in_range, | ||
stbtt_packedchar * | chardata_for_range | ||
) |
STBTT_DEF int stbtt_PackFontRanges | ( | stbtt_pack_context * | spc, |
unsigned char * | fontdata, | ||
int | font_index, | ||
stbtt_pack_range * | ranges, | ||
int | num_ranges | ||
) |
STBTT_DEF int stbtt_PackFontRangesGatherRects | ( | stbtt_pack_context * | spc, |
stbtt_fontinfo * | info, | ||
stbtt_pack_range * | ranges, | ||
int | num_ranges, | ||
stbrp_rect * | rects | ||
) |
STBTT_DEF void stbtt_PackFontRangesPackRects | ( | stbtt_pack_context * | spc, |
stbrp_rect * | rects, | ||
int | num_rects | ||
) |
STBTT_DEF int stbtt_PackFontRangesRenderIntoRects | ( | stbtt_pack_context * | spc, |
stbtt_fontinfo * | info, | ||
stbtt_pack_range * | ranges, | ||
int | num_ranges, | ||
stbrp_rect * | rects | ||
) |
STBTT_DEF void stbtt_PackSetOversampling | ( | stbtt_pack_context * | spc, |
unsigned int | h_oversample, | ||
unsigned int | v_oversample | ||
) |
STBTT_DEF void stbtt_Rasterize | ( | stbtt__bitmap * | result, |
float | flatness_in_pixels, | ||
stbtt_vertex * | vertices, | ||
int | num_verts, | ||
float | scale_x, | ||
float | scale_y, | ||
float | shift_x, | ||
float | shift_y, | ||
int | x_off, | ||
int | y_off, | ||
int | invert, | ||
void * | userdata | ||
) |
STBTT_DEF float stbtt_ScaleForMappingEmToPixels | ( | const stbtt_fontinfo * | info, |
float | pixels | ||
) |
STBTT_DEF float stbtt_ScaleForPixelHeight | ( | const stbtt_fontinfo * | info, |
float | pixels | ||
) |