Magick++: TypeMetric.h Source File

Magick++ 7.0.10

TypeMetric.h
Go to the documentation of this file.
1 // This may look like C code, but it is really -*- C++ -*-
2 //
3 // Copyright Bob Friesenhahn, 2001, 2002
4 // Copyright Dirk Lemstra 2014-2018
5 //
6 // TypeMetric Definition
7 //
8 // Container for font type metrics
9 //
10
11 #if !defined (Magick_TypeMetric_header)
12 #define Magick_TypeMetric_header
13
14 #include "Magick++/Include.h"
15 #include "Magick++/Drawable.h"
16
17 namespace Magick
18 {
19 class MagickPPExport TypeMetric
20 {
21 friend class Image;
22
23 public:
24
25 // Default constructor
26 TypeMetric(void);
27
28 // Destructor
29 ~TypeMetric(void);
30
31 // The distance in pixels from the text baseline to the highest/upper
32 // grid coordinate used to place an outline point.
33 double ascent(void) const;
34
35 // The bounds of the type metric.
36 Geometry bounds(void) const;
37
38 // The distance in pixels from the baseline to the lowest grid coordinate
39 // used to place an outline point. Always a negative value.
40 double descent(void) const;
41
42 // Maximum horizontal advance in pixels.
43 double maxHorizontalAdvance(void) const;
44
45 // The origin.
46 Coordinate origin(void) const;
47
48 // The number of pixels per em.
49 Coordinate pixelsPerEm(void) const;
50
51 // Text height in pixels.
52 double textHeight(void) const;
53
54 // Text width in pixels.
55 double textWidth(void) const;
56
57 // Underline position.
58 double underlinePosition(void) const;
59
60 // Underline thickness.
61 double underlineThickness(void) const;
62
63 private:
64 MagickCore::TypeMetric _typeMetric;
65 };
66 } // namespace Magick
67
68 #endif // Magick_TypeMetric_header
Magick::Coordinate
Definition: Drawable.h:46
Drawable.h
MagickPPExport
#define MagickPPExport
Definition: Include.h:281
Magick::Geometry
Definition: Geometry.h:35
Include.h
Magick
Definition: Blob.h:15
Magick::Image
Definition: Image.h:53
Magick::TypeMetric
Definition: TypeMetric.h:19