org.apache.fop.fonts

## Class CIDFont

- java.lang.Object
- - org.apache.fop.fonts.Typeface
  - - org.apache.fop.fonts.CustomFont
    - - org.apache.fop.fonts.CIDFont

All Implemented Interfaces:
  FontDescriptor, FontMetrics, MutableFont

Direct Known Subclasses:
  MultiByteFont

    public abstract class CIDFont
    extends CustomFont

Abstract base class for CID fonts.

### Field Summary

Fields
`protected int[]` `width` Contains the character widths for all characters in the font

### Fields inherited from class org.apache.fop.fonts.CustomFont

`additionalEncodings, cmap, svgs, unencodedCharacters`

### Fields inherited from class org.apache.fop.fonts.Typeface

`eventListener, NOT_FOUND`

### Constructor Summary

Constructors
Constructor and Description
`CIDFont(InternalResourceResolver resourceResolver)`

### Method Summary

All Methods Instance Methods Abstract Methods Concrete Methods
`abstract CIDSet` `getCIDSet()` Returns the subset information for this font.
`abstract CIDFontType` `getCIDType()` Returns the type of the CID font.
`int` `getDefaultWidth()` Returns the default width for this font.
`abstract String` `getOrdering()` Returns a font name for use within a registry.
`abstract String` `getRegistry()` Returns the name of the issuer of the font.
`abstract int` `getSupplement()` Returns the supplement number of the character collection.
`abstract boolean` `hasCodePoint(int cp)` Determines whether this font contains a particular code point/glyph.
`boolean` `isMultiByte()` Determines whether the font is a multibyte font.
`abstract int` `mapCodePoint(int cp)` Map a Unicode code point to a code point in the font.

### Methods inherited from class org.apache.fop.fonts.CustomFont

`addUnencodedCharacter, getAdditionalEncoding, getAdditionalEncodingCount, getAscender, getAscender, getCapHeight, getCapHeight, getCMap, getDescender, getDescender, getEmbeddingMode, getEmbedFileURI, getEmbedFontName, getEmbedResourceName, getFamilyNames, getFirstChar, getFlags, getFontBBox, getFontName, getFontSubName, getFontType, getFontURI, getFullName, getInputStream, getItalicAngle, getKerningInfo, getLastChar, getMissingWidth, getSimulateStyle, getStemV, getStrikeoutPosition, getStrikeoutThickness, getStrippedFontName, getUnderlinePosition, getUnderlineThickness, getUnicodeFromGID, getUsedGlyphs, getWeight, getXHeight, hasAdditionalEncodings, hasKerningInfo, hasSVG, isAdvancedEnabled, isKerningEnabled, isSymbolicFont, mapUnencodedChar, putKerningEntry, replaceKerningMap, setAdvancedEnabled, setAscender, setCapHeight, setCMap, setDescender, setEmbeddingMode, setEmbedResourceName, setEmbedURI, setFamilyNames, setFirstChar, setFlags, setFontBBox, setFontName, setFontSubFamilyName, setFontType, setFontURI, setFullName, setItalicAngle, setKerningEnabled, setLastChar, setMissingWidth, setSimulateStyle, setStemV, setStrikeoutPosition, setStrikeoutThickness, setSVG, setUnderlinePosition, setUnderlineThickness, setWeight, setXHeight`

### Methods inherited from class org.apache.fop.fonts.Typeface

`getEncodingName, getMaxAscent, hadMappingOperations, hasChar, hasFeature, isCID, mapChar, notifyMapOperation, setEventListener, toString, warnMissingGlyph`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface org.apache.fop.fonts.FontDescriptor

`isEmbeddable, isSubsetEmbedded`

### Methods inherited from interface org.apache.fop.fonts.FontMetrics

`getBoundingBox, getMaxAscent, getWidth, getWidths, hasFeature`

### Field Detail

#### width

    protected int[] width

Contains the character widths for all characters in the font

### Constructor Detail

#### CIDFont

    public CIDFont(InternalResourceResolver resourceResolver)

Parameters:
  `resourceResolver` - the URI resolver for controlling file access

### Method Detail

#### getCIDType

    public abstract CIDFontType getCIDType()

Returns the type of the CID font.

Returns:
  the type of the CID font

#### getRegistry

    public abstract String getRegistry()

Returns the name of the issuer of the font.

Returns:
  a String identifying an issuer of character collections - for example, Adobe

#### getOrdering

    public abstract String getOrdering()

Returns a font name for use within a registry.

Returns:
  a String that uniquely names a character collection issued by a specific registry - for example, Japan1.

#### getSupplement

    public abstract int getSupplement()

Returns the supplement number of the character collection.

Returns:
  the supplement number

#### getCIDSet

    public abstract CIDSet getCIDSet()

Returns the subset information for this font.

Returns:
  the subset information

#### hasCodePoint

    public abstract boolean hasCodePoint(int cp)

Determines whether this font contains a particular code point/glyph.

Parameters:
  `cp` - character to check
Returns:
  True if the character is supported, False otherwise

#### mapCodePoint

    public abstract int mapCodePoint(int cp)

Map a Unicode code point to a code point in the font.

Parameters:
  `cp` - code point to map
Returns:
  the mapped code point

#### getDefaultWidth

    public int getDefaultWidth()

Returns the default width for this font.

Returns:
  the default width

#### isMultiByte

    public boolean isMultiByte()

Determines whether the font is a multibyte font.

Specified by:
  `isMultiByte` in interface `FontMetrics`
Overrides:
  `isMultiByte` in class `Typeface`
Returns:
  True if it is multibyte