From 985e86f297e8319dbf3fd37247613f66e9f11216 Mon Sep 17 00:00:00 2001 From: Dan Sinclair Date: Wed, 4 Oct 2017 15:10:04 -0400 Subject: Remove friends from CPDF_TextObject This CL removes the friends from CPDF_TextObject and adds accessor methods as needed. Change-Id: I68d18297640b46113df79f58bea50b77dac89d39 Reviewed-on: https://pdfium-review.googlesource.com/15455 Reviewed-by: Henrique Nakashima Commit-Queue: dsinclair --- core/fpdfapi/page/cpdf_streamcontentparser.cpp | 9 +++++---- core/fpdfapi/page/cpdf_textobject.h | 10 ++++------ 2 files changed, 9 insertions(+), 10 deletions(-) (limited to 'core/fpdfapi/page') diff --git a/core/fpdfapi/page/cpdf_streamcontentparser.cpp b/core/fpdfapi/page/cpdf_streamcontentparser.cpp index 47aa20938a..4ba1d2a44e 100644 --- a/core/fpdfapi/page/cpdf_streamcontentparser.cpp +++ b/core/fpdfapi/page/cpdf_streamcontentparser.cpp @@ -1262,10 +1262,11 @@ void CPDF_StreamContentParser::AddTextObject(ByteString* pStrs, pCTM[3] = m_pCurStates->m_CTM.d; } pText->SetSegments(pStrs, pKerning, nsegs); - pText->m_Pos = m_mtContentToUser.Transform( - m_pCurStates->m_CTM.Transform(m_pCurStates->m_TextMatrix.Transform( - CFX_PointF(m_pCurStates->m_TextPos.x, - m_pCurStates->m_TextPos.y + m_pCurStates->m_TextRise)))); + pText->SetPosition( + m_mtContentToUser.Transform(m_pCurStates->m_CTM.Transform( + m_pCurStates->m_TextMatrix.Transform(CFX_PointF( + m_pCurStates->m_TextPos.x, + m_pCurStates->m_TextPos.y + m_pCurStates->m_TextRise))))); m_pCurStates->m_TextPos += pText->CalcPositionData(m_pCurStates->m_TextHorzScale); diff --git a/core/fpdfapi/page/cpdf_textobject.h b/core/fpdfapi/page/cpdf_textobject.h index 5cffbd1434..02653dc2aa 100644 --- a/core/fpdfapi/page/cpdf_textobject.h +++ b/core/fpdfapi/page/cpdf_textobject.h @@ -48,20 +48,18 @@ class CPDF_TextObject : public CPDF_PageObject { float GetFontSize() const; void SetText(const ByteString& text); + void SetPosition(CFX_PointF pos) { m_Pos = pos; } void SetPosition(float x, float y); void RecalcPositionData(); - private: - friend class CPDF_RenderStatus; - friend class CPDF_StreamContentParser; - friend class CPDF_TextRenderer; - friend class CPDF_PageContentGenerator; + const std::vector& GetCharCodes() const { return m_CharCodes; } + const std::vector& GetCharPositions() const { return m_CharPos; } void SetSegments(const ByteString* pStrs, const float* pKerning, int nSegs); - CFX_PointF CalcPositionData(float horz_scale); + private: CFX_PointF m_Pos; std::vector m_CharCodes; std::vector m_CharPos; -- cgit v1.2.3