gnu.java.awt.font.opentype

Class NameDecoder


public class NameDecoder
extends Object

A utility class that helps with decoding the names of OpenType and TrueType fonts.

Field Summary

static int
NAME_COPYRIGHT
static int
NAME_DESCRIPTION
static int
NAME_DESIGNER
static int
NAME_DESIGNER_URL
static int
NAME_FAMILY
Specifies the name of the family to which a font belongs, for example “Univers”.
static int
NAME_FULL
Specifies the full human-readable name of a font, for example “Univers Light”
static int
NAME_FULL_MACCOMPATIBLE
static int
NAME_LICENSE
static int
NAME_LICENSE_URL
static int
NAME_MANUFACTURER
static int
NAME_POSTSCRIPT
Specifies the PostScript name of a font, for example “Univers-Light”.
static int
NAME_POSTSCRIPT_CID
static int
NAME_PREFERRED_FAMILY
static int
NAME_PREFERRED_SUBFAMILY
static int
NAME_SAMPLE_TEXT
static int
NAME_SUBFAMILY
Specified the name of the font inside its family, for example “Light”.
static int
NAME_TRADEMARK
static int
NAME_UNIQUE
static int
NAME_VENDOR_URL
static int
NAME_VERSION

Method Summary

static String
getCharsetName(int platform, int language, int encoding)
Determines the name of the charset for an OpenType font name.
static Locale
getLocale(int platform, int language, int encoding)
Returns the Locale of an OpenType name.
static String
getName(ByteBuffer nameTable, int name, Locale locale)

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Details

NAME_COPYRIGHT

public static final int NAME_COPYRIGHT
Field Value:
0

NAME_DESCRIPTION

public static final int NAME_DESCRIPTION
Field Value:
10

NAME_DESIGNER

public static final int NAME_DESIGNER
Field Value:
9

NAME_DESIGNER_URL

public static final int NAME_DESIGNER_URL
Field Value:
12

NAME_FAMILY

public static final int NAME_FAMILY
Specifies the name of the family to which a font belongs, for example “Univers”.
Field Value:
1

NAME_FULL

public static final int NAME_FULL
Specifies the full human-readable name of a font, for example “Univers Light”
Field Value:
4

NAME_FULL_MACCOMPATIBLE

public static final int NAME_FULL_MACCOMPATIBLE
Field Value:
18

NAME_LICENSE

public static final int NAME_LICENSE
Field Value:
13

NAME_LICENSE_URL

public static final int NAME_LICENSE_URL
Field Value:
14

NAME_MANUFACTURER

public static final int NAME_MANUFACTURER
Field Value:
8

NAME_POSTSCRIPT

public static final int NAME_POSTSCRIPT
Specifies the PostScript name of a font, for example “Univers-Light”.
Field Value:
6

NAME_POSTSCRIPT_CID

public static final int NAME_POSTSCRIPT_CID
Field Value:
20

NAME_PREFERRED_FAMILY

public static final int NAME_PREFERRED_FAMILY
Field Value:
16

NAME_PREFERRED_SUBFAMILY

public static final int NAME_PREFERRED_SUBFAMILY
Field Value:
17

NAME_SAMPLE_TEXT

public static final int NAME_SAMPLE_TEXT
Field Value:
19

NAME_SUBFAMILY

public static final int NAME_SUBFAMILY
Specified the name of the font inside its family, for example “Light”.
Field Value:
2

NAME_TRADEMARK

public static final int NAME_TRADEMARK
Field Value:
7

NAME_UNIQUE

public static final int NAME_UNIQUE
Field Value:
3

NAME_VENDOR_URL

public static final int NAME_VENDOR_URL
Field Value:
11

NAME_VERSION

public static final int NAME_VERSION
Field Value:
5

Method Details

getCharsetName

public static String getCharsetName(int platform,
                                    int language,
                                    int encoding)
Determines the name of the charset for an OpenType font name.
Parameters:
platform - the OpenType platform ID.
language - the language tag of the OpenType name. If platform is 1, this is the MacOS language code.
encoding - the encoding tag of the OpenType name. If platform is 1, this is the MacOS script code.
Returns:
a charset name such as "MacRoman", or null if the combination is not known.

getLocale

public static Locale getLocale(int platform,
                               int language,
                               int encoding)
Returns the Locale of an OpenType name.
Parameters:
platform - the OpenType platform ID.
language - the language tag of the OpenType name. If platform is 1, this is the MacOS language code.
encoding - the encoding tag of the OpenType name. If platform is 1, this is the MacOS script code.

getName

public static String getName(ByteBuffer nameTable,
                             int name,
                             Locale locale)

NameDecoder.java -- Decodes names of OpenType and TrueType fonts. Copyright (C) 2006 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.