 |
VTK
9.0.1
|
Go to the documentation of this file.
43 #ifndef vtkTextRenderer_h
44 #define vtkTextRenderer_h
47 #include "vtkRenderingCoreModule.h"
59 class RegularExpression;
160 vtkSetMacro(DefaultBackend,
int);
161 vtkGetMacro(DefaultBackend,
int);
189 return this->GetBoundingBoxInternal(tprop, str, bbox, dpi, backend);
192 int backend = Default)
194 return this->GetBoundingBoxInternal(tprop, str, bbox, dpi, backend);
205 int backend = Default)
207 return this->GetMetricsInternal(tprop, str, metrics, dpi, backend);
210 int backend = Default)
212 return this->GetMetricsInternal(tprop, str, metrics, dpi, backend);
232 int textDims[2],
int dpi,
int backend = Default)
234 return this->RenderStringInternal(tprop, str,
data, textDims, dpi, backend);
237 int textDims[2],
int dpi,
int backend = Default)
239 return this->RenderStringInternal(tprop, str,
data, textDims, dpi, backend);
251 int targetHeight,
int dpi,
int backend = Default)
253 return this->GetConstrainedFontSizeInternal(
254 str, tprop, targetWidth, targetHeight, dpi, backend);
257 int targetHeight,
int dpi,
int backend = Default)
259 return this->GetConstrainedFontSizeInternal(
260 str, tprop, targetWidth, targetHeight, dpi, backend);
275 return this->StringToPathInternal(tprop, str, path, dpi, backend);
278 int backend = Default)
280 return this->StringToPathInternal(tprop, str, path, dpi, backend);
309 Metrics& metrics,
int dpi,
int backend) = 0;
315 int targetWidth,
int targetHeight,
int dpi,
int backend) = 0;
317 int targetWidth,
int targetHeight,
int dpi,
int backend) = 0;
360 #endif // vtkTextRenderer_h
~vtkTextRenderer() override
Backend
Available backends.
void SetScaleToPowerOfTwo(bool scale)
Set to true if the graphics implementation requires texture image dimensions to be a power of two.
virtual int DetectBackend(const vtkStdString &str)
Determine the appropriate back end needed to render the given string.
virtual bool GetMetricsInternal(vtkTextProperty *tprop, const vtkUnicodeString &str, Metrics &metrics, int dpi, int backend)=0
Metrics()
Construct a Metrics object with all members initialized to 0.
int GetConstrainedFontSize(const vtkStdString &str, vtkTextProperty *tprop, int targetWidth, int targetHeight, int dpi, int backend=Default)
This function returns the font size (in points) and sets the size in tprop that is required to fit th...
virtual bool GetBoundingBoxInternal(vtkTextProperty *tprop, const vtkStdString &str, int bbox[4], int dpi, int backend)=0
Virtual methods for concrete implementations of the public methods.
virtual void CleanUpFreeTypeEscapes(vtkStdString &str)
Replace all instances of "\$" with "$".
virtual bool GetBoundingBoxInternal(vtkTextProperty *tprop, const vtkUnicodeString &str, int bbox[4], int dpi, int backend)=0
static vtkTextRendererCleanup Cleanup
virtual bool MathTextIsSupported()
concrete dataset representing a path defined by Bezier curves.
abstract base class for most VTK objects
static vtkTextRenderer * Instance
The singleton instance and the singleton cleanup instance.
virtual bool RenderStringInternal(vtkTextProperty *tprop, const vtkStdString &str, vtkImageData *data, int textDims[2], int dpi, int backend)=0
static void SetInstance(vtkTextRenderer *instance)
Set the singleton instance.
virtual int DetectBackend(const vtkUnicodeString &str)
virtual int GetConstrainedFontSizeInternal(const vtkUnicodeString &str, vtkTextProperty *tprop, int targetWidth, int targetHeight, int dpi, int backend)=0
vtkVector2i TopLeft
The corners of the rendered text (or background, if applicable), in pixels.
vtksys::RegularExpression * MathTextRegExp
bool GetBoundingBox(vtkTextProperty *tprop, const vtkStdString &str, int bbox[4], int dpi, int backend=Default)
Given a text property and a string, get the bounding box {xmin, xmax, ymin, ymax} of the rendered str...
bool GetMetrics(vtkTextProperty *tprop, const vtkUnicodeString &str, Metrics &metrics, int dpi, int backend=Default)
virtual void SetScaleToPowerOfTwoInternal(bool scale)=0
virtual bool FreeTypeIsSupported()
Test for availability of various backends.
bool StringToPath(vtkTextProperty *tprop, const vtkUnicodeString &str, vtkPath *path, int dpi, int backend=Default)
vtksys::RegularExpression * MathTextRegExp2
int DefaultBackend
The backend to use when none is specified.
vtkVector2i Ascent
Vectors representing the rotated ascent and descent of the text.
virtual bool RenderStringInternal(vtkTextProperty *tprop, const vtkUnicodeString &str, vtkImageData *data, int textDims[2], int dpi, int backend)=0
virtual bool StringToPathInternal(vtkTextProperty *tprop, const vtkStdString &str, vtkPath *path, int dpi, int backend)=0
bool GetBoundingBox(vtkTextProperty *tprop, const vtkUnicodeString &str, int bbox[4], int dpi, int backend=Default)
topologically and geometrically regular array of data
a simple class to control print indentation
String class that stores Unicode text.
vtkVector2i Descent
Vectors representing the rotated ascent and descent of the text.
bool RenderString(vtkTextProperty *tprop, const vtkUnicodeString &str, vtkImageData *data, int textDims[2], int dpi, int backend=Default)
vtkTuple< int, 4 > BoundingBox
The axis-aligned bounding box of the rendered text and background, in pixels.
bool GetMetrics(vtkTextProperty *tprop, const vtkStdString &str, Metrics &metrics, int dpi, int backend=Default)
Given a text property and a string, get some metrics for the rendered string.
bool StringToPath(vtkTextProperty *tprop, const vtkStdString &str, vtkPath *path, int dpi, int backend=Default)
Given a text property and a string, this function populates the vtkPath path with the outline of the ...
virtual bool GetMetricsInternal(vtkTextProperty *tprop, const vtkStdString &str, Metrics &metrics, int dpi, int backend)=0
virtual void CleanUpFreeTypeEscapes(vtkUnicodeString &str)
represent text properties.
Interface for generating images and path data from string data, using multiple backends.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual bool StringToPathInternal(vtkTextProperty *tprop, const vtkUnicodeString &str, vtkPath *path, int dpi, int backend)=0
~vtkTextRendererCleanup()
Some derived classes for the different vectors commonly used.
Wrapper around std::string to keep symbols short.
static vtkTextRenderer * New()
This is a singleton pattern New.
int GetConstrainedFontSize(const vtkUnicodeString &str, vtkTextProperty *tprop, int targetWidth, int targetHeight, int dpi, int backend=Default)
static vtkTextRenderer * GetInstance()
Return the singleton instance with no reference counting.
virtual int GetConstrainedFontSizeInternal(const vtkStdString &str, vtkTextProperty *tprop, int targetWidth, int targetHeight, int dpi, int backend)=0
bool RenderString(vtkTextProperty *tprop, const vtkStdString &str, vtkImageData *data, int textDims[2], int dpi, int backend=Default)
Given a text property and a string, this function initializes the vtkImageData *data and renders it i...