[SOLVED] CS /***************************************************************************/

$25

File Name: CS_/***************************************************************************/.zip
File Size: 753.6 KB

5/5 - (1 vote)

/***************************************************************************/
/* */
/*ftadvanc.h */
/* */
/*Quick computation of advance widths (specification only).*/
/* */
/*Copyright 2008-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 __FTADVANC_H__
#define __FTADVANC_H__

#include
#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:
* quick_advance
*
* @title:
* Quick retrieval of advance values
*
* @abstract:
* Retrieve horizontal and vertical advance values without processing
* glyph outlines, if possible.
*
* @description:
* This section contains functions to quickly extract advance values
* without handling glyph outlines, if possible.
*
* @order:
* FT_Get_Advance
* FT_Get_Advances
*
*/

/*************************************************************************/
/* */
/* */
/*FT_ADVANCE_FLAG_FAST_ONLY*/
/* */
/* */
/*A bit-flag to be OR-ed with the `flags parameter of the */
/*@FT_Get_Advance and @FT_Get_Advances functions.*/
/* */
/*If set, it indicates that you want these functions to fail if the*/
/*corresponding hinting mode or font driver doesnt allow for very */
/*quick advance computation. */
/* */
/*Typically, glyphs that are either unscaled, unhinted, bitmapped, */
/*or light-hinted can have their advance width computed very */
/*quickly. */
/* */
/*Normal and bytecode hinted modes that require loading, scaling,*/
/*and hinting of the glyph outline, are extremely slow by*/
/*comparison.*/
/* */
#define FT_ADVANCE_FLAG_FAST_ONLY0x20000000L

/*************************************************************************/
/* */
/* */
/*FT_Get_Advance */
/* */
/* */
/*Retrieve the advance value of a given glyph outline in an*/
/*@FT_Face.*/
/* */
/**/
/*face :: The source @FT_Face handle.*/
/* */
/*gindex :: The glyph index. */
/* */
/*load_flags :: A set of bit flags similar to those used when*/
/*calling @FT_Load_Glyph, used to determine what kind*/
/*of advances you need.*/
/* */
/*padvance :: The advance value.If scaling is performed (based on*/
/*the value of `load_flags), the advance value is in*/
/*16.16 format.Otherwise, it is in font units. */
/* */
/*If @FT_LOAD_VERTICAL_LAYOUT is set, this is the*/
/*vertical advance corresponding to a vertical layout. */
/*Otherwise, it is the horizontal advance in a */
/*horizontal layout. */
/* */
/* */
/*FreeType error code.0 means success. */
/* */
/* */
/*This function may fail if you use @FT_ADVANCE_FLAG_FAST_ONLY and */
/*if the corresponding font backend doesnt have a quick way to*/
/*retrieve the advances. */
/* */
/*A scaled advance is returned in 16.16 format but isnt transformed */
/*by the affine transformation specified by @FT_Set_Transform. */
/* */
FT_EXPORT( FT_Error )
FT_Get_Advance( FT_Faceface,
FT_UIntgindex,
FT_Int32 load_flags,
FT_Fixed*padvance );

/*************************************************************************/
/* */
/* */
/*FT_Get_Advances*/
/* */
/* */
/*Retrieve the advance values of several glyph outlines in an*/
/*@FT_Face.*/
/* */
/**/
/*face:: The source @FT_Face handle. */
/* */
/*start :: The first glyph index.*/
/* */
/*count :: The number of advance values you want to retrieve.*/
/* */
/*load_flags:: A set of bit flags similar to those used when */
/* calling @FT_Load_Glyph. */
/* */
/* */
/*padvance :: The advance values.This array, to be provided by the */
/*caller, must contain at least `count elements.*/
/* */
/*If scaling is performed (based on the value of */
/*`load_flags), the advance values are in 16.16 format. */
/*Otherwise, they are in font units. */
/* */
/*If @FT_LOAD_VERTICAL_LAYOUT is set, these are the*/
/*vertical advances corresponding to a vertical layout.*/
/*Otherwise, they are the horizontal advances in a */
/*horizontal layout. */
/* */
/* */
/*FreeType error code.0 means success. */
/* */
/* */
/*This function may fail if you use @FT_ADVANCE_FLAG_FAST_ONLY and */
/*if the corresponding font backend doesnt have a quick way to*/
/*retrieve the advances. */
/* */
/*Scaled advances are returned in 16.16 format but arent*/
/*transformed by the affine transformation specified by*/
/*@FT_Set_Transform. */
/* */
FT_EXPORT( FT_Error )
FT_Get_Advances( FT_Faceface,
FT_UIntstart,
FT_UIntcount,
FT_Int32 load_flags,
FT_Fixed*padvances );

/* */

FT_END_HEADER

#endif /* __FTADVANC_H__ */

/* END */

Reviews

There are no reviews yet.

Only logged in customers who have purchased this product may leave a review.

Shopping Cart
[SOLVED] CS /***************************************************************************/
$25