Go to the documentation of this file.
46 #ifndef vtkTextRenderer_h
47 #define vtkTextRenderer_h
49 #include "vtkRenderingCoreModule.h"
61 class RegularExpression;
85 TopLeft(0), TopRight(0), BottomLeft(0), BottomRight(0),
158 vtkSetMacro(DefaultBackend,
int)
159 vtkGetMacro(DefaultBackend,
int)
185 int bbox[4],
int dpi,
int backend = Default)
187 return this->GetBoundingBoxInternal(tprop, str, bbox, dpi, backend);
190 int bbox[4],
int dpi,
int backend = Default)
192 return this->GetBoundingBoxInternal(tprop, str, bbox, dpi, backend);
204 Metrics &metrics,
int dpi,
int backend = Default)
206 return this->GetMetricsInternal(tprop, str, metrics, dpi, backend);
209 Metrics &metrics,
int dpi,
int backend = Default)
211 return this->GetMetricsInternal(tprop, str, metrics, dpi, backend);
232 int backend = Default)
234 return this->RenderStringInternal(tprop, str,
data, textDims, dpi, backend);
238 int backend = Default)
240 return this->RenderStringInternal(tprop, str,
data, textDims, dpi, backend);
252 int targetWidth,
int targetHeight,
int dpi,
253 int backend = Default)
255 return this->GetConstrainedFontSizeInternal(str, tprop, targetWidth,
256 targetHeight, dpi, backend);
259 int targetWidth,
int targetHeight,
int dpi,
260 int backend = Default)
262 return this->GetConstrainedFontSizeInternal(str, tprop, targetWidth,
263 targetHeight, dpi, backend);
276 vtkPath *path,
int dpi,
int backend = Default)
278 return this->StringToPathInternal(tprop, str, path, dpi, backend);
281 vtkPath *path,
int dpi,
int backend = Default)
283 return this->StringToPathInternal(tprop, str, path, dpi, backend);
295 this->SetScaleToPowerOfTwoInternal(
scale);
310 int bbox[4],
int dpi,
int backend) = 0;
313 int bbox[4],
int dpi,
int backend) = 0;
316 Metrics &metrics,
int dpi,
int backend) = 0;
319 Metrics &metrics,
int dpi,
int backend) = 0;
323 int dpi,
int backend) = 0;
327 int dpi,
int backend) = 0;
328 virtual int GetConstrainedFontSizeInternal(
const vtkStdString &str,
330 int targetWidth,
int targetHeight,
331 int dpi,
int backend) = 0;
334 int targetWidth,
int targetHeight,
335 int dpi,
int backend) = 0;
338 int dpi,
int backend) = 0;
341 int dpi,
int backend) = 0;
342 virtual void SetScaleToPowerOfTwoInternal(
bool scale) = 0;
380 #endif //vtkTextRenderer_h
Backend
Available backends.
void SetScaleToPowerOfTwo(bool scale)
Set to true if the graphics implementation requires texture image dimensions to be a power of two.
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...
static vtkTextRendererCleanup Cleanup
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
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.
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 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.
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)
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
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 ...
represent text properties.
Interface for generating images and path data from string data, using multiple backends.
Some derived classes for the different vectors commonly used.
Wrapper around std::string to keep symbols short.
int GetConstrainedFontSize(const vtkUnicodeString &str, vtkTextProperty *tprop, int targetWidth, int targetHeight, int dpi, int backend=Default)
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...