|
| virtual int | IsA (const char *type) |
| |
| vtkFreeTypeTools * | NewInstance () const |
| |
| void | PrintSelf (ostream &os, vtkIndent indent) |
| |
| FT_Library * | GetLibrary () |
| |
|
| virtual void | SetMaximumNumberOfFaces (unsigned int) |
| |
| virtual unsigned int | GetMaximumNumberOfFaces () |
| |
| virtual void | SetMaximumNumberOfSizes (unsigned int) |
| |
| virtual unsigned int | GetMaximumNumberOfSizes () |
| |
| virtual void | SetMaximumNumberOfBytes (unsigned long) |
| |
| virtual unsigned long | GetMaximumNumberOfBytes () |
| |
|
| bool | GetBoundingBox (vtkTextProperty *tprop, const vtkStdString &str, int bbox[4]) |
| |
| bool | GetBoundingBox (vtkTextProperty *tprop, const vtkUnicodeString &str, int bbox[4]) |
| |
| bool | IsBoundingBoxValid (int bbox[4]) |
| |
|
| bool | RenderString (vtkTextProperty *tprop, const vtkStdString &str, vtkImageData *data, int textDims[2]=NULL) |
| |
| bool | RenderString (vtkTextProperty *tprop, const vtkUnicodeString &str, vtkImageData *data, int textDims[2]=NULL) |
| |
|
| bool | StringToPath (vtkTextProperty *tprop, const vtkStdString &str, vtkPath *path) |
| |
| bool | StringToPath (vtkTextProperty *tprop, const vtkUnicodeString &str, vtkPath *path) |
| |
|
| int | GetConstrainedFontSize (const vtkStdString &str, vtkTextProperty *tprop, int targetWidth, int targetHeight) |
| |
| int | GetConstrainedFontSize (const vtkUnicodeString &str, vtkTextProperty *tprop, int targetWidth, int targetHeight) |
| |
|
| void | MapTextPropertyToId (vtkTextProperty *tprop, unsigned long *tprop_cache_id) |
| |
| void | MapIdToTextProperty (unsigned long tprop_cache_id, vtkTextProperty *tprop) |
| |
|
| virtual void | SetScaleToPowerTwo (bool) |
| |
| virtual bool | GetScaleToPowerTwo () |
| |
| virtual void | ScaleToPowerTwoOn () |
| |
| virtual void | ScaleToPowerTwoOff () |
| |
|
| virtual void | SetForceCompiledFonts (bool) |
| |
| virtual bool | GetForceCompiledFonts () |
| |
| virtual void | ForceCompiledFontsOn () |
| |
| virtual void | ForceCompiledFontsOff () |
| |
|
| virtual vtkObjectBase * | NewInstanceInternal () const |
| |
| virtual FT_Error | CreateFTCManager () |
| |
| void | PrepareImageData (vtkImageData *data, int bbox[4]) |
| |
| void | JustifyPath (vtkPath *path, MetaData &metaData) |
| |
| bool | GetSize (vtkTextProperty *tprop, FT_Size *size) |
| |
| bool | GetFace (vtkTextProperty *tprop, FT_Face *face) |
| |
| bool | GetGlyphIndex (vtkTextProperty *tprop, FT_UInt32 c, FT_UInt *gindex) |
| |
| | vtkFreeTypeTools () |
| |
| virtual | ~vtkFreeTypeTools () |
| |
| void | InitializeCacheManager () |
| |
| void | ReleaseCacheManager () |
| |
|
| bool | PrepareMetaData (vtkTextProperty *tprop, MetaData &metaData) |
| |
| bool | PrepareImageMetaData (vtkTextProperty *tprop, vtkImageData *image, ImageMetaData &metaData) |
| |
|
| template<typename StringType > |
| bool | RenderStringInternal (vtkTextProperty *tprop, const StringType &str, vtkImageData *data, int textDims[2]) |
| |
|
| template<typename StringType > |
| bool | StringToPathInternal (vtkTextProperty *tprop, const StringType &str, vtkPath *path) |
| |
|
| template<typename T > |
| bool | CalculateBoundingBox (const T &str, MetaData &metaData) |
| |
|
| template<typename StringType , typename DataType > |
| bool | PopulateData (const StringType &str, DataType data, MetaData &metaData) |
| |
|
| template<typename IteratorType , typename DataType > |
| bool | RenderLine (IteratorType begin, IteratorType end, int lineIndex, DataType data, MetaData &metaData) |
| |
|
| template<typename CharType > |
| bool | RenderCharacter (CharType character, int &x, int &y, FT_UInt &previousGlyphIndex, vtkImageData *image, MetaData &metaData) |
| |
| template<typename CharType > |
| bool | RenderCharacter (CharType character, int &x, int &y, FT_UInt &previousGlyphIndex, vtkPath *path, MetaData &metaData) |
| |
|
| template<typename T > |
| int | FitStringToBBox (const T &str, MetaData &metaData, int targetWidth, int targetHeight) |
| |
|
| bool | GetFace (vtkTextProperty *prop, unsigned long &prop_cache_id, FT_Face &face, bool &face_has_kerning) |
| |
|
| FT_Bitmap * | GetBitmap (FT_UInt32 c, unsigned long prop_cache_id, int prop_font_size, FT_UInt &gindex, FT_BitmapGlyph &bitmap_glyph) |
| |
|
| FT_Outline * | GetOutline (FT_UInt32 c, unsigned long prop_cache_id, int prop_font_size, FT_UInt &gindex, FT_OutlineGlyph &outline_glyph) |
| |
|
| template<typename T > |
| void | GetLineMetrics (T begin, T end, MetaData &metaData, int &width, int bbox[4]) |
| |
|
| FTC_Manager * | GetCacheManager () |
| |
| FTC_ImageCache * | GetImageCache () |
| |
| FTC_CMapCache * | GetCMapCache () |
| |
|
|
| static vtkFreeTypeTools * | Instance |
| |
| static vtkFreeTypeToolsCleanup | Cleanup |
| |
| enum | { GLYPH_REQUEST_DEFAULT = 0,
GLYPH_REQUEST_BITMAP = 1,
GLYPH_REQUEST_OUTLINE = 2
} |
| |
| bool | GetGlyph (vtkTextProperty *tprop, FT_UInt32 c, FT_Glyph *glyph, int request=GLYPH_REQUEST_DEFAULT) |
| |
| bool | GetSize (unsigned long tprop_cache_id, int font_size, FT_Size *size) |
| |
| bool | GetFace (unsigned long tprop_cache_id, FT_Face *face) |
| |
| bool | GetGlyphIndex (unsigned long tprop_cache_id, FT_UInt32 c, FT_UInt *gindex) |
| |
| bool | GetGlyph (unsigned long tprop_cache_id, int font_size, FT_UInt gindex, FT_Glyph *glyph, int request=GLYPH_REQUEST_DEFAULT) |
| |
FreeType library support.
vtkFreeTypeTools provides a low-level interface to the FreeType2 library, including font-cache and rasterization.
- Warning
- Internal use only.
- Tests:
- vtkFreeTypeTools (Tests)
Definition at line 62 of file vtkFreeTypeTools.h.
Given a text property and a character, get the corresponding FreeType glyph. The 'request' parameter can be used to request the glyph to be in a specific format. If GLYPH_REQUEST_DEFAULT, the glyph might be either an outline (most of the time) or a bitmap if the face includes a set of pre-rendered glyphs (called "strikes") for a given size. If GLYPH_REQUEST_BITMAP, the glyph is rendered immediately and can be safely cast to a FT_BitmapGlyph. If GLYPH_REQUEST_OUTLINE, no pre-rendered "strike" is considered, the glyph is an outline and can be safely cast to a FT_OutlineGlyph. Return true on success, false otherwise
| Enumerator |
|---|
| GLYPH_REQUEST_DEFAULT |
|
| GLYPH_REQUEST_BITMAP |
|
| GLYPH_REQUEST_OUTLINE |
|
Definition at line 290 of file vtkFreeTypeTools.h.
| bool vtkFreeTypeTools::GetBoundingBox |
( |
vtkTextProperty * |
tprop, |
|
|
const vtkStdString & |
str, |
|
|
int |
bbox[4] |
|
) |
| |
Given a text property and a string, get the bounding box [xmin, xmax] x [ymin, ymax]. Note that this is the bounding box of the area where actual pixels will be written, given a text/pen/baseline location of (0,0). For example, if the string starts with a 'space', or depending on the orientation, you can end up with a [-20, -10] x [5, 10] bbox (the math to get the real bbox is straightforward). Return 1 on success, 0 otherwise. You can use IsBoundingBoxValid() to test if the computed bbox is valid (it may not if GetBoundingBox() failed or if the string was empty).
| bool vtkFreeTypeTools::GetBoundingBox |
( |
vtkTextProperty * |
tprop, |
|
|
const vtkUnicodeString & |
str, |
|
|
int |
bbox[4] |
|
) |
| |
Given a text property and a string, get the bounding box [xmin, xmax] x [ymin, ymax]. Note that this is the bounding box of the area where actual pixels will be written, given a text/pen/baseline location of (0,0). For example, if the string starts with a 'space', or depending on the orientation, you can end up with a [-20, -10] x [5, 10] bbox (the math to get the real bbox is straightforward). Return 1 on success, 0 otherwise. You can use IsBoundingBoxValid() to test if the computed bbox is valid (it may not if GetBoundingBox() failed or if the string was empty).
| bool vtkFreeTypeTools::IsBoundingBoxValid |
( |
int |
bbox[4] | ) |
|
Given a text property and a string, get the bounding box [xmin, xmax] x [ymin, ymax]. Note that this is the bounding box of the area where actual pixels will be written, given a text/pen/baseline location of (0,0). For example, if the string starts with a 'space', or depending on the orientation, you can end up with a [-20, -10] x [5, 10] bbox (the math to get the real bbox is straightforward). Return 1 on success, 0 otherwise. You can use IsBoundingBoxValid() to test if the computed bbox is valid (it may not if GetBoundingBox() failed or if the string was empty).
| void vtkFreeTypeTools::MapTextPropertyToId |
( |
vtkTextProperty * |
tprop, |
|
|
unsigned long * |
tprop_cache_id |
|
) |
| |
Given a text property 'tprop', get its unique ID in our cache framework. In the same way, given a unique ID in our cache, retrieve the corresponding text property and assign its parameters to 'tprop'. Warning: there is no one to one mapping between a single text property the corresponding ID, and vice-versa. The ID is just a fast hash, a binary mask concatenating the attributes of the text property that are relevant to our cache (Color, Opacity, Justification setting are not stored).
| void vtkFreeTypeTools::MapIdToTextProperty |
( |
unsigned long |
tprop_cache_id, |
|
|
vtkTextProperty * |
tprop |
|
) |
| |
Given a text property 'tprop', get its unique ID in our cache framework. In the same way, given a unique ID in our cache, retrieve the corresponding text property and assign its parameters to 'tprop'. Warning: there is no one to one mapping between a single text property the corresponding ID, and vice-versa. The ID is just a fast hash, a binary mask concatenating the attributes of the text property that are relevant to our cache (Color, Opacity, Justification setting are not stored).
| bool vtkFreeTypeTools::GetGlyph |
( |
vtkTextProperty * |
tprop, |
|
|
FT_UInt32 |
c, |
|
|
FT_Glyph * |
glyph, |
|
|
int |
request = GLYPH_REQUEST_DEFAULT |
|
) |
| |
|
protected |
Given a text property and a character, get the corresponding FreeType glyph. The 'request' parameter can be used to request the glyph to be in a specific format. If GLYPH_REQUEST_DEFAULT, the glyph might be either an outline (most of the time) or a bitmap if the face includes a set of pre-rendered glyphs (called "strikes") for a given size. If GLYPH_REQUEST_BITMAP, the glyph is rendered immediately and can be safely cast to a FT_BitmapGlyph. If GLYPH_REQUEST_OUTLINE, no pre-rendered "strike" is considered, the glyph is an outline and can be safely cast to a FT_OutlineGlyph. Return true on success, false otherwise
| bool vtkFreeTypeTools::GetSize |
( |
unsigned long |
tprop_cache_id, |
|
|
int |
font_size, |
|
|
FT_Size * |
size |
|
) |
| |
|
protected |
Given a text property and a character, get the corresponding FreeType glyph. The 'request' parameter can be used to request the glyph to be in a specific format. If GLYPH_REQUEST_DEFAULT, the glyph might be either an outline (most of the time) or a bitmap if the face includes a set of pre-rendered glyphs (called "strikes") for a given size. If GLYPH_REQUEST_BITMAP, the glyph is rendered immediately and can be safely cast to a FT_BitmapGlyph. If GLYPH_REQUEST_OUTLINE, no pre-rendered "strike" is considered, the glyph is an outline and can be safely cast to a FT_OutlineGlyph. Return true on success, false otherwise
| bool vtkFreeTypeTools::GetFace |
( |
unsigned long |
tprop_cache_id, |
|
|
FT_Face * |
face |
|
) |
| |
|
protected |
Given a text property and a character, get the corresponding FreeType glyph. The 'request' parameter can be used to request the glyph to be in a specific format. If GLYPH_REQUEST_DEFAULT, the glyph might be either an outline (most of the time) or a bitmap if the face includes a set of pre-rendered glyphs (called "strikes") for a given size. If GLYPH_REQUEST_BITMAP, the glyph is rendered immediately and can be safely cast to a FT_BitmapGlyph. If GLYPH_REQUEST_OUTLINE, no pre-rendered "strike" is considered, the glyph is an outline and can be safely cast to a FT_OutlineGlyph. Return true on success, false otherwise
| bool vtkFreeTypeTools::GetGlyphIndex |
( |
unsigned long |
tprop_cache_id, |
|
|
FT_UInt32 |
c, |
|
|
FT_UInt * |
gindex |
|
) |
| |
|
protected |
Given a text property and a character, get the corresponding FreeType glyph. The 'request' parameter can be used to request the glyph to be in a specific format. If GLYPH_REQUEST_DEFAULT, the glyph might be either an outline (most of the time) or a bitmap if the face includes a set of pre-rendered glyphs (called "strikes") for a given size. If GLYPH_REQUEST_BITMAP, the glyph is rendered immediately and can be safely cast to a FT_BitmapGlyph. If GLYPH_REQUEST_OUTLINE, no pre-rendered "strike" is considered, the glyph is an outline and can be safely cast to a FT_OutlineGlyph. Return true on success, false otherwise
| bool vtkFreeTypeTools::GetGlyph |
( |
unsigned long |
tprop_cache_id, |
|
|
int |
font_size, |
|
|
FT_UInt |
gindex, |
|
|
FT_Glyph * |
glyph, |
|
|
int |
request = GLYPH_REQUEST_DEFAULT |
|
) |
| |
|
protected |
Given a text property and a character, get the corresponding FreeType glyph. The 'request' parameter can be used to request the glyph to be in a specific format. If GLYPH_REQUEST_DEFAULT, the glyph might be either an outline (most of the time) or a bitmap if the face includes a set of pre-rendered glyphs (called "strikes") for a given size. If GLYPH_REQUEST_BITMAP, the glyph is rendered immediately and can be safely cast to a FT_BitmapGlyph. If GLYPH_REQUEST_OUTLINE, no pre-rendered "strike" is considered, the glyph is an outline and can be safely cast to a FT_OutlineGlyph. Return true on success, false otherwise