InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ICompositeFont Class Referenceabstract

#include <ICompositeFont.h>

Inheritance diagram for ICompositeFont:
IPMUnknown

Public Types

enum  { kDefaultIID = IID_ICOMPOSITEFONT }
 

Public Member Functions

virtual UID GetBasedOn () const =0
 
virtual PMString GetFontFamilyName () const =0
 
virtual const PMStringGetNativeFontFamilyName () const =0
 
virtual void SetBasedOn (const UID &base)=0
 
virtual void SetName (const PMString &s)=0
 
virtual const PMStringGetNameStyle () const =0
 
virtual void SetNameStyle (const PMString &s)=0
 
virtual PMString GetPostScriptName ()=0
 
virtual void SetPostScriptName (const PMString &s)=0
 
virtual const PMStringGetCMapFileName () const =0
 
virtual void SetCMapFileName (const PMString &s)=0
 
virtual int32 GetCharClassLength ()=0
 
virtual ICompFontDataSettingsGetCharClass (int32 index) const =0
 
virtual ICompFontDataSettingsGetCharClass (const PMString &nameString) const =0
 
virtual ICompFontDataSettingsGetCharClass (UTF32TextChar findChar, UTF32TextChar *remapChar=nil) const =0
 
virtual UID GetCharClassUID (int32 index) const =0
 
virtual int32 GetCharClassIndex (const PMString &nameString) const =0
 
virtual ICompFontDataSettingsCreateCharClass ()=0
 
virtual void AppendCharClass (const UID newSetting)=0
 
virtual void AppendCharClass (ICompFontDataSettings *newSetting)=0
 
virtual void RemoveCharClass (int32 nIndex)=0
 
virtual void UnRemoveCharClass (UID nUID)=0
 
virtual void CopyCompositeFontData (ICompositeFont *from)=0
 
virtual void CopyAndConvertCompositeFontData (ICompositeFont *from, IDataBase *sourceDB, IDataBase *destDB)=0
 
virtual const PMString GetPSFontName (const int32 nCharClass, bool16 fEncoding=kTrue) const =0
 
virtual bool16 CompareCompositeFontData (ICompositeFont *srcData)=0
 
virtual void DeleteCompositeFontData ()=0
 
virtual bool16 IsDirty ()=0
 
virtual boost::shared_ptr
< CmdUtils::AutoUndoSequencePtr
DoDirty ()=0
 
virtual void SetLocked (const bool16 locked)=0
 
virtual bool16 IsLocked () const =0
 
virtual void SetFontMatrixAdjustment (const uint16 verticalBaselineShift)=0
 
virtual uint16 GetFontMatrixAdjustment () const =0
 
virtual void ReadWrite (IPMStream *s, ImplementationID id)=0
 
virtual ErrorCode ReadWriteRffFile (IPMStream *s)=0
 
virtual IDocumentGetDocument () const =0
 
virtual void SetDocument (IDocument *theDocWS)=0
 
- Public Member Functions inherited from IPMUnknown
virtual IPMUnknownQueryInterface (PMIID interfaceID) const =0
 
virtual void AddRef () const =0
 
virtual void Release () const =0
 

Detailed Description

Composite Font. creates a new font composed of real fonts. Font switching is based on unicode value. Currently base font must be either Chinese, Japanese, or Korean font.

Member Function Documentation

virtual void ICompositeFont::AppendCharClass (const UID newSetting)
pure virtual

Append setting to composite font

Parameters
newSettingnew settting to append.
virtual void ICompositeFont::AppendCharClass (ICompFontDataSettingsnewSetting)
pure virtual

Append setting to composite font

Parameters
newSettingnew settting to append.
virtual bool16 ICompositeFont::CompareCompositeFontData (ICompositeFontsrcData)
pure virtual

Compare composite fonts and return kTrue if they are the same

Parameters
srcDatacomposite font to compare to
Returns
bool16 kTrue if same
virtual void ICompositeFont::CopyAndConvertCompositeFontData (ICompositeFontfrom,
IDataBasesourceDB,
IDataBasedestDB 
)
pure virtual

Copy composite font data. This will conver the font family UIDs from source DB to dest DB

Parameters
fromcomposite font data to cop
sourceDBdatabase of from composite font data
destDBdatabase of this composite font data
virtual void ICompositeFont::CopyCompositeFontData (ICompositeFontfrom)
pure virtual

Copy composite font data

Parameters
fromcomposite font data to copy
virtual ICompFontDataSettings* ICompositeFont::CreateCharClass ()
pure virtual

Create a new setting. New setting is already appended to composite font

Returns
ICompFontDataSettings* new setting
virtual void ICompositeFont::DeleteCompositeFontData ()
pure virtual

Delete all settings in composite font

virtual boost::shared_ptr<CmdUtils::AutoUndoSequencePtr> ICompositeFont::DoDirty ()
pure virtual

Set dirty

virtual UID ICompositeFont::GetBasedOn () const
pure virtual

This value is set with SetBasedOn but not used internally

Returns
UID not used
virtual ICompFontDataSettings* ICompositeFont::GetCharClass (int32 index) const
pure virtual

Get setting at index.

Parameters
index0 based index. must be < GetCharClassLength
Returns
ICompFontDataSettings* setting at index
virtual ICompFontDataSettings* ICompositeFont::GetCharClass (const PMStringnameString) const
pure virtual

