LASi
Public Member Functions | Private Attributes | List of all members
StringDimensions Class Reference

Class StringDimensions maintains the relevant dimensions of a text string realized (i.e., drawn) in a given font face and font size. More...

#include <stringDimensions.h>

Public Member Functions

 StringDimensions (double xAdv=0.0, double yMin=0.0, double yMax=0.0, double spacingFactor=1.2)
void accrueXAdvance (const double xAdv)
 Sum up the individual x advances of each glyph:
void setYMin (const double yMin)
 Keep a running tab on the minimum y value (descent) from all glyphs:
void setYMax (const double yMax)
 Keep a running tab on the maximum y value (ascent) from all glyphs:
const double getXAdvance ()
const double getYMin ()
const double getYMax ()
const double getLineSpacing ()
 Line spacing is just the maximum ascent minus the maximum descent multiplied by the line spacing factor:

Private Attributes

double xadv
double ymin
double ymax
double lineSpacingFactor

Detailed Description

Class StringDimensions maintains the relevant dimensions of a text string realized (i.e., drawn) in a given font face and font size.

Used internally by LASi.

Constructor & Destructor Documentation

StringDimensions::StringDimensions ( double  xAdv = 0.0,
double  yMin = 0.0,
double  yMax = 0.0,
double  spacingFactor = 1.2 
)
inline

References lineSpacingFactor, xadv, ymax, and ymin.

Member Function Documentation

void StringDimensions::accrueXAdvance ( const double  xAdv)
inline

Sum up the individual x advances of each glyph:

References xadv.

Referenced by LASi::PostscriptDocument::accrue_dimensions().

const double StringDimensions::getLineSpacing ( )
inline

Line spacing is just the maximum ascent minus the maximum descent multiplied by the line spacing factor:

References lineSpacingFactor, ymax, and ymin.

Referenced by LASi::PostscriptDocument::get_dimensions().

const double StringDimensions::getXAdvance ( )
inline
const double StringDimensions::getYMax ( )
inline
const double StringDimensions::getYMin ( )
inline
void StringDimensions::setYMax ( const double  yMax)
inline

Keep a running tab on the maximum y value (ascent) from all glyphs:

References ymax.

Referenced by LASi::PostscriptDocument::accrue_dimensions().

void StringDimensions::setYMin ( const double  yMin)
inline

Keep a running tab on the minimum y value (descent) from all glyphs:

References ymin.

Referenced by LASi::PostscriptDocument::accrue_dimensions().

Member Data Documentation

double StringDimensions::lineSpacingFactor
private

Referenced by getLineSpacing(), and StringDimensions().

double StringDimensions::xadv
private
double StringDimensions::ymax
private
double StringDimensions::ymin
private

The documentation for this class was generated from the following file: