| OLD | NEW |
| 1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
| 6 | 6 |
| 7 #ifndef CORE_INCLUDE_FPDFTEXT_FPDF_TEXT_H_ | 7 #ifndef CORE_INCLUDE_FPDFTEXT_FPDF_TEXT_H_ |
| 8 #define CORE_INCLUDE_FPDFTEXT_FPDF_TEXT_H_ | 8 #define CORE_INCLUDE_FPDFTEXT_FPDF_TEXT_H_ |
| 9 | 9 |
| 10 #include "../fpdfapi/fpdf_parser.h" | 10 #include "../fpdfapi/fpdf_parser.h" |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 65 #define FPDFTEXT_WRITINGMODE_LRTB 1 | 65 #define FPDFTEXT_WRITINGMODE_LRTB 1 |
| 66 #define FPDFTEXT_WRITINGMODE_RLTB 2 | 66 #define FPDFTEXT_WRITINGMODE_RLTB 2 |
| 67 #define FPDFTEXT_WRITINGMODE_TBRL 3 | 67 #define FPDFTEXT_WRITINGMODE_TBRL 3 |
| 68 class CPDFText_ParseOptions { | 68 class CPDFText_ParseOptions { |
| 69 public: | 69 public: |
| 70 CPDFText_ParseOptions(); | 70 CPDFText_ParseOptions(); |
| 71 FX_BOOL m_bGetCharCodeOnly; | 71 FX_BOOL m_bGetCharCodeOnly; |
| 72 FX_BOOL m_bNormalizeObjs; | 72 FX_BOOL m_bNormalizeObjs; |
| 73 FX_BOOL m_bOutputHyphen; | 73 FX_BOOL m_bOutputHyphen; |
| 74 }; | 74 }; |
| 75 |
| 75 class IPDF_TextPage { | 76 class IPDF_TextPage { |
| 76 public: | 77 public: |
| 77 virtual ~IPDF_TextPage() {} | 78 static IPDF_TextPage* CreateTextPage(const CPDF_Page* pPage, int flags = 0); |
| 78 static IPDF_TextPage* CreateTextPage(const CPDF_Page* pPage, | 79 static IPDF_TextPage* CreateTextPage(const CPDF_Page* pPage, |
| 79 CPDFText_ParseOptions ParserOptions); | 80 CPDFText_ParseOptions ParserOptions); |
| 80 static IPDF_TextPage* CreateTextPage(const CPDF_Page* pPage, int flags = 0); | |
| 81 static IPDF_TextPage* CreateTextPage(const CPDF_PageObjects* pObjs, | 81 static IPDF_TextPage* CreateTextPage(const CPDF_PageObjects* pObjs, |
| 82 int flags = 0); | 82 int flags = 0); |
| 83 static IPDF_TextPage* CreateReflowTextPage(IPDF_ReflowedPage* pRefPage); | 83 static IPDF_TextPage* CreateReflowTextPage(IPDF_ReflowedPage* pRefPage); |
| 84 | 84 |
| 85 virtual ~IPDF_TextPage() {} |
| 86 |
| 85 virtual void NormalizeObjects(FX_BOOL bNormalize) = 0; | 87 virtual void NormalizeObjects(FX_BOOL bNormalize) = 0; |
| 86 | 88 |
| 87 virtual FX_BOOL ParseTextPage() = 0; | 89 virtual FX_BOOL ParseTextPage() = 0; |
| 88 | 90 |
| 89 virtual FX_BOOL IsParsered() const = 0; | 91 virtual bool IsParsed() const = 0; |
| 90 | 92 |
| 91 public: | |
| 92 virtual int CharIndexFromTextIndex(int TextIndex) const = 0; | 93 virtual int CharIndexFromTextIndex(int TextIndex) const = 0; |
| 93 | 94 |
| 94 virtual int TextIndexFromCharIndex(int CharIndex) const = 0; | 95 virtual int TextIndexFromCharIndex(int CharIndex) const = 0; |
| 95 | 96 |
| 96 virtual int CountChars() const = 0; | 97 virtual int CountChars() const = 0; |
| 97 | 98 |
| 98 virtual void GetCharInfo(int index, FPDF_CHAR_INFO& info) const = 0; | 99 virtual void GetCharInfo(int index, FPDF_CHAR_INFO& info) const = 0; |
| 99 | 100 |
| 100 virtual void GetRectArray(int start, | 101 virtual void GetRectArray(int start, |
| 101 int nCount, | 102 int nCount, |
| (...skipping 30 matching lines...) Expand all Loading... |
| 132 FX_FLOAT right, | 133 FX_FLOAT right, |
| 133 FX_FLOAT bottom, | 134 FX_FLOAT bottom, |
| 134 FX_BOOL bContains = FALSE) = 0; | 135 FX_BOOL bContains = FALSE) = 0; |
| 135 | 136 |
| 136 virtual void GetBoundedSegment(int index, int& start, int& count) const = 0; | 137 virtual void GetBoundedSegment(int index, int& start, int& count) const = 0; |
| 137 | 138 |
| 138 virtual int GetWordBreak(int index, int direction) const = 0; | 139 virtual int GetWordBreak(int index, int direction) const = 0; |
| 139 | 140 |
| 140 virtual CFX_WideString GetPageText(int start = 0, int nCount = -1) const = 0; | 141 virtual CFX_WideString GetPageText(int start = 0, int nCount = -1) const = 0; |
| 141 }; | 142 }; |
| 143 |
| 142 #define FPDFTEXT_MATCHCASE 0x00000001 | 144 #define FPDFTEXT_MATCHCASE 0x00000001 |
| 143 #define FPDFTEXT_MATCHWHOLEWORD 0x00000002 | 145 #define FPDFTEXT_MATCHWHOLEWORD 0x00000002 |
| 144 #define FPDFTEXT_CONSECUTIVE 0x00000004 | 146 #define FPDFTEXT_CONSECUTIVE 0x00000004 |
| 145 class IPDF_TextPageFind { | 147 class IPDF_TextPageFind { |
| 146 public: | 148 public: |
| 147 virtual ~IPDF_TextPageFind() {} | 149 virtual ~IPDF_TextPageFind() {} |
| 148 | 150 |
| 149 static IPDF_TextPageFind* CreatePageFind(const IPDF_TextPage* pTextPage); | 151 static IPDF_TextPageFind* CreatePageFind(const IPDF_TextPage* pTextPage); |
| 150 | 152 |
| 151 public: | 153 public: |
| (...skipping 23 matching lines...) Expand all Loading... |
| 175 virtual int CountLinks() const = 0; | 177 virtual int CountLinks() const = 0; |
| 176 | 178 |
| 177 virtual CFX_WideString GetURL(int index) const = 0; | 179 virtual CFX_WideString GetURL(int index) const = 0; |
| 178 | 180 |
| 179 virtual void GetBoundedSegment(int index, int& start, int& count) const = 0; | 181 virtual void GetBoundedSegment(int index, int& start, int& count) const = 0; |
| 180 | 182 |
| 181 virtual void GetRects(int index, CFX_RectArray& rects) const = 0; | 183 virtual void GetRects(int index, CFX_RectArray& rects) const = 0; |
| 182 }; | 184 }; |
| 183 | 185 |
| 184 #endif // CORE_INCLUDE_FPDFTEXT_FPDF_TEXT_H_ | 186 #endif // CORE_INCLUDE_FPDFTEXT_FPDF_TEXT_H_ |
| OLD | NEW |