find Class by name

Parameters
nameStringname to find
Returns
ICompFontDataSettings setting found. nil if not found
virtual ICompFontDataSettings* ICompositeFont::GetCharClass (UTF32TextChar findChar,
UTF32TextCharremapChar = nil 
) const
pure virtual

find class with findChar in its range. Search from end as the last item has precedence

Parameters
findCharunicode value to find
remapCharOUT value of what find char is remapped to in found setting
Returns
ICompFontDataSettings setting found. nil if not found
virtual int32 ICompositeFont::GetCharClassIndex (const PMStringnameString) const
pure virtual

find Class by name

Parameters
nameStringname to find
Returns
int32 index of setting found. 0 if not found
virtual int32 ICompositeFont::GetCharClassLength ()
pure virtual

Get number of ICompFontDataSetting interfaces for this composite font

Returns
int32 number of settings for composite font
virtual UID ICompositeFont::GetCharClassUID (int32 index) const
pure virtual

get Class UID by index. UID is a ICompFontDataSetting UID

Parameters
nameStringindex of class
Returns
UID UID of setting found. kInvalidUID if not found
virtual const PMString& ICompositeFont::GetCMapFileName () const
pure virtual

Get file name of composite font.

Returns
file name of composite font
virtual IDocument* ICompositeFont::GetDocument () const
pure virtual

Should not use this. Only used in special cases where commands are used.

Returns
IDocument document
virtual PMString ICompositeFont::GetFontFamilyName () const
pure virtual

Family name of composite font. This is set with SetName(). It is the same as GetFontFamilyName() except this is always roman encoded. So if there are non roman characters their unicode will be embedded.

Returns
PMString family name
virtual uint16 ICompositeFont::GetFontMatrixAdjustment () const
pure virtual

OBSOLETE

Returns
uint16 always returns 1
virtual const PMString& ICompositeFont::GetNameStyle () const
pure virtual

This is usually an empty string.

Returns
composite font style name.
virtual const PMString& ICompositeFont::GetNativeFontFamilyName () const
pure virtual

Native family name of composite font. This is set with SetName().

Returns
PMString native family name
virtual PMString ICompositeFont::GetPostScriptName ()
pure virtual

Postscript name for composite font. This is usually generated from name set with SetName.

Returns
PMString postscript name for composite font
virtual const PMString ICompositeFont::GetPSFontName (const int32 nCharClass,
bool16 fEncoding = kTrue 
) const
pure virtual

Get postscript font name of font assigned to nCharClass setting.

Parameters
nCharClasssetting to get postscript font name from
fEncodingencoding of setting is appended to postscriptname. For instance if script of base font is Japanese "-UniJIS-UTF16-H" will be appended
Returns
PMString postscript font name
virtual bool16 ICompositeFont::IsDirty ()
pure virtual

OBSOLETE

Returns
bool16 always returns kFalse
virtual bool16 ICompositeFont::IsLocked () const
pure virtual

Gets locked status of composite font.

Returns
bool16 kTrue if locked. kFalse if unlocked
virtual void ICompositeFont::ReadWrite (IPMStreams,
ImplementationID id 
)
pure virtual

Read/Write the setting data

Parameters
sstream to read write
idnot used
virtual ErrorCode ICompositeFont::ReadWriteRffFile (IPMStreams)
pure virtual

Read or write composite font out to a file that can be read as a font.

Parameters
sstream to write to
Returns
ErrorCode kSuccess if no error.
virtual void ICompositeFont::RemoveCharClass (int32 nIndex)
pure virtual

Remove setting at index

Parameters
nIndexsetting index to remove
virtual void ICompositeFont::SetBasedOn (const UIDbase)
pure virtual

Value is saved but not used internally

Parameters
basenot used
virtual void ICompositeFont::SetCMapFileName (const PMStrings)
pure virtual

Set file name of composite font.

Parameters
PMStringfile name of composite font
virtual void ICompositeFont::SetDocument (IDocumenttheDocWS)
pure virtual

Should not use this. Only used in special cases where commands are used.

Parameters
theDocWSdocument
virtual void ICompositeFont::SetFontMatrixAdjustment (const uint16 verticalBaselineShift)
pure virtual

OBSOLETE

Parameters
verticalBaselineShift
virtual void ICompositeFont::SetLocked (const bool16 locked)
pure virtual

Sets composite font so user cannot edit. this is the case for external ATC fonts becuase we cannot create the same font that ATC does (ATC fonts have extra data)

Parameters
bool16kTrue to set lock. kFalse to set unlocked
virtual void ICompositeFont::SetName (const PMStrings)
pure virtual

Set the composite font name. To get this name call GetNativeFontFamilyName

Parameters
scomposite font name
virtual void ICompositeFont::SetNameStyle (const PMStrings)
pure virtual

This is generally not called. The default of empty string is fine

Parameters
scomposite font style name.
virtual void ICompositeFont::SetPostScriptName (const PMStrings)
pure virtual

Set postscript name for composite font.

Parameters
snew postscript name
virtual void ICompositeFont::UnRemoveCharClass (UID nUID)
pure virtual

Undeletes UID and appends it to composite font.

Parameters
nUIDUID to unremove