Finale PDK Framework 0.73
Public Member Functions | List of all members
FCTextMetrics Class Reference

A class that fetches the metrics for text (for how Finale will render it), such as the boundary boxes and the advance width. More...

#include <ff_base.h>

Inheritance diagram for FCTextMetrics:
__FCBase

Public Member Functions

 FCTextMetrics ()
 The constructor. Defaults to unloaded. Metrics must be loaded with LoadString, LoadSymbol, or LoadArticulation. More...
 
bool LoadString (const FCString *pText, const FCFontInfo *pFont, float percent)
 Loads the metrics for the string and font. More...
 
bool LoadSymbol (eUniChar16 symbolchar, FCFontInfo *pFont, float percent)
 Loads the text metrics for a specific character in a font. More...
 
bool LoadArticulation (FCArticulationDef *pArticDef, bool flipped, float percent)
 Loads the metrics for a specific articulation glyph. More...
 
void CopyFrom (FCTextMetrics *pTextMetrics)
 Copies all metrics data from another object. More...
 
double GetAdvanceWidthPoints () const
 Returns the advance width of the string (the pen position before and after printing the string), in fractional Points measurements. More...
 
double GetLeftPoints () const
 Returns the left side of the bounding box, in fractional Points measurements. More...
 
double GetRightPoints () const
 Returns the right side of the bounding box, in fractional Points measurements. More...
 
double GetTopPoints () const
 Returns the top side of the bounding box, in fractional Points measurements. More...
 
double GetBottomPoints () const
 Returns the bottom side of the bounding box, in fractional Points measurements. More...
 
double GetAdvanceWidthEVPUs () const
 Returns the advance width of the string (the pen position before and after printing the string), in fractional EVPUs. More...
 
double GetLeftEVPUs () const
 Returns the left side of the bounding box, in fractional EVPUs. More...
 
double GetRightEVPUs () const
 Returns the right side of the bounding box, in fractional EVPUs. More...
 
double GetTopEVPUs () const
 Returns the top side of the bounding box, in fractional EVPUs. More...
 
double GetBottomEVPUs () const
 Returns the bottom side of the bounding box, in fractional EVPUs. More...
 
double CalcHeightPoints ()
 Returns the width of the bounding box, in fractional Points. More...
 
double CalcWidthPoints ()
 Returns the width of the bounding box, in fractional Points. More...
 
double CalcHeightEVPUs ()
 Returns the width of the bounding box, in fractional EVPUs. More...
 
double CalcWidthEVPUs ()
 Returns the width of the bounding box, in fractional EVPUs. More...
 
const char * ClassName () const override
 Returns the name of the class, for diagnostic purposes. This method MUST be overwritten in each child class. More...
 
void DebugDump () override
 Outputs the class data/information for debugging purposes. More...
 
- Public Member Functions inherited from __FCBase
virtual const PDKFRAMEWORK_CLASSID GetClassID () const
 Returns the internal class ID for the PDK Framework class. This is implemented mostly because Lua has problems to resolve the true classes of inherited objects. More...
 
virtual ~__FCBase ()
 Virtual destructor, so all inherited classes get the virtual destructor.
 
void DebugMsgInt (const char *pszPrefixText, int i)
 Creates a simple Message Box for debug purposes. The text appears with the extra digit (in decimal presentation) appearing afterwards. More...
 
void DebugMsgHex (const char *pszPrefixText, int i)
 Creates a simple Message Box for debug purposes. The text appears with the extra digit (as a hexadecimal number) appearing afterwards. More...
 
void DebugMsgString (const char *pszPrefixText, const char *thestring)
 Creates a simple Message Box for debug purposes. The text appears with the extra string appearing afterwards. More...
 
void DebugMsg (const char *pszMsg)
 Creates a simple Message Box for debug purposes with just one text string. More...
 
void DebugOutMenuInfo (FCUI *pUI, int menuixd_horiz, int menuixd_vert) const
 Outputs the menu command info for debugging purposes. More...
 
int DebugOutFormat (const char *fmt,...)
 Outputs debug text using C style "printf" syntax. More...
 
virtual void DebugDataDump ()
 Outputs a memory dump of the data block in the object for debugging purposes. More...
 
virtual void DebugDataByteArrayDump ()
 Outputs a memory dump of the data block in the object for debugging purposes, as a C++ byte array. More...
 
void Set16BitFlag (FLAG_16 *flag, FLAG_16 flagbits, bool state)
 Sets a 16 bit flag. More...
 
