LEFontInstance.h | LEFontInstance.h | |||
---|---|---|---|---|
/* | /* | |||
* | * | |||
* (C) Copyright IBM Corp. 1998-2012 - All Rights Reserved | * (C) Copyright IBM Corp. 1998-2013 - All Rights Reserved | |||
* | * | |||
*/ | */ | |||
#ifndef __LEFONTINSTANCE_H | #ifndef __LEFONTINSTANCE_H | |||
#define __LEFONTINSTANCE_H | #define __LEFONTINSTANCE_H | |||
#include "LETypes.h" | #include "LETypes.h" | |||
/** | /** | |||
* \file | * \file | |||
* \brief C++ API: Layout Engine Font Instance object | * \brief C++ API: Layout Engine Font Instance object | |||
*/ | */ | |||
/** | ||||
* \def LE_CONFIG_FONTINSTANCE_LENGTH | ||||
* @internal | ||||
* Set this to 1 to enable a virtual function on LEFontInstance which takes | ||||
a font length, this is for compatibility with HarfBuzz. This is off by def | ||||
ault in ICU 50, but enabled by default in ICU 51+ | ||||
*/ | ||||
#ifndef LE_CONFIG_FONTINSTANCE_LENGTH | ||||
#define LE_CONFIG_FONTINSTANCE_LENGTH 0 | ||||
#endif | ||||
U_NAMESPACE_BEGIN | U_NAMESPACE_BEGIN | |||
/** | /** | |||
* Instances of this class are used by <code>LEFontInstance::mapCharsToGlyp hs</code> and | * Instances of this class are used by <code>LEFontInstance::mapCharsToGlyp hs</code> and | |||
* <code>LEFontInstance::mapCharToGlyph</code> to adjust character codes be fore the character | * <code>LEFontInstance::mapCharToGlyph</code> to adjust character codes be fore the character | |||
* to glyph mapping process. Examples of this are filtering out control cha racters | * to glyph mapping process. Examples of this are filtering out control cha racters | |||
* and character mirroring - replacing a character which has both a left an d a right | * and character mirroring - replacing a character which has both a left an d a right | |||
* hand form with the opposite form. | * hand form with the opposite form. | |||
* | * | |||
* @stable ICU 3.2 | * @stable ICU 3.2 | |||
skipping to change at line 168 | skipping to change at line 178 | |||
* | * | |||
* @param tableTag - the four byte table tag. (e.g. 'cmap') | * @param tableTag - the four byte table tag. (e.g. 'cmap') | |||
* | * | |||
* @return the address of the table in memory, or <code>NULL</code> | * @return the address of the table in memory, or <code>NULL</code> | |||
* if the table doesn't exist. | * if the table doesn't exist. | |||
* | * | |||
* @stable ICU 2.8 | * @stable ICU 2.8 | |||
*/ | */ | |||
virtual const void *getFontTable(LETag tableTag) const = 0; | virtual const void *getFontTable(LETag tableTag) const = 0; | |||
#if LE_CONFIG_FONTINSTANCE_LENGTH | ||||
/** | /** | |||
* This method reads a table from the font. Note that in general, | * This method reads a table from the font. Note that in general, | |||
* it only makes sense to call this method on an <code>LEFontInstance</ code> | * it only makes sense to call this method on an <code>LEFontInstance</ code> | |||
* which represents a physical font - i.e. one which has been returned by | * which represents a physical font - i.e. one which has been returned by | |||
* <code>getSubFont()</code>. This is because each subfont in a composi te font | * <code>getSubFont()</code>. This is because each subfont in a composi te font | |||
* will have different tables, and there's no way to know which subfont to access. | * will have different tables, and there's no way to know which subfont to access. | |||
* | * | |||
* Subclasses which represent composite fonts should always return <cod e>NULL</code>. | * Subclasses which represent composite fonts should always return <cod e>NULL</code>. | |||
* | * | |||
* This version sets a length, for range checking. | * This version sets a length, for range checking. | |||
* | * | |||
* @param tableTag - the four byte table tag. (e.g. 'cmap') | * @param tableTag - the four byte table tag. (e.g. 'cmap') | |||
* @param length - ignored on entry, on exit will be the length of the table if known, or -1 if unknown. | * @param length - ignored on entry, on exit will be the length of the table if known, or -1 if unknown. | |||
* @return the address of the table in memory, or <code>NULL</code> | * @return the address of the table in memory, or <code>NULL</code> | |||
* if the table doesn't exist. | * if the table doesn't exist. | |||
* @internal | * @internal | |||
*/ | */ | |||
virtual const void* getFontTable(LETag tableTag, size_t &length) const { length=-1; return getFontTable(tableTag); } /* -1 = unknown length */ | virtual const void* getFontTable(LETag tableTag, size_t &length) const { length=-1; return getFontTable(tableTag); } /* -1 = unknown length */ | |||
#endif | ||||
/** | /** | |||
* This method is used to determine if the font can | * This method is used to determine if the font can | |||
* render the given character. This can usually be done | * render the given character. This can usually be done | |||
* by looking the character up in the font's character | * by looking the character up in the font's character | |||
* to glyph mapping. | * to glyph mapping. | |||
* | * | |||
* The default implementation of this method will return | * The default implementation of this method will return | |||
* <code>TRUE</code> if <code>mapCharToGlyph(ch)</code> | * <code>TRUE</code> if <code>mapCharToGlyph(ch)</code> | |||
* returns a non-zero value. | * returns a non-zero value. | |||
End of changes. 5 change blocks. | ||||
1 lines changed or deleted | 15 lines changed or added | |||
uvernum.h | uvernum.h | |||
---|---|---|---|---|
/* | /* | |||
*************************************************************************** **** | *************************************************************************** **** | |||
* Copyright (C) 2000-2012, International Business Machines | * Copyright (C) 2000-2013, International Business Machines | |||
* Corporation and others. All Rights Reserved. | * Corporation and others. All Rights Reserved. | |||
*************************************************************************** **** | *************************************************************************** **** | |||
* | * | |||
* file name: uvernum.h | * file name: uvernum.h | |||
* encoding: US-ASCII | * encoding: US-ASCII | |||
* tab size: 8 (not used) | * tab size: 8 (not used) | |||
* indentation:4 | * indentation:4 | |||
* | * | |||
* Created by: Vladimir Weinstein | * Created by: Vladimir Weinstein | |||
* Updated by: Steven R. Loomis | * Updated by: Steven R. Loomis | |||
skipping to change at line 72 | skipping to change at line 72 | |||
/** The current ICU minor version as an integer. | /** The current ICU minor version as an integer. | |||
* This value will change in the subsequent releases of ICU | * This value will change in the subsequent releases of ICU | |||
* @stable ICU 2.6 | * @stable ICU 2.6 | |||
*/ | */ | |||
#define U_ICU_VERSION_MINOR_NUM 1 | #define U_ICU_VERSION_MINOR_NUM 1 | |||
/** The current ICU patchlevel version as an integer. | /** The current ICU patchlevel version as an integer. | |||
* This value will change in the subsequent releases of ICU | * This value will change in the subsequent releases of ICU | |||
* @stable ICU 2.4 | * @stable ICU 2.4 | |||
*/ | */ | |||
#define U_ICU_VERSION_PATCHLEVEL_NUM 1 | #define U_ICU_VERSION_PATCHLEVEL_NUM 2 | |||
/** The current ICU build level version as an integer. | /** The current ICU build level version as an integer. | |||
* This value is for use by ICU clients. It defaults to 0. | * This value is for use by ICU clients. It defaults to 0. | |||
* @stable ICU 4.0 | * @stable ICU 4.0 | |||
*/ | */ | |||
#ifndef U_ICU_VERSION_BUILDLEVEL_NUM | #ifndef U_ICU_VERSION_BUILDLEVEL_NUM | |||
#define U_ICU_VERSION_BUILDLEVEL_NUM 0 | #define U_ICU_VERSION_BUILDLEVEL_NUM 0 | |||
#endif | #endif | |||
/** Glued version suffix for renamers | /** Glued version suffix for renamers | |||
skipping to change at line 121 | skipping to change at line 121 | |||
#define U_DEF2_ICU_ENTRY_POINT_RENAME(x,y) U_DEF_ICU_ENTRY_POINT_RENAME(x,y ) | #define U_DEF2_ICU_ENTRY_POINT_RENAME(x,y) U_DEF_ICU_ENTRY_POINT_RENAME(x,y ) | |||
#define U_ICU_ENTRY_POINT_RENAME(x) U_DEF2_ICU_ENTRY_POINT_RENAME(x,U_IC U_VERSION_SUFFIX) | #define U_ICU_ENTRY_POINT_RENAME(x) U_DEF2_ICU_ENTRY_POINT_RENAME(x,U_IC U_VERSION_SUFFIX) | |||
#endif | #endif | |||
#endif | #endif | |||
/** The current ICU library version as a dotted-decimal string. The patchle vel | /** The current ICU library version as a dotted-decimal string. The patchle vel | |||
* only appears in this string if it non-zero. | * only appears in this string if it non-zero. | |||
* This value will change in the subsequent releases of ICU | * This value will change in the subsequent releases of ICU | |||
* @stable ICU 2.4 | * @stable ICU 2.4 | |||
*/ | */ | |||
#define U_ICU_VERSION "50.1.1" | #define U_ICU_VERSION "50.1.2" | |||
/** The current ICU library major/minor version as a string without dots, f or library name suffixes. | /** The current ICU library major/minor version as a string without dots, f or library name suffixes. | |||
* This value will change in the subsequent releases of ICU | * This value will change in the subsequent releases of ICU | |||
* @stable ICU 2.6 | * @stable ICU 2.6 | |||
*/ | */ | |||
#define U_ICU_VERSION_SHORT "50" | #define U_ICU_VERSION_SHORT "50" | |||
#ifndef U_HIDE_INTERNAL_API | #ifndef U_HIDE_INTERNAL_API | |||
/** Data version in ICU4C. | /** Data version in ICU4C. | |||
* @internal ICU 4.4 Internal Use Only | * @internal ICU 4.4 Internal Use Only | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 3 lines changed or added | |||