PoDoFo::PdfDifferenceEncoding Class Reference

#include <PdfDifferenceEncoding.h>

Inheritance diagram for PoDoFo::PdfDifferenceEncoding:

PoDoFo::PdfEncoding PoDoFo::PdfElement

List of all members.

Public Types

enum  EBaseEncoding { eBaseEncoding_Font, eBaseEncoding_WinAnsi, eBaseEncoding_MacRoman, eBaseEncoding_MacExpert }

Public Member Functions

 PdfDifferenceEncoding (const PdfEncodingDifference &rDifference, PdfDocument *pParent, bool bAutoDelete=true)
 PdfDifferenceEncoding (const PdfEncodingDifference &rDifference, PdfVecObjects *pParent, bool bAutoDelete=true)
 PdfDifferenceEncoding (const PdfEncodingDifference &rDifference, EBaseEncoding eBaseEncoding, PdfDocument *pParent, bool bAutoDelete=true)
 PdfDifferenceEncoding (const PdfEncodingDifference &rDifference, EBaseEncoding eBaseEncoding, PdfVecObjects *pParent, bool bAutoDelete=true)
 PdfDifferenceEncoding (PdfObject *pObject, bool bAutoDelete=true, bool bExplicitNames=false)
virtual void AddToDictionary (PdfDictionary &rDictionary) const
virtual PdfString ConvertToUnicode (const PdfString &rEncodedString, const PdfFont *pFont) const
virtual PdfRefCountedBuffer ConvertToEncoding (const PdfString &rString, const PdfFont *pFont) const
virtual bool IsAutoDelete () const
virtual bool IsSingleByteEncoding () const
const PdfEncodingDifferenceGetDifferences () const
virtual pdf_utf16be GetCharCode (int nIndex) const

Static Public Member Functions

static pdf_utf16be NameToUnicodeID (const PdfName &rName)
static PdfName UnicodeIDToName (pdf_utf16be inCodePoint)

Protected Member Functions

virtual const PdfNameGetID () const


Detailed Description

PdfDifferenceEncoding is an encoding, which is based on either the fonts encoding or a predefined encoding and defines differences to this base encoding.

Member Enumeration Documentation

Defines the base encoding from which a PdfDifferenceEncoding differs.

Enumerator:
eBaseEncoding_Font  Use The fonts encoding as base.
eBaseEncoding_WinAnsi  Use WinAnsiEncoding as base encoding.
eBaseEncoding_MacRoman  Use MacRomanEncoding as base encoding.
eBaseEncoding_MacExpert  Use MacExpertEncoding as base encoding.


Constructor & Destructor Documentation

PoDoFo::PdfDifferenceEncoding::PdfDifferenceEncoding ( const PdfEncodingDifference rDifference,
PdfDocument pParent,
bool  bAutoDelete = true 
)

Create a new PdfDifferenceEncoding which is based on the fonts encoding.

Parameters:
rDifference the differences in this encoding
pParent parent PdfVecObjects. Add a newly created object to this vector.
bAutoDelete if true the encoding is deleted by its owning font

PoDoFo::PdfDifferenceEncoding::PdfDifferenceEncoding ( const PdfEncodingDifference rDifference,
PdfVecObjects pParent,
bool  bAutoDelete = true 
)

Create a new PdfDifferenceEncoding which is based on the fonts encoding.

Parameters:
rDifference the differences in this encoding
pParent parent PdfDocument. Add a newly created object to this vector.
bAutoDelete if true the encoding is deleted by its owning font

PoDoFo::PdfDifferenceEncoding::PdfDifferenceEncoding ( const PdfEncodingDifference rDifference,
EBaseEncoding  eBaseEncoding,
PdfDocument pParent,
bool  bAutoDelete = true 
)

Create a new PdfDifferenceEncoding which is based on a predefined encoding.

Parameters:
rDifference the differences in this encoding
eBaseEncoding the base encoding of this font
pParent parent PdfDocument. Add a newly created object to this vector.
bAutoDelete if true the encoding is deleted by its owning font

PoDoFo::PdfDifferenceEncoding::PdfDifferenceEncoding ( const PdfEncodingDifference rDifference,
EBaseEncoding  eBaseEncoding,
PdfVecObjects pParent,
bool  bAutoDelete = true 
)