void Set32BitFlag (FLAG_32 *flag, FLAG_32 flagbits, bool state)
 Sets/resets a 32 bit flag, by using a bit mask. More...
 
bool GetBitFlag (FLAG_32 flag, FLAG_32 flagbits) const
 Gets a state from flag bits. Returns true if any bit in the mask is set. More...
 
int GetBitCount (FLAG_32 flag)
 Returns the total number of set bits in a 32-bit unsigned int.
 
void SetSpecific32Bit (FLAG_32 *flag, int bitnumber, bool state)
 Sets/resets a single bit in a 32 bit flag, by specifying one specific bit. More...
 
void SetUserData (void *pData)
 Sets the user data attached to the instance of an object. More...
 
void SetUserData2 (void *pData)
 Sets the additional user data attached to the instance of an object. More...
 
void * GetUserData () const
 Gets the user data attached to the instance of an object. More...
 
void * GetUserData2 () const
 Gets the additional user data attached to the instance of an object. More...
 
virtual bool IsIdentical (const __FCBase *pCompareObject) const
 Returns true if the data in the passed object is considered to be identical to the current object, otherwise false. More...
 
void StoreXML_String (tinyxml2::XMLElement *pParentNode, const char *pszElementName, FCString *pStringValue)
 Helper function to store FCString objects in the XML file. More...
 
void StoreXML_Integer (tinyxml2::XMLElement *pParentNode, const char *pszElementName, int value)
 Helper function to store integer objects in the XML file. More...
 
void StoreXML_Bool (tinyxml2::XMLElement *pParentNode, const char *pszElementName, bool value)
 Helper function to store boolean objects in the XML file. More...
 
void StoreXML_StringAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, FCString *pStringValue)
 Helper function to store FCString objects in the XML file, as an attribute to a node. More...
 
void StoreXML_IntegerAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, int value)
 Helper function to store integer objects in the XML file, as an attribute to a node. More...
 
void StoreXML_BoolAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, bool value)
 Helper function to store boolean objects in the XML file, as an attribute to a node. More...
 
void StoreXML_FloatAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, float value)
 Helper function to store floating point objects in the XML file, as an attribute to a node. More...
 
virtual void StoreToXML (tinyxml2::XMLElement *pParentNode)
 Virtual method that is used to store an object's data. More...
 
bool ReadXML_String (tinyxml2::XMLElement *pParentNode, const char *pszElementName, FCString *pStringValue)
 Helper method to read FCString objects from the XML file. More...
 
bool ReadXML_Integer (tinyxml2::XMLElement *pParentNode, const char *pszElementName, int *pValue)
 Helper method to read integer objects from the XML file. More...
 
bool ReadXML_Bool (tinyxml2::XMLElement *pParentNode, const char *pszElementName, bool *pValue)
 Helper method to read boolean objects from the XML file. More...
 
bool ReadXML_StringAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, FCString *pStringValue)
 Helper method to read FCString objects from the XML file, as an attribute to a node. More...
 
bool ReadXML_IntegerAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, int *pValue)
 Helper method to read integer objects from the XML file, as an attribute to a node. More...
 
bool ReadXML_BoolAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, bool *pValue)
 Helper method to read boolean objects from the XML file, as an attribute to a node. More...
 
bool ReadXML_FloatAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, float *pValue)
 Helper method to read floating point objects from the XML file, as an attribute to a node. More...
 
virtual bool ReadFromXML (tinyxml2::XMLElement *pParentNode)
 Virtual method that is used to read object data. More...
 

Additional Inherited Members

