parent
78b6740ff2
commit
f70cf971a8
1 changed files with 149 additions and 0 deletions
@ -0,0 +1,149 @@ |
||||
/***************************************************************************/ |
||||
/* */ |
||||
/* ftsizes.h */ |
||||
/* */ |
||||
/* FreeType size objects management (specification). */ |
||||
/* */ |
||||
/* Copyright 1996-2001 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. */ |
||||
/* */ |
||||
/***************************************************************************/ |
||||
|
||||
|
||||
/*************************************************************************/ |
||||
/* */ |
||||
/* Typical application would normally not need to use these functions */ |
||||
/* however, they've been placed in a public API for the rare cases */ |
||||
/* where they're needed.. */ |
||||
/* */ |
||||
/*************************************************************************/ |
||||
|
||||
|
||||
#ifndef __FTSIZES_H__ |
||||
#define __FTSIZES_H__ |
||||
|
||||
|
||||
#include <ft2build.h> |
||||
#include FT_FREETYPE_H |
||||
|
||||
|
||||
FT_BEGIN_HEADER |
||||
|
||||
|
||||
/*************************************************************************/ |
||||
/* */ |
||||
/* <Section> */ |
||||
/* sizes_management */ |
||||
/* */ |
||||
/* <Title> */ |
||||
/* Size management */ |
||||
/* */ |
||||
/* <Abstract> */ |
||||
/* Managing multiple sizes per face */ |
||||
/* */ |
||||
/* <Description> */ |
||||
/* When creating a new face object (e.g. with @FT_New_Face), a */ |
||||
/* @FT_Size object is automatically created and used to store all */ |
||||
/* pixel-size dependent information, available in the "face->size" */ |
||||
/* field. */ |
||||
/* */ |
||||
/* It is however possible to create more sizes for a given face, */ |
||||
/* mostly in order to manage several character pixel sizes of the */ |
||||
/* same font family and style. See @FT_New_Size and @FT_Done_Size */ |
||||
/* */ |
||||
/* note that @FT_Set_Pixel_Sizes and @FT_Set_Character_Size only */ |
||||
/* modify the content of the current "active" size, you'll thus need */ |
||||
/* to use @FT_Activate_Size to change it.. */ |
||||
/* */ |
||||
/* 99% of applications won't need the functions provided here, */ |
||||
/* especially if they use the caching sub-system, so be cautious */ |
||||
/* when using these.. */ |
||||
/* */ |
||||
/*************************************************************************/ |
||||
|
||||
/*************************************************************************/ |
||||
/* */ |
||||
/* <Function> */ |
||||
/* FT_New_Size */ |
||||
/* */ |
||||
/* <Description> */ |
||||
/* Creates a new size object from a given face object. */ |
||||
/* */ |
||||
/* <Input> */ |
||||
/* face :: A handle to a parent face object. */ |
||||
/* */ |
||||
/* <Output> */ |
||||
/* asize :: A handle to a new size object. */ |
||||
/* */ |
||||
/* <Return> */ |
||||
/* FreeType error code. 0 means success. */ |
||||
/* */ |
||||
/* <Note> */ |
||||
/* You need to call FT_Activate_Size in order to select the new */ |
||||
/* size for upcoming calls to @FT_Set_Pixel_Sizes, @FT_Set_Char_Size, */ |
||||
/* @FT_Load_Glyph, @FT_Load_Char, etc.. */ |
||||
/* */ |
||||
FT_EXPORT( FT_Error ) |
||||
FT_New_Size( FT_Face face, |
||||
FT_Size* size ); |
||||
|
||||
|
||||
/*************************************************************************/ |
||||
/* */ |
||||
/* <Function> */ |
||||
/* FT_Done_Size */ |
||||
/* */ |
||||
/* <Description> */ |
||||
/* Discards a given size object. */ |
||||
/* */ |
||||
/* <Input> */ |
||||
/* size :: A handle to a target size object. */ |
||||
/* */ |
||||
/* <Return> */ |
||||
/* FreeType error code. 0 means success. */ |
||||
/* */ |
||||
FT_EXPORT( FT_Error ) |
||||
FT_Done_Size( FT_Size size ); |
||||
|
||||
|
||||
/*************************************************************************/ |
||||
/* */ |
||||
/* <Function> */ |
||||
/* FT_Activate_Size */ |
||||
/* */ |
||||
/* <Description> */ |
||||
/* even though it is possible to create several size objects for a */ |
||||
/* given face (see @FT_New_Size for details), functions like */ |
||||
/* @FT_Load_Glyph or @FT_Load_Char only use the last-created one */ |
||||
/* to determine the "current character pixel size. */ |
||||
/* */ |
||||
/* this function can be used to "activate" a previous size object */ |
||||
/* */ |
||||
/* <Input> */ |
||||
/* size :: A handle to a target size object. */ |
||||
/* */ |
||||
/* <Return> */ |
||||
/* FreeType error code. 0 means success. */ |
||||
/* */ |
||||
/* <Note> */ |
||||
/* if "face" is the size's parent face object, this function changes */ |
||||
/* the value of "face->size" to the input size handle. */ |
||||
/* */ |
||||
FT_EXPORT( FT_Error ) |
||||
FT_Activate_Size( FT_Size size ); |
||||
|
||||
/* */ |
||||
|
||||
|
||||
FT_END_HEADER |
||||
|
||||
#endif /* __FTSIZES_H__ */ |
||||
|
||||
|
||||
/* END */ |
Loading…
Reference in new issue