FLImaging 7.9.24.1
GUIViewImageLayerObjectText.h
1#pragma once
2
3#include "GUIViewImageLayerObjectBase.h"
4
5namespace FLImaging
6{
7 namespace GUI
8 {
9 class CD2DObject;
10 class CGUILayerTextLayout;
11 class CGUILayerTextManager;
12
13 class FL_EXPORT CGUIViewImageLayerObjectText : public CGUIViewImageLayerObjectBase
14 {
15 public:
16 CGUIViewImageLayerObjectText();
17 CGUIViewImageLayerObjectText(const CGUIViewImageLayerObjectText* pRhs);
18 CGUIViewImageLayerObjectText(const CGUIViewImageLayerObjectText& rhs);
19 virtual ~CGUIViewImageLayerObjectText();
20
21 virtual const CResult Assign(const CGUIViewImageLayerObjectText* pRhs);
22 virtual const CResult Assign(const CGUIViewImageLayerObjectText& rhs);
23
24 virtual CGUIViewImageLayerObjectText* DuplicateObject() const;
25 virtual CGUIViewImageLayerObjectText* CreateObject() const;
26
27 virtual void Clear() override;
28 virtual void ClearText();
29 virtual void ClearFontName();
30 virtual void ClearFont();
31
32 virtual void SetText(const Base::CFLString<wchar_t>& strText);
33 virtual Base::CFLString<wchar_t>* GetText() const;
34
35 virtual void SetFontSize(float f32FontSize);
36 virtual float GetFontSize() const;
37
38 virtual void SetFontWeight(EGUIViewImageFontWeight eWeight);
39 virtual EGUIViewImageFontWeight GetFontWeight() const;
40
41 virtual void SetItalic(BOOL bItalic);
42 virtual BOOL IsItalic() const;
43
44 virtual void SetFontName(const Base::CFLString<wchar_t>& strFontName);
45 virtual const wchar_t* GetFontName() const;
46
47 virtual bool CreateFont(Base::CFLBase* pView, CD2DObject* pD2DObject);
48 virtual void SetFont(CFont* pFont);
49 virtual CFont* GetFont() const;
50
51 virtual bool ModifyFont(Base::CFLBase* pView, CD2DObject* pD2DObject);
52
53 virtual IDWriteTextFormat* GetDWriteTextFormat() const;
54 virtual IDWriteTextLayout* GetDWriteTextLayout() const;
55
56 virtual Base::TPoint<float> GetTextExtent();
57 virtual Base::TPoint<float> GetTextExtentOrg(CD2DObject* pD2DObjects);
58
59 virtual bool GetTextRect(double f64Scale, Foundation::CFLRect<float>& flrTextExtent, Foundation::CFLPoint<float>& flpAlign);
60
61 virtual void InitializeDefaultFont();
62 virtual bool NeedToCreateFont();
63
64 virtual void SetRealSizeFont(bool bSet);
65 virtual bool IsRealSizeFont() const;
66
67 virtual void SetFontAngle(double f64Angle);
68 virtual double GetFontAngle() const;
69
70 virtual void SetTextAlign(EGUIViewImageTextAlignment eAlign);
71 virtual EGUIViewImageTextAlignment GetTextAlign() const;
72
73 virtual const CResult Set(const Foundation::CFLFigureTextAttribute* pAttr);
74
75 virtual double GetViewScale(const Base::CFLBase* pView) const;
76
77 public:
78 Base::CFLString<wchar_t>* m_pStrText;
79
80 Base::CFLString<wchar_t> m_strFontName;
81 float m_f32FontSize;
82 EGUIViewImageFontWeight m_eFontWeight;
83 bool m_bRealSizeFont;
84 BOOL m_bItalic;
85 double m_f64FontAngle;
86 EGUIViewImageTextAlignment m_eTextAlign;
87
88 CFont* m_pFont;
89 bool m_bCalcTextExtentDone;
90 bool m_bCalcTextExtentOrg;
91 Base::TPoint<float> m_textExtent;
92 Base::TPoint<float> m_textExtentOrg;
93 bool m_bNeedToCreateFont;
94 bool m_bSetFont;
95
96 IDWriteTextFormat* m_pDWriteTextFormat;
97 IDWriteTextLayout* m_pDWriteTextLayout;
98
99 double m_f64PrevScale;
100 Foundation::CFLRect<double> m_rectOrigFigureOfImage; // this 가 이미지에 저장된 Figure 의 Label 일 경우, 해당 Figure 의 boundary rect
101
102 CGUILayerTextManager* m_pTextManager;
103 CGUILayerTextLayout* m_pTextLayout;
104
105 friend class CGUIViewImageLayer;
106 friend class CGUIViewGraphLayer;
107 };
108 }
109}
110
Definition D2DObject.h:12
EGUIViewImageTextAlignment
Alignment text in an image view.
Definition FLImagingGUI/DefinitionsGUI.h:9387
EGUIViewImageFontWeight
Font thickness of image view.
Definition FLImagingGUI/DefinitionsGUI.h:9207
@ Assign
Set the value of CGUIPropertyItemView3DFigure to the specified figure.
Definition FLImagingGUICLR/DefinitionsGUIView3D.h:3531
@ Clear
Clear all the figure objects.
Definition FLImagingGUICLR/DefinitionsGUI.h:5069