Index: core/src/fpdftext/text_int.h |
diff --git a/core/src/fpdftext/text_int.h b/core/src/fpdftext/text_int.h |
index ec25c2b78a911dfffcb946780eb23482fc0b1314..701ee8af980158679dc25b9c0b862161be5e4fe2 100644 |
--- a/core/src/fpdftext/text_int.h |
+++ b/core/src/fpdftext/text_int.h |
@@ -7,7 +7,6 @@ |
#ifndef CORE_SRC_FPDFTEXT_TEXT_INT_H_ |
#define CORE_SRC_FPDFTEXT_TEXT_INT_H_ |
-class CPDF_TextPage; |
class CPDF_LinkExtract; |
class CPDF_TextPageFind; |
class CPDF_DocProgressiveSearch; |
@@ -42,53 +41,52 @@ typedef struct { |
CFX_AffineMatrix m_formMatrix; |
} PDFTEXT_Obj; |
typedef CFX_ArrayTemplate<PDFTEXT_Obj> LINEOBJ; |
+ |
class CPDF_TextPage : public IPDF_TextPage { |
public: |
CPDF_TextPage(const CPDF_Page* pPage, int flags = 0); |
CPDF_TextPage(const CPDF_PageObjects* pPage, int flags = 0); |
CPDF_TextPage(const CPDF_Page* pPage, CPDFText_ParseOptions ParserOptions); |
- virtual FX_BOOL ParseTextPage(); |
- virtual void NormalizeObjects(FX_BOOL bNormalize); |
- virtual FX_BOOL IsParsered() const { return m_IsParsered; } |
- virtual ~CPDF_TextPage(){}; |
- |
- public: |
- virtual int CharIndexFromTextIndex(int TextIndex) const; |
- virtual int TextIndexFromCharIndex(int CharIndex) const; |
- virtual int CountChars() const; |
- virtual void GetCharInfo(int index, FPDF_CHAR_INFO& info) const; |
- virtual void GetRectArray(int start, |
- int nCount, |
- CFX_RectArray& rectArray) const; |
- virtual int GetIndexAtPos(CPDF_Point point, |
- FX_FLOAT xTolerance, |
- FX_FLOAT yTolerance) const; |
- virtual int GetIndexAtPos(FX_FLOAT x, |
- FX_FLOAT y, |
- FX_FLOAT xTolerance, |
- FX_FLOAT yTolerance) const; |
- virtual CFX_WideString GetTextByRect(const CFX_FloatRect& rect) const; |
- virtual void GetRectsArrayByRect(const CFX_FloatRect& rect, |
- CFX_RectArray& resRectArray) const; |
- virtual CFX_WideString GetPageText(int start = 0, int nCount = -1) const; |
- |
- virtual int CountRects(int start, int nCount); |
- virtual void GetRect(int rectIndex, |
- FX_FLOAT& left, |
- FX_FLOAT& top, |
- FX_FLOAT& right, |
- FX_FLOAT& bottom) const; |
- virtual FX_BOOL GetBaselineRotate(int rectIndex, int& Rotate); |
- virtual FX_BOOL GetBaselineRotate(const CFX_FloatRect& rect, int& Rotate); |
- virtual int CountBoundedSegments(FX_FLOAT left, |
- FX_FLOAT top, |
- FX_FLOAT right, |
- FX_FLOAT bottom, |
- FX_BOOL bContains = FALSE); |
- virtual void GetBoundedSegment(int index, int& start, int& count) const; |
- virtual int GetWordBreak(int index, int direction) const; |
+ ~CPDF_TextPage() override{}; |
+ |
+ // IPDF_TextPage |
+ FX_BOOL ParseTextPage() override; |
+ void NormalizeObjects(FX_BOOL bNormalize) override; |
+ FX_BOOL IsParsered() const override { return m_IsParsered; } |
+ int CharIndexFromTextIndex(int TextIndex) const override; |
+ int TextIndexFromCharIndex(int CharIndex) const override; |
+ int CountChars() const override; |
+ void GetCharInfo(int index, FPDF_CHAR_INFO& info) const override; |
+ void GetRectArray(int start, |
+ int nCount, |
+ CFX_RectArray& rectArray) const override; |
+ int GetIndexAtPos(CPDF_Point point, |
+ FX_FLOAT xTolerance, |
+ FX_FLOAT yTolerance) const override; |
+ int GetIndexAtPos(FX_FLOAT x, |
+ FX_FLOAT y, |
+ FX_FLOAT xTolerance, |
+ FX_FLOAT yTolerance) const override; |
+ CFX_WideString GetTextByRect(const CFX_FloatRect& rect) const override; |
+ void GetRectsArrayByRect(const CFX_FloatRect& rect, |
+ CFX_RectArray& resRectArray) const override; |
+ CFX_WideString GetPageText(int start = 0, int nCount = -1) const override; |
+ int CountRects(int start, int nCount) override; |
+ void GetRect(int rectIndex, |
+ FX_FLOAT& left, |
+ FX_FLOAT& top, |
+ FX_FLOAT& right, |
+ FX_FLOAT& bottom) const override; |
+ FX_BOOL GetBaselineRotate(int rectIndex, int& Rotate) override; |
+ FX_BOOL GetBaselineRotate(const CFX_FloatRect& rect, int& Rotate) override; |
+ int CountBoundedSegments(FX_FLOAT left, |
+ FX_FLOAT top, |
+ FX_FLOAT right, |
+ FX_FLOAT bottom, |
+ FX_BOOL bContains = FALSE) override; |
+ void GetBoundedSegment(int index, int& start, int& count) const override; |
+ int GetWordBreak(int index, int direction) const override; |
- public: |
const PAGECHAR_InfoArray* GetCharList() const { return &m_charList; } |
static FX_BOOL IsRectIntersect(const CFX_FloatRect& rect1, |
const CFX_FloatRect& rect2); |
@@ -143,21 +141,21 @@ class CPDF_TextPage : public IPDF_TextPage { |
int32_t m_TextlineDir; |
CFX_FloatRect m_CurlineRect; |
}; |
+ |
class CPDF_TextPageFind : public IPDF_TextPageFind { |
public: |
CPDF_TextPageFind(const IPDF_TextPage* pTextPage); |
- virtual ~CPDF_TextPageFind(){}; |
- |
- public: |
- virtual FX_BOOL FindFirst(const CFX_WideString& findwhat, |
- int flags, |
- int startPos = 0); |
- virtual FX_BOOL FindNext(); |
- virtual FX_BOOL FindPrev(); |
- |
- virtual void GetRectArray(CFX_RectArray& rects) const; |
- virtual int GetCurOrder() const; |
- virtual int GetMatchedCount() const; |
+ ~CPDF_TextPageFind() override{}; |
+ |
+ // IPDF_TextPageFind |
+ FX_BOOL FindFirst(const CFX_WideString& findwhat, |
+ int flags, |
+ int startPos = 0) override; |
+ FX_BOOL FindNext() override; |
+ FX_BOOL FindPrev() override; |
+ void GetRectArray(CFX_RectArray& rects) const override; |
+ int GetCurOrder() const override; |
+ int GetMatchedCount() const override; |
protected: |
void ExtractFindWhat(const CFX_WideString& findwhat); |
@@ -199,19 +197,22 @@ class CPDF_LinkExt { |
CFX_WideString m_strUrl; |
virtual ~CPDF_LinkExt(){}; |
}; |
+ |
typedef CFX_ArrayTemplate<CPDF_LinkExt*> LINK_InfoArray; |
+ |
class CPDF_LinkExtract : public IPDF_LinkExtract { |
public: |
CPDF_LinkExtract(); |
- virtual ~CPDF_LinkExtract(); |
- virtual FX_BOOL ExtractLinks(const IPDF_TextPage* pTextPage); |
- virtual FX_BOOL IsExtract() const { return m_IsParserd; } |
+ ~CPDF_LinkExtract() override; |
- public: |
- virtual int CountLinks() const; |
- virtual CFX_WideString GetURL(int index) const; |
- virtual void GetBoundedSegment(int index, int& start, int& count) const; |
- virtual void GetRects(int index, CFX_RectArray& rects) const; |
+ // IPDF_LinkExtract |
+ FX_BOOL ExtractLinks(const IPDF_TextPage* pTextPage) override; |
+ int CountLinks() const override; |
+ CFX_WideString GetURL(int index) const override; |
+ void GetBoundedSegment(int index, int& start, int& count) const override; |
+ void GetRects(int index, CFX_RectArray& rects) const override; |
+ |
+ FX_BOOL IsExtract() const { return m_IsParserd; } |
protected: |
void parserLink(); |
@@ -226,6 +227,7 @@ class CPDF_LinkExtract : public IPDF_LinkExtract { |
CFX_WideString m_strPageText; |
FX_BOOL m_IsParserd; |
}; |
+ |
FX_STRSIZE FX_Unicode_GetNormalization(FX_WCHAR wch, FX_WCHAR* pDst); |
void NormalizeString(CFX_WideString& str); |
void NormalizeCompositeChar(FX_WCHAR wChar, CFX_WideString& sDest); |