org.apache.fontbox.cmap

## Class CMapParser

- java.lang.Object
- - org.apache.fontbox.cmap.CMapParser

    public class CMapParser
    extends Object

Parses a CMap stream.

Author:
  Ben Litchfield

### Constructor Summary

Constructors
Constructor and Description
`CMapParser()` Creates a new instance of CMapParser.
`CMapParser(boolean strictMode)` Creates a new instance of CMapParser.

### Method Summary

All Methods Instance Methods Concrete Methods
`protected InputStream` `getExternalCMap(String name)` Returns an input stream containing the given "use" CMap.
`CMap` `parse(File file)` Parse a CMAP file on the file system.
`CMap` `parse(InputStream input)` This will parse the stream and create a cmap object.
`CMap` `parsePredefined(String name)` Parses a predefined CMap.

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

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

### Constructor Detail

#### CMapParser

    public CMapParser()

Creates a new instance of CMapParser.

#### CMapParser

    public CMapParser(boolean strictMode)

Creates a new instance of CMapParser.

Parameters:
  `strictMode` - activates the strict mode used for inline CMaps

### Method Detail

#### parse

    public CMap parse(File file)
               throws IOException

Parse a CMAP file on the file system.

Parameters:
  `file` - The file to parse.
Returns:
  A parsed CMAP file.
Throws:
  `IOException` - If there is an issue while parsing the CMAP.

#### parsePredefined

    public CMap parsePredefined(String name)
                         throws IOException

Parses a predefined CMap.

Parameters:
  `name` - CMap name.
Returns:
  The parsed predefined CMap as a java object, never null.
Throws:
  `IOException` - If the CMap could not be parsed.

#### parse

    public CMap parse(InputStream input)
               throws IOException

This will parse the stream and create a cmap object.

Parameters:
  `input` - The CMAP stream to parse.
Returns:
  The parsed stream as a java object, never null.
Throws:
  `IOException` - If there is an error parsing the stream.

#### getExternalCMap

    protected InputStream getExternalCMap(String name)
                                   throws IOException

Returns an input stream containing the given "use" CMap.

Parameters:
  `name` - Name of the given "use" CMap resource.
Throws:
  `IOException` - if the CMap resource doesn't exist or if there is an error opening its stream.