Create a new PdfDifferenceEncoding which is based on a predefined encoding.

Parameters:
rDifference the differences in this encoding
eBaseEncoding the base encoding of this font
pParent parent PdfVecObjects. Add a newly created object to this vector.
bAutoDelete if true the encoding is deleted by its owning font

PoDoFo::PdfDifferenceEncoding::PdfDifferenceEncoding ( PdfObject pObject,
bool  bAutoDelete = true,
bool  bExplicitNames = false 
)

Create a new PdfDifferenceEncoding from an existing object in a PDF file.

Parameters:
pObject an existing differences encoding
bAutoDelete if true the encoding is deleted by its owning font
bExplicitNames if true, glyph names are meaningless explicit keys on the font (used for Type3 fonts)


Member Function Documentation

pdf_utf16be PoDoFo::PdfDifferenceEncoding::NameToUnicodeID ( const PdfName rName  )  [static]

Convert a standard character name to a unicode code point

Parameters:
rName a standard character name
Returns:
an unicode code point

PdfName PoDoFo::PdfDifferenceEncoding::UnicodeIDToName ( pdf_utf16be  inCodePoint  )  [static]

Convert an unicode code point to a standard character name

Parameters:
inCodePoint a code point
Returns:
a standard character name of /.notdef if none could be found

void PoDoFo::PdfDifferenceEncoding::AddToDictionary ( PdfDictionary &  rDictionary  )  const [virtual]

Add this encoding object to a dictionary usually be adding an /Encoding key in font dictionaries.

Parameters:
rDictionary add the encoding to this dictionary

Implements PoDoFo::PdfEncoding.

PdfString PoDoFo::PdfDifferenceEncoding::ConvertToUnicode ( const PdfString rEncodedString,
const PdfFont pFont 
) const [virtual]

Convert a string that is encoded with this encoding to an unicode PdfString.

Parameters:
rEncodedString a string encoded by this encoding. Usually this string was read from a content stream.
pFont the font for which this string is converted
Returns:
an unicode PdfString.

Implements PoDoFo::PdfEncoding.

PdfRefCountedBuffer PoDoFo::PdfDifferenceEncoding::ConvertToEncoding ( const PdfString rString,
const PdfFont pFont 
) const [virtual]

Convert a unicode PdfString to a string encoded with this encoding.

Parameters:
rString an unicode PdfString.
pFont the font for which this string is converted
Returns:
an encoded PdfRefCountedBuffer. The PdfRefCountedBuffer is treated as a series of bytes and is allowed to have 0 bytes. The returned buffer must not be a unicode string.

Implements PoDoFo::PdfEncoding.

bool PoDoFo::PdfDifferenceEncoding::IsAutoDelete (  )  const [inline, virtual]

Returns:
true if this encoding should be deleted automatically with the font.

Implements PoDoFo::PdfEncoding.

bool PoDoFo::PdfDifferenceEncoding::IsSingleByteEncoding (  )  const [inline, virtual]

Returns:
true if this is a single byte encoding with a maximum of 256 values.

Implements PoDoFo::PdfEncoding.

const PdfEncodingDifference & PoDoFo::PdfDifferenceEncoding::GetDifferences (  )  const [inline]

Get read-only access to the object containing the actual differences.

Returns:
the container with the actual differences

pdf_utf16be PoDoFo::PdfDifferenceEncoding::GetCharCode ( int  nIndex  )  const [virtual]

Get the unicode character code for this encoding at the position nIndex. nIndex is a position between GetFirstChar() and GetLastChar()

Parameters:
nIndex character code at position index
Returns:
unicode character code
See also:
GetFirstChar

GetLastChar

Will throw an exception if nIndex is out of range.

Implements PoDoFo::PdfEncoding.

const PdfName & PoDoFo::PdfDifferenceEncoding::GetID (  )  const [inline, protected, virtual]

Get a unique ID for this encoding which can used for comparisons!

Returns:
a unique id for this encoding!

Implements PoDoFo::PdfEncoding.


Generated on Tue Nov 29 09:28:34 2016 for PoDoFo by  doxygen 1.5.6