- Public Types inherited from __FCBase
enum  PDKFRAMEWORK_CLASSID {
  FCID_UNKNOWN = 0 , FCID_ACCIDENTALMOD , FCID_ACTIVELYRIC , FCID_ALLOTMENT ,
  FCID_ARTICULATION , FCID_ARTICULATIONDEF , FCID_BACKWARDREPEAT , FCID_BASELINE ,
  FCID_BEAMMOD , FCID_BEATCHARTELEMENT , FCID_BOOKMARK , FCID_BROKENBEAMMOD ,
  FCID_CATEGORYDEF , FCID_CELLCLEFCHANGE , FCID_CELLFRAMEHOLD , FCID_CELLGRAPHIC ,
  FCID_CELLTEXT , FCID_CENTERSMARTSHAPE , FCID_CHORD , FCID_CHORDPREFS ,
  FCID_CHORDSUFFIXELEMENT , FCID_CHORUSSYLLABLE , FCID_CLEFDEF , FCID_COMPOSITETIMESIGBOTTOMELEMENT ,
  FCID_COMPOSITETIMESIGTOPELEMENT , FCID_CROSSSTAFFMOD , FCID_CUSTOMSMARTLINEDEF , FCID_CUSTOMSTEMMOD ,
  FCID_DISTANCEPREFS , FCID_DOTMOD , FCID_ENCLOSURE , FCID_ENDINGREPEAT ,
  FCID_ENIGMATEXTSTYLE , FCID_ENTRYALTERMOD , FCID_EXECUTABLESHAPEDEF , FCID_EXPRESSION ,
  FCID_FONTINFO , FCID_FONTPREFS , FCID_FREEZESYSTEM , FCID_FRETBOARDSTYLEDEF ,
  FCID_FRETBOARDSTYLEDEFS , FCID_FRETBOARDGROUPDEF , FCID_FRETBOARDGROUPDEFS , FCID_FRETINSTRUMENTDEF ,
  FCID_GENERALPREFS , FCID_GRIDSGUIDESPREFS , FCID_GROUP , FCID_GROUPNAMEPOSITIONPREFS ,
  FCID_HUMANPLAYBACKPREFS , FCID_INDEPENDENTCELLDETAIL , FCID_INSTRUMENTDEF , FCID_INSTRUMENTPLAYBACKDATA ,
  FCID_KEYMODEDEF , FCID_KEYSIGNATURE , FCID_LAYERPREFS , FCID_LYRICSBASELINE ,
  FCID_LYRICSPREFS , FCID_MEASURE , FCID_MEASURENUMBERREGION , FCID_METATOOLASSIGNMENT ,
  FCID_MIDIEXPRESSION , FCID_MISCDOCPREFS , FCID_MULTIMEASUREREST , FCID_MULTIMEASURERESTPREFS ,
  FCID_MULTISTAFFINSTRUMENT , FCID_MULTISTAFFINSTRUMENTS , FCID_MUSICCHARACTERPREFS , FCID_MUSICSPACINGPREFS ,
  FCID_NUMBER , FCID_NOTEHEADMOD , FCID_OTHERINCI , FCID_PERCUSSIONLAYOUTNOTE ,
  FCID_PERCUSSIONSTAFF , FCID_PERFORMANCEMOD , FCID_PAGE , FCID_PAGEFORMATPREFS ,
  FCID_PAGEGRAPHIC , FCID_PAGETEXT , FCID_PART , FCID_PARTEXTRACTPREFS ,
  FCID_PARTSCOPEPREFS , FCID_PARTSTAFFVOICING , FCID_PERCUSSIONNOTEMOD , FCID_PIANOBRACEPREFS ,
  FCID_PLAYBACKPREFS , FCID_RAWTEXT , FCID_REPEATPREFS , FCID_SECONDARYBEAMBREAKMOD ,
  FCID_BEAMEXTENSIONMOD , FCID_SECTIONSYLLABLE , FCID_SEPARATEMEASURENUMBER , FCID_SEPARATEPLACEMENT ,
  FCID_SHAPEDEF , FCID_SHAPEEXPRESSIONDEF , FCID_SLURCONTOURPREFS , FCID_SIZEPREFS ,
  FCID_SMARTSHAPE , FCID_SMARTSHAPEENTRYMARK , FCID_SMARTSHAPEMEASUREMARK , FCID_SMARTSHAPEPREFS ,
  FCID_STAFF , FCID_STAFFLIST , FCID_STAFFNAMEPOSITION , FCID_STAFFNAMEPOSITIONPREFS ,
  FCID_STAFFSTYLEASSIGN , FCID_STAFFSTYLEDEF , FCID_STAFFSYSTEM , FCID_STEMCONNECTIONTABLE ,
  FCID_STEMMOD , FCID_STRING , FCID_SYLLABLEENTRYMOD , FCID_SYSTEMSTAFF ,
  FCID_TABLATURENOTEMOD , FCID_TEMPOELEMENT , FCID_TEXTBLOCK , FCID_TEXTEXPRESSIONDEF ,
  FCID_TEXTREPEAT , FCID_TEXTREPEATDEF , FCID_TIEMOD , FCID_TIEPREFS ,
  FCID_TIECONTOURPREFS , FCID_TIEPLACEMENTPREFS , FCID_TIMESIGNATURE , FCID_TUPLET ,
  FCID_TUPLETPREFS , FCID_VERSESYLLABLE
}
 Constants for the GetClassID method. More...
 
enum  MEASUREMENTUNITS {
  MEASUREMENTUNIT_DEFAULT = UNIT_DEFAULT , MEASUREMENTUNIT_EVPUS = UNIT_EVPUS , MEASUREMENTUNIT_INCHES = UNIT_INCHES , MEASUREMENTUNIT_CENTIMETERS = UNIT_CENTS ,
  MEASUREMENTUNIT_POINTS = UNIT_POINTS , MEASUREMENTUNIT_PICAS = UNIT_PICAS , MEASUREMENTUNIT_SPACES = UNIT_SPACES , MEASUREMENTUNIT_MILLIMETERS = 100
}
 Constants for Finale's standard measurement units. More...
 
- Static Public Member Functions inherited from __FCBase
static void DebugOutPtr (const char *pszPrefixText, void *ptr)
 Static method that outputs a line for debugging purposes. The prefix text appears with the extra ptr (in hexadeximal representation) appearing afterwards. More...
 
static void DebugOutInt (const char *pszPrefixText, int i)
 Static method that outputs a line for debugging purposes. The text appears with the extra digit (in decimal presentation) appearing afterwards. More...
 
static void DebugOutFloat (const char *pszPrefixText, double f)
 Static method that outputs a line for debugging purposes. The text appears with the extra float value appearing afterwards. More...
 
static void DebugOutTag (const char *pszPrefixText, EXTAG extag)
 Static method that outputs a line for debugging purposes. The text appears with the EXTAG (in text) appearing afterwards. More...
 
static void DebugOutHex (const char *pszPrefixText, int i)
 Static method that outputs a line for debugging purposes. The text appears with the extra digit (in hexadecimal presentation) appearing afterwards. More...
 
static void DebugOutBin (const char *pszPrefixText, int i)
 Static method that outputs a line for debugging purposes. The text appears with the extra digit (in binary presentation) appearing afterwards. More...
 
static void DebugOutString (const char *pszPrefixText, const char *thestring)
 Static method that outputs a line for debugging purposes (C string version). The text appears with the extra string appearing afterwards. More...
 
static void DebugOutString (const char *pszPrefixText, FCString *pString)
 Static method that outputs a line for debugging purposes (FCString version). The text appears with the extra string appearing afterwards. More...
 
static void DebugOutBool (const char *pszPrefixText, bool state)
 Static method that outputs a line for debugging purposes. The boolean state appears afterwards as either "TRUE" or "FALSE". More...
 
static void DebugOutBlock (const void *pBuffer, int startoffset, int size)
 Static method that outputs a memory block for debugging purposes. Eight bytes per line will appear (as hex digits) until the whole memory block is dumped. More...
 
static void DebugOutByteArrayBlock (const void *pBuffer, int startoffset, int size)
 Static method that outputs a memory block for debugging purposes. Eight bytes per line will appear (as hex digits) as a C++ onebyte array, until the whole memory block is dumped. More...
 
static void DebugOut (const char *pszLine)
 Static method to output a line of text for debugging purposes. More...
 
- Protected Member Functions inherited from __FCBase
 __FCBase ()
 The constructor.
 

Detailed Description

A class that fetches the metrics for text (for how Finale will render it), such as the boundary boxes and the advance width.

Metrics can be obtained with the LoadString(), LoadSymbol() or LoadArticulation() methods.

This class only works on Finale 25 and above.

Constructor & Destructor Documentation

◆ FCTextMetrics()

FCTextMetrics::FCTextMetrics ( )
inline

The constructor. Defaults to unloaded. Metrics must be loaded with LoadString, LoadSymbol, or LoadArticulation.

Lua-supported.

Member Function Documentation

◆ CalcHeightEVPUs()

double FCTextMetrics::CalcHeightEVPUs ( )
inline

Returns the width of the bounding box, in fractional EVPUs.

Lua-supported.

Returns
For Finale versions earlier than Finale 25, 0 is returned. Otherwise, the width of the bounding box, in fractional EVPUs.

◆ CalcHeightPoints()

double FCTextMetrics::CalcHeightPoints ( )
inline

Returns the width of the bounding box, in fractional Points.

Warning
The "points" referred to here are a platform-dependent units. On macOS, they appear to be 72 dpi points, but on Windows they are a different unit, possibly pixels. To get platform-independent 72 dpi units, do not use this function. Instead, divide CalcHeightEVPUs by 4.

Lua-supported.

Returns
For Finale versions earlier than Finale 25, 0 is returned. Otherwise, the width of the bounding box, in fractional Points.

◆ CalcWidthEVPUs()

double FCTextMetrics::CalcWidthEVPUs ( )
inline

Returns the width of the bounding box, in fractional EVPUs.

Lua-supported.

Returns
For Finale versions earlier than Finale 25, 0 is returned. Otherwise, the width of the bounding box, in fractional EVPUs.

◆ CalcWidthPoints()

double FCTextMetrics::CalcWidthPoints ( )
inline

Returns the width of the bounding box, in fractional Points.

Warning
The "points" referred to here are a platform-dependent units. On macOS, they appear to be 72 dpi points, but on Windows they are a different unit, possibly pixels. To get platform-independent 72 dpi units, do not use this function. Instead, divide CalcWidthEVPUs by 4.

Lua-supported.

Returns
For Finale versions earlier than Finale 25, 0 is returned. Otherwise, the width of the bounding box, in fractional Points.

◆ ClassName()

const char * FCTextMetrics::ClassName ( ) const
inlineoverridevirtual

Returns the name of the class, for diagnostic purposes. This method MUST be overwritten in each child class.

Lua-supported.

Implements __FCBase.

◆ CopyFrom()

void FCTextMetrics::CopyFrom ( FCTextMetrics pTextMetrics)

Copies all metrics data from another object.

Lua-supported.

Parameters
pTextMetricsPointer to the source object to be copied.

◆ DebugDump()

void FCTextMetrics::DebugDump ( )
inlineoverridevirtual

Outputs the class data/information for debugging purposes.

Accessible if PDK_FRAMEWORK_DEBUG is defined.

When child class inherit this method to output the contents of its own members, it should call the parent before providing its own output.

Reimplemented from __FCBase.

◆ GetAdvanceWidthEVPUs()

double FCTextMetrics::GetAdvanceWidthEVPUs ( ) const
inline

Returns the advance width of the string (the pen position before and after printing the string), in fractional EVPUs.

Lua-supported (also as a read-only property).

Returns
For Finale versions earlier than Finale 25, 0 is returned. Otherwise, the advance width, in fractional EVPUs.

◆ GetAdvanceWidthPoints()

double FCTextMetrics::GetAdvanceWidthPoints ( ) const
inline

Returns the advance width of the string (the pen position before and after printing the string), in fractional Points measurements.

This width is not the same as the left-right difference of the bounding box.

Warning
The "points" referred to here are a platform-dependent units. On macOS, they appear to be 72 dpi points, but on Windows they are a different unit, possibly pixels. To get platform-independent 72 dpi units, do not use this function. Instead, divide GetAdvanceWidthEVPUs by 4.

Lua-supported (also as a read-only property).

Returns
For Finale versions earlier than Finale 25, 0 is returned. Otherwise, the advance width, in fractional Points.

◆ GetBottomEVPUs()

double FCTextMetrics::GetBottomEVPUs ( ) const
inline

Returns the bottom side of the bounding box, in fractional EVPUs.

Lua-supported (also as a read-only property).

Returns
For Finale versions earlier than Finale 25, 0 is returned. Otherwise, the bottom side of the bounding box, in fractional EVPUs.

◆ GetBottomPoints()

double FCTextMetrics::GetBottomPoints ( ) const
inline

Returns the bottom side of the bounding box, in fractional Points measurements.

Warning
The "points" referred to here are a platform-dependent units. On macOS, they appear to be 72 dpi points, but on Windows they are a different unit, possibly pixels. To get platform-independent 72 dpi units, do not use this function. Instead, divide GetBottomEVPUs by 4.

Lua-supported (also as a read-only property).

Returns
For Finale versions earlier than Finale 25, 0 is returned. Otherwise, the bottom side of the bounding box, in fractional Points measurements.

◆ GetLeftEVPUs()

double FCTextMetrics::GetLeftEVPUs ( ) const
inline

Returns the left side of the bounding box, in fractional EVPUs.

Lua-supported (also as a read-only property).

Returns
For Finale versions earlier than Finale 25, 0 is returned. Otherwise, the left side of the bounding box, in fractional EVPUs.

◆ GetLeftPoints()

double FCTextMetrics::GetLeftPoints ( ) const
inline

Returns the left side of the bounding box, in fractional Points measurements.

Warning
The "points" referred to here are a platform-dependent units. On macOS, they appear to be 72 dpi points, but on Windows they are a different unit, possibly pixels. To get platform-independent 72 dpi units, do not use this function. Instead, divide GetLeftEVPUs by 4.

Lua-supported (also as a read-only property).

Returns
For Finale versions earlier than Finale 25, 0 is returned. Otherwise, the left side of the bounding box, in fractional Points measurements.

◆ GetRightEVPUs()

double FCTextMetrics::GetRightEVPUs ( ) const
inline

Returns the right side of the bounding box, in fractional EVPUs.

Lua-supported (also as a read-only property).

Returns
For Finale versions earlier than Finale 25, 0 is returned. Otherwise, the right side of the bounding box, in fractional EVPUs.

◆ GetRightPoints()

double FCTextMetrics::GetRightPoints ( ) const
inline

Returns the right side of the bounding box, in fractional Points measurements.

Warning
The "points" referred to here are a platform-dependent units. On macOS, they appear to be 72 dpi points, but on Windows they are a different unit, possibly pixels. To get platform-independent 72 dpi units, do not use this function. Instead, divide GetRightEVPUs by 4.

Lua-supported (also as a read-only property).

Returns
For Finale versions earlier than Finale 25, 0 is returned. Otherwise, the right side of the bounding box, in fractional Points measurements.

◆ GetTopEVPUs()

double FCTextMetrics::GetTopEVPUs ( ) const
inline

Returns the top side of the bounding box, in fractional EVPUs.

Lua-supported (also as a read-only property).

Returns
For Finale versions earlier than Finale 25, 0 is returned. Otherwise, the top side of the bounding box, in fractional EVPUs.

◆ GetTopPoints()

double FCTextMetrics::GetTopPoints ( ) const
inline

Returns the top side of the bounding box, in fractional Points measurements.

Warning
The "points" referred to here are a platform-dependent units. On macOS, they appear to be 72 dpi points, but on Windows they are a different unit, possibly pixels. To get platform-independent 72 dpi units, do not use this function. Instead, divide GetTopEVPUs by 4.

Lua-supported (also as a read-only property).

Returns
For Finale versions earlier than Finale 25, 0 is returned. Otherwise, the top side of the bounding box, in fractional Points measurements.

◆ LoadArticulation()

bool FCTextMetrics::LoadArticulation ( FCArticulationDef pArticDef,
bool  flipped,
float  percent 
)

Loads the metrics for a specific articulation glyph.

Please note that this method can only handle Unicode glyphs correctly within the 16-bit range.

Lua-supported.

Parameters
pArticDefThe pointer to the FCArticulationDef object that contains the symbol for which the metrics should be queried. NULL is not allowed.
flippedIf true, use the flipped glyph. If false, use the main glyph.
percentThe reduction value of the articulation, in fractional percent. Use 100 for no reduction. 0 is not allowed.
Returns
True on success. False if an unallowed parameter has been passed to the method or if the specified articulation is a shape. On Finale versions lower than Finale 25, false will always be returned.

◆ LoadString()

bool FCTextMetrics::LoadString ( const FCString pText,
const FCFontInfo pFont,
float  percent 
)

Loads the metrics for the string and font.

Warning
(for C/C++ programmers): Visual Studio (Windows) converts "LoadString" to "LoadStringA" or "LoadStringW", depending on your Character Set setting. (Or you can suppress this by undefining the LoadString macro.) However, as long as all callers compile with the same Character Set, you will likely not notice.

For Lua scripts it is always "LoadString".

Lua-supported.

Parameters
pTextThe pointer to the FCString object that contains the text for which the metrics should be queried. NULL is not allowed.
pFontThe pointer to the FCFontInfo object that contains the font information. NULL is not allowed.
percentThe reduction value of the text, in fractional percent. Use 100 for no reduction. 0 is not allowed.
Returns
True on success. False if an unallowed parameter has been passed to the method. On Finale versions lower than Finale 25, false will always be returned.

◆ LoadSymbol()

bool FCTextMetrics::LoadSymbol ( eUniChar16  symbolchar,
FCFontInfo pFont,
float  percent 
)

Loads the text metrics for a specific character in a font.

Lua-supported.

Parameters
symbolcharThe symbol number. Please note that it only support Unicode symbols within the 16-bit range.
pFontThe pointer to the FCFontInfo object that contains the font information. NULL is not allowed.
percentThe reduction value of the text, in fractional percent. Use 100 for no reduction. 0 is not allowed.
Returns
True on success. False if an unallowed parameter has been passed to the method. On Finale versions lower than Finale 25, false will always be returned.