diff options
Diffstat (limited to 'core/fpdfapi/fpdf_page/cpdf_textstate.h')
-rw-r--r-- | core/fpdfapi/fpdf_page/cpdf_textstate.h | 33 |
1 files changed, 28 insertions, 5 deletions
diff --git a/core/fpdfapi/fpdf_page/cpdf_textstate.h b/core/fpdfapi/fpdf_page/cpdf_textstate.h index 235bdf1aa1..87f0b5cef4 100644 --- a/core/fpdfapi/fpdf_page/cpdf_textstate.h +++ b/core/fpdfapi/fpdf_page/cpdf_textstate.h @@ -8,23 +8,46 @@ #define CORE_FPDFAPI_FPDF_PAGE_CPDF_TEXTSTATE_H_ #include "core/fpdfapi/fpdf_page/include/cpdf_textstatedata.h" +#include "core/fxcrt/include/cfx_count_ref.h" #include "core/fxcrt/include/fx_basic.h" class CPDF_Font; -class CPDF_TextState : public CFX_CountRef<CPDF_TextStateData> { +class CPDF_TextState { public: - CPDF_Font* GetFont() const { return GetObject()->m_pFont; } + CPDF_TextState(); + ~CPDF_TextState(); + + void Emplace(); + + CPDF_Font* GetFont() const; void SetFont(CPDF_Font* pFont); - FX_FLOAT GetFontSize() const { return GetObject()->m_FontSize; } - const FX_FLOAT* GetMatrix() const { return GetObject()->m_Matrix; } - FX_FLOAT* GetMutableMatrix() { return GetPrivateCopy()->m_Matrix; } + FX_FLOAT GetFontSize() const; + void SetFontSize(FX_FLOAT size); + + const FX_FLOAT* GetMatrix() const; + FX_FLOAT* GetMutableMatrix(); + + FX_FLOAT GetCharSpace() const; + void SetCharSpace(FX_FLOAT sp); + + FX_FLOAT GetWordSpace() const; + void SetWordSpace(FX_FLOAT sp); FX_FLOAT GetFontSizeV() const; FX_FLOAT GetFontSizeH() const; FX_FLOAT GetBaselineAngle() const; FX_FLOAT GetShearAngle() const; + + TextRenderingMode GetTextMode() const; + void SetTextMode(TextRenderingMode mode); + + const FX_FLOAT* GetCTM() const; + FX_FLOAT* GetMutableCTM(); + + private: + CFX_CountRef<CPDF_TextStateData> m_Ref; }; #endif // CORE_FPDFAPI_FPDF_PAGE_CPDF_TEXTSTATE_H_ |