![]() | InDesign SDK 20.5 |
#include <IGlyphUtilsME.h>

Public Types | |
| enum | { kDefaultIID = IID_IGLYPHUTILSME } |
Public Member Functions | |
| virtual void | InsertTheCharacter (ISelectionManager *selMgr, IPMFont *font, LanguageID id, const GlyphEntry *baseGlyphEntry, const GlyphEntry *alternateGlyphEntry, bool16 selectChar=kFalse, bool16 setFont=kFalse)=0 |
| virtual int32 | GetSelectionGlyphSet (IPMFont *font, IFontInstance *fontInstance, LanguageID id, const WideString &chars, Text::GlyphID glyph, GlyphSet *glyphSet, GlyphSet::GlyphSortOrder sortOrder=GlyphSet::kNoOrder)=0 |
| virtual int32 | GetGlyphListGlyphSet (IPMFont *font, IFontInstance *fontInstance, LanguageID id, Text::GlyphID *glyphs, int32 numGlyphs, GlyphSet *glyphSet, GlyphSet::GlyphSortOrder sortOrder=GlyphSet::kNoOrder)=0 |
| virtual bool16 | GetGlyphHasAlternate (IPMFont *font, LanguageID id, Text::GlyphID glyph, const char *tag=nil)=0 |
| virtual unsigned | GetGlyphAlternateCount (IPMFont *font, LanguageID id, Text::GlyphID glyph, const char *tag=nil)=0 |
| virtual int32 | GetEntireFont (IPMFont *font, LanguageID id, GlyphSet *glyphSet, GlyphSet::GlyphSortOrder sortOrder=GlyphSet::kNoOrder)=0 |
| virtual int32 | GetFilteredGlyphs (IPMFont *font, LanguageID id, GlyphSet *glyphSet, GlyphFilterProcList &includeFilterProcList, GlyphFilterProcList &excludeFilterProcList, GlyphSet::GlyphSortOrder sortOrder=GlyphSet::kNoOrder)=0 |
| virtual int32 | GetOTFFeatureGlyphSet (const char *tags, int32 numTags, IPMFont *font, LanguageID id, GlyphSet *glyphSet, GlyphSet::GlyphSortOrder sortOrder=GlyphSet::kNoOrder)=0 |
| virtual bool16 | GetOTFFeature (IPMFont *font, IFontInstance *fontInstance, LanguageID id, const GlyphEntry *baseGlyph, const GlyphEntry *alternate, char *tagBuffer, int32 &choice)=0 |
| virtual int32 | GetGlyphsForFeatureAccessInfo (const char *tags, int32 numTags, IPMFont *font, LanguageID id, GlyphSet *glyphSet)=0 |
| virtual int32 | GetGlyphAccessInfo (Text::GlyphID glyphID, IPMFont *font, LanguageID id, GlyphAccessData *glyphAccessData)=0 |
| virtual int32 | GetGlyphAllAccessInfo (Text::GlyphID glyphID, IPMFont *font, LanguageID langID, K2Vector< GlyphAccessData * > &glyphAccessDataList)=0 |
| virtual bool16 | TestFeatureSubstitution (IFontInstance *fontInstance, LanguageID id, const WideString &textString, char *tags, int32 *choices, int32 numFeatures, Text::GlyphID testGlyphID)=0 |
| virtual void | GetOTFAttribute (char *tags, int32 choice, AttributeBossList *attrBossList, OpenTypeFeatureList &featureList, int32 &form, IFontInstance *fontInstance, LanguageID id, const WideString &stringToApply, Text::GlyphID g)=0 |
| virtual void | InsertTheCharacterAtRange (ISelectionManager *selMgr, IPMFont *font, LanguageID id, const GlyphEntry *baseGlyphEntry, const GlyphEntry *alternateGlyphEntry, bool16 selectChar=kFalse, bool16 setFont=kFalse, TextIndex start=kInvalidTextIndex, TextIndex end=kInvalidTextIndex, const RangeData *rangeToSelect=nil)=0 |
Public Member Functions inherited from IPMUnknown | |
| virtual IPMUnknown * | QueryInterface (PMIID interfaceID) const =0 |
| virtual void | AddRef () const =0 |
| virtual void | Release () const =0 |
Utilities for dealing with glyphs focusing on the complex-script aspects, especially.
| pure virtual |
Get all glyphs in font
| font | font to get glyphs in |
| id | Language id |
| glyphSet | OUT all glyphs in font |
| sortOrder | how the returned glyph set should be sorted |
| pure virtual |
Get all glyphs in a font that satisfy the given filter function (typically from UnicodeClass).
| font | font to get glyphs for |
| id | Language id |
| glyphSet | OUT filtered glyphs in font meeting the filter function(s) condition(s). |
| includeFilterProcList | a list of function pointers to use to filter "in" the glyphs in the font, typically from UnicodeClass.h. GlyphFilterProcList filterArray; filterArray.push_back(&UnicodeClass::IsPunctuationOpen()); filterArray.push_back(&UnicodeClass::IsPunctuationClose()); |
| excludeFilterProcList | a list of function pointers to use to further filter "out" the glyphs in the font captured by the includeFilterProcList, typically from UnicodeClass.h. |
| sortOrder | how the returned glyph set should be sorted |
| pure virtual |
Sets glyphAccessData->fDesiredTag to global gDesiredTag. Calls IPMFont::GetOTGlyphAccess. External code should not use this and call IPMFont::GetOTGlyphAccess instead.
| glyphID | glyph id to get access for |
| font | font glyph id is in |
| id | Language id. |
| glyphAccessData | access data |
| pure virtual |
Sets glyphAccessData->fDesiredTag to global gDesiredTag. Calls IPMFont::GetAllOTGlyphAccess. External code should not use this and call IPMFont::GetAllOTGlyphAccess instead.
| glyphID | glyph id to get access for |
| font | font glyph id is in |
| id | Language id. |
| glyphAccessData | vector of access data |
| pure virtual |
Determine how many alternate with a given OpenType feature tag the glyph has.
| font | font to look for alternate glyph in |
| id | Language id. |
| glyph | glyph to look for alternate |
| tag | OpenType feature tag to look for. 'aalt' if set to nil. |
| pure virtual |
Determine if glyph has alternate with a given OpenType feature tag.
| font | font to look for alternate glyph in |
| id | Language id. |
| glyph | glyph to look for alternate |
| tag | OpenType feature tag to look for. 'aalt' if set to nil. |
| pure virtual |
Get alternates for glyphs
| font | font to get glyph alternates in |
| fontInstance | font instance to get glyph alternates in. needs to be an instance of font |
| id | Language id. |
| glyphs | glyphs to find alternates for |
| numGlyphs | number of glyphs. must be < 20 (kMaxStrikes). |
| glyphSet | OUT set of glyph alternates. |
| sortOrder | how the returned glyph set should be sorted |
| pure virtual |
Get glyphs for a OpenType feature
| tags | OpenType features to get glyphs for |
| numTags | number of OpenType features |
| font | font to get glyphs in |
| id | Language id. |
| glyphSet | OUT glyphs with OpenType features |
| pure virtual |
Get an attribute for an open type feature. Return if a suitable one was found.
| tags | OpenType feature to get attribute for |
| choice | value of OTF feature chosen from tags array |
| attrBossList | OUT attribute for the open type feature |
| featureList | OUT |
| form | OUT |
| fontInstance | font instance to get attribute for. |
| id | Language id. |
| stringToApply | string to get OTF attribute for |
| g | glyphID to get OTF attribute for |
| pure virtual |
Try and find an open type feature for the font/glyph combo. Return if a suitable one was found. Probably INTERNAL use only.
| font | font glyph id is in |
| fontInstance | font instance to get OTF feature for. needs to be an instance of font |
| id | Language id. |
| baseGlyph | entry of base glyph |
| alternate | entry of alternate glyph |
| tags | OpenType features to get glyphs for |
| choice | OUT return index value of OTF feature chosen from tags array. |
| pure virtual |
Get glyphs for a OpenType feature. Also sets global gDesiredTag that is used by GetGlyphAccessInfo for what OpenType feature to prefer.
| tags | OpenType features to get glyphs for |
| numTags | number of OpenType features |
| font | font to get glyphs in |
| id | Language id. |
| glyphSet | OUT glyphs with OpenType features |
| sortOrder | how the returned glyph set should be sorted |
| pure virtual |
Gets alternate glyph values for a given glyph.
| font | font to get glyph alternates in |
| fontInstance | font instance to get glyph alternates in. needs to be an instance of font |
| id | Language id. |
| chars | unicode value(s) for glyph. multiple values only if glyph is a combination of unicode values like a ligature. |
| glyph | glyph to get alternates for |
| glyphSet | OUT set of glyph alternates. |
| sortOrder | how the returned glyph set should be sorted |
| pure virtual |
Inserts a glyph into textmodel. This API is deprecated. Please use InsertTheCharacterAtRange instead.
| *setMgr | selection manager |
| *font | font of glyph. |
| id | Language id. |
| *baseGlyphEntry | entry of base glyph |
| *alternateGlyphEntry | entry of alternate glyph |
| selectChar | select glyph inserted |
| setFont | set font of glyph to font passed in. font is restored to previous font after insertion |
| pure virtual |
Inserts a glyph into textmodel
| *setMgr | selection manager |
| *font | font of glyph. |
| id | Language id. |
| *baseGlyphEntry | entry of base glyph |
| *alternateGlyphEntry | entry of alternate glyph |
| selectChar | select glyph inserted |
| setFont | set font of glyph to font passed in. font is restored to previous font after insertion |
| start | Text index from where to insert. If this is not provided, then selection is taken as default. |
| end | Text index till where to insert. If this is not provided, then selection is taken as default. |
| rangeToSelect | Select this range of text after replacing the character. |
| pure virtual |
Description Probably INTERNAL use only.
| fontInstance | font instance to test out application of OTF features. needs to be an instance of font |
| id | Language id. |
| textString | a string of length 1 to apply OTF the feature to |
| tags | OpenType features array |
| choices | array of choice for features. count is the same as numFeatures. |
| numFeatures | number of features in features variable |
| testGlyphID |