Layout provides PropertyProvider objects. More...
#include <gfxFont.h>
Public Types | |
| typedef gfxFont::Spacing | Spacing |
Public Member Functions | |
| virtual void | GetHyphenationBreaks (PRUint32 aStart, PRUint32 aLength, PRPackedBool *aBreakBefore)=0 |
| virtual gfxFloat | GetHyphenWidth ()=0 |
| virtual void | GetSpacing (PRUint32 aStart, PRUint32 aLength, Spacing *aSpacing)=0 |
| Get the spacing around the indicated characters. | |
Layout provides PropertyProvider objects.
These allow detection of potential line break points and computation of spacing. We pass the data this way to allow lazy data acquisition; for example BreakAndMeasureText will want to only ask for properties of text it's actually looking at.
NOTE that requested spacing may not actually be applied, if the textrun is unable to apply it in some context. Exception: spacing around a whitespace character MUST always be applied.
| virtual void gfxTextRun::PropertyProvider::GetHyphenationBreaks | ( | PRUint32 | aStart, | |
| PRUint32 | aLength, | |||
| PRPackedBool * | aBreakBefore | |||
| ) | [pure virtual] |
| virtual gfxFloat gfxTextRun::PropertyProvider::GetHyphenWidth | ( | ) | [pure virtual] |
| virtual void gfxTextRun::PropertyProvider::GetSpacing | ( | PRUint32 | aStart, | |
| PRUint32 | aLength, | |||
| Spacing * | aSpacing | |||
| ) | [pure virtual] |
Get the spacing around the indicated characters.
Spacing must be zero inside clusters. In other words, if character i is not CLUSTER_START, then character i-1 must have zero after-spacing and character i must have zero before-spacing.
1.7.1