/***************************************************************************/
/* */
/*ftsnames.h */
/* */
/*Simple interface to access SFNT name tables (which are used*/
/*to hold font names, copyright info, notices, etc.) (specification).*/
/* */
/*This is _not_ used to retrieve glyph names!*/
/* */
/*Copyright 1996-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 __FT_SFNT_NAMES_H__
#define __FT_SFNT_NAMES_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
/*************************************************************************/
/* */
/*
/*sfnt_names */
/* */
/*
/*SFNT Names */
/* */
/*
/*Access the names embedded in TrueType and OpenType files.*/
/* */
/*
/*The TrueType and OpenType specifications allow the inclusion of*/
/*a special `names table in font files.This table contains*/
/*textual (and internationalized) information regarding the font,*/
/*like family name, copyright, version, etc. */
/* */
/*The definitions below are used to access them if available.*/
/* */
/*Note that this has nothing to do with glyph names! */
/* */
/*************************************************************************/
/*************************************************************************/
/* */
/*
/*FT_SfntName*/
/* */
/*
/*A structure used to model an SFNT `name table entry.*/
/* */
/*
/*platform_id :: The platform ID for `string. */
/* */
/*encoding_id :: The encoding ID for `string. */
/* */
/*language_id :: The language ID for `string. */
/* */
/*name_id :: An identifier for `string. */
/* */
/*string:: The `name string.Note that its format differs*/
/* depending on the (platform,encoding) pair.It can*/
/* be a Pascal String, a UTF-16 one, etc.*/
/* */
/* Generally speaking, the string is not */
/* zero-terminated.Please refer to the TrueType*/
/* specification for details.*/
/* */
/*string_len:: The length of `string in bytes.*/
/* */
/*
/*Possible values for `platform_id, `encoding_id, `language_id, */
/*and `name_id are given in the file `ttnameid.h.For details */
/*please refer to the TrueType or OpenType specification.*/
/* */
/*See also @TT_PLATFORM_XXX, @TT_APPLE_ID_XXX, @TT_MAC_ID_XXX, */
/*@TT_ISO_ID_XXX, and @TT_MS_ID_XXX. */
/* */
typedef structFT_SfntName_
{
FT_UShortplatform_id;
FT_UShortencoding_id;
FT_UShortlanguage_id;
FT_UShortname_id;
FT_Byte* string;/* this string is *not* null-terminated! */
FT_UIntstring_len;/* in bytes */
} FT_SfntName;
/*************************************************************************/
/* */
/*
/*FT_Get_Sfnt_Name_Count */
/* */
/*
/*Retrieve the number of name strings in the SFNT `name table.*/
/* */
/**/
/*face :: A handle to the source face. */
/* */
/*
/*The number of strings in the `name table. */
/* */
FT_EXPORT( FT_UInt )
FT_Get_Sfnt_Name_Count( FT_Faceface );
/*************************************************************************/
/* */
/*
/*FT_Get_Sfnt_Name */
/* */
/*
/*Retrieve a string of the SFNT `name table for a given index.*/
/* */
/**/
/*face:: A handle to the source face.*/
/* */
/*idx :: The index of the `name string. */
/* */
/*
/***************************************************************************
*
* @constant:
* FT_PARAM_TAG_IGNORE_PREFERRED_FAMILY
*
* @description:
* A constant used as the tag of @FT_Parameter structures to make
* FT_Open_Face() ignore preferred family subfamily names in `name
* table since OpenType version 1.4.For backwards compatibility with
* legacy systems that have a 4-face-per-family restriction.
*
*/
#define FT_PARAM_TAG_IGNORE_PREFERRED_FAMILYFT_MAKE_TAG( i, g, p, f )
/***************************************************************************
*
* @constant:
* FT_PARAM_TAG_IGNORE_PREFERRED_SUBFAMILY
*
* @description:
* A constant used as the tag of @FT_Parameter structures to make
* FT_Open_Face() ignore preferred subfamily names in `name table since
* OpenType version 1.4.For backwards compatibility with legacy
* systems that have a 4-face-per-family restriction.
*
*/
#define FT_PARAM_TAG_IGNORE_PREFERRED_SUBFAMILYFT_MAKE_TAG( i, g, p, s )
/* */
FT_END_HEADER
#endif /* __FT_SFNT_NAMES_H__ */
/* END */
Reviews
There are no reviews yet.