VTK
vtkStringToImage.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkStringToImage.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
15 
25 #ifndef vtkStringToImage_h
26 #define vtkStringToImage_h
27 
28 #include "vtkRenderingCoreModule.h" // For export macro
29 #include "vtkObject.h"
30 
31 class vtkStdString;
32 class vtkUnicodeString;
33 class vtkTextProperty;
34 class vtkImageData;
35 class vtkVector2i;
36 
37 class VTKRENDERINGCORE_EXPORT vtkStringToImage : public vtkObject
38 {
39 public:
40  vtkTypeMacro(vtkStringToImage, vtkObject);
41  void PrintSelf(ostream &os, vtkIndent indent) override;
42 
44 
57  virtual vtkVector2i GetBounds(vtkTextProperty *property,
58  const vtkUnicodeString& string, int dpi) = 0;
59  virtual vtkVector2i GetBounds(vtkTextProperty *property,
60  const vtkStdString& string, int dpi) = 0;
62 
64 
71  virtual int RenderString(vtkTextProperty *property,
72  const vtkUnicodeString& string, int dpi,
74  int textDims[2] = nullptr) = 0;
75  virtual int RenderString(vtkTextProperty *property,
76  const vtkStdString& string, int dpi,
78  int text_dims[2] = nullptr) = 0;
80 
85  virtual void SetScaleToPowerOfTwo(bool scale);
86  vtkGetMacro(ScaleToPowerOfTwo, bool)
87 
88 protected:
90  ~vtkStringToImage() override;
91 
92  bool Antialias;
93  bool ScaleToPowerOfTwo;
94 
95 private:
96  vtkStringToImage(const vtkStringToImage &) = delete;
97  void operator=(const vtkStringToImage &) = delete;
98 };
99 
100 #endif //vtkStringToImage_h
Wrapper around std::string to keep symbols short.
Definition: vtkStdString.h:40
abstract base class for most VTK objects
Definition: vtkObject.h:59
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
base class for classes that render supplied text to an image.
a simple class to control print indentation
Definition: vtkIndent.h:39
topologically and geometrically regular array of data
Definition: vtkImageData.h:45
Some derived classes for the different vectors commonly used.
Definition: vtkVector.h:408
represent text properties.
String class that stores Unicode text.