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_SRC_FPDFTEXT_TEXT_INT_H_ | 7 #ifndef CORE_SRC_FPDFTEXT_TEXT_INT_H_ |
8 #define CORE_SRC_FPDFTEXT_TEXT_INT_H_ | 8 #define CORE_SRC_FPDFTEXT_TEXT_INT_H_ |
9 | 9 |
10 #include <deque> | 10 #include <deque> |
| 11 #include <vector> |
11 | 12 |
12 #include "core/include/fpdftext/fpdf_text.h" | 13 #include "core/include/fpdftext/fpdf_text.h" |
13 #include "core/include/fxcrt/fx_basic.h" | 14 #include "core/include/fxcrt/fx_basic.h" |
14 | 15 |
15 class CFX_BidiChar; | 16 class CFX_BidiChar; |
16 class CPDF_DocProgressiveSearch; | 17 class CPDF_DocProgressiveSearch; |
17 class CPDF_FormObject; | 18 class CPDF_FormObject; |
18 class CPDF_LinkExtract; | 19 class CPDF_LinkExtract; |
19 class CPDF_TextPageFind; | 20 class CPDF_TextPageFind; |
20 | 21 |
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
123 void AddCharInfoByLRDirection(CFX_WideString& str, int i); | 124 void AddCharInfoByLRDirection(CFX_WideString& str, int i); |
124 void AddCharInfoByRLDirection(CFX_WideString& str, int i); | 125 void AddCharInfoByRLDirection(CFX_WideString& str, int i); |
125 int32_t GetTextObjectWritingMode(const CPDF_TextObject* pTextObj); | 126 int32_t GetTextObjectWritingMode(const CPDF_TextObject* pTextObj); |
126 int32_t FindTextlineFlowDirection(); | 127 int32_t FindTextlineFlowDirection(); |
127 | 128 |
128 void SwapTempTextBuf(int32_t iCharListStartAppend, int32_t iBufStartAppend); | 129 void SwapTempTextBuf(int32_t iCharListStartAppend, int32_t iBufStartAppend); |
129 FX_BOOL IsRightToLeft(const CPDF_TextObject* pTextObj, | 130 FX_BOOL IsRightToLeft(const CPDF_TextObject* pTextObj, |
130 const CPDF_Font* pFont, | 131 const CPDF_Font* pFont, |
131 int nItems) const; | 132 int nItems) const; |
132 | 133 |
133 CFX_WordArray m_CharIndex; | 134 std::vector<FX_WORD> m_CharIndex; |
134 const CPDF_PageObjectList* const m_pPage; | 135 const CPDF_PageObjectList* const m_pPage; |
135 std::deque<PAGECHAR_INFO> m_CharList; | 136 std::deque<PAGECHAR_INFO> m_CharList; |
136 std::deque<PAGECHAR_INFO> m_TempCharList; | 137 std::deque<PAGECHAR_INFO> m_TempCharList; |
137 CFX_WideTextBuf m_TextBuf; | 138 CFX_WideTextBuf m_TextBuf; |
138 CFX_WideTextBuf m_TempTextBuf; | 139 CFX_WideTextBuf m_TempTextBuf; |
139 const int m_parserflag; | 140 const int m_parserflag; |
140 CPDF_TextObject* m_pPreTextObj; | 141 CPDF_TextObject* m_pPreTextObj; |
141 CFX_Matrix m_perMatrix; | 142 CFX_Matrix m_perMatrix; |
142 bool m_bIsParsed; | 143 bool m_bIsParsed; |
143 CFX_Matrix m_DisplayMatrix; | 144 CFX_Matrix m_DisplayMatrix; |
(...skipping 29 matching lines...) Expand all Loading... |
173 int iSubString, | 174 int iSubString, |
174 FX_WCHAR chSep); | 175 FX_WCHAR chSep); |
175 CFX_WideString MakeReverse(const CFX_WideString& str); | 176 CFX_WideString MakeReverse(const CFX_WideString& str); |
176 int ReverseFind(const CFX_WideString& csPageText, | 177 int ReverseFind(const CFX_WideString& csPageText, |
177 const CFX_WideString& csWord, | 178 const CFX_WideString& csWord, |
178 int nStartPos, | 179 int nStartPos, |
179 int& WordLength); | 180 int& WordLength); |
180 int GetCharIndex(int index) const; | 181 int GetCharIndex(int index) const; |
181 | 182 |
182 private: | 183 private: |
183 CFX_WordArray m_CharIndex; | 184 std::vector<FX_WORD> m_CharIndex; |
184 const IPDF_TextPage* m_pTextPage; | 185 const IPDF_TextPage* m_pTextPage; |
185 CFX_WideString m_strText; | 186 CFX_WideString m_strText; |
186 CFX_WideString m_findWhat; | 187 CFX_WideString m_findWhat; |
187 int m_flags; | 188 int m_flags; |
188 CFX_WideStringArray m_csFindWhatArray; | 189 CFX_WideStringArray m_csFindWhatArray; |
189 int m_findNextStart; | 190 int m_findNextStart; |
190 int m_findPreStart; | 191 int m_findPreStart; |
191 FX_BOOL m_bMatchCase; | 192 FX_BOOL m_bMatchCase; |
192 FX_BOOL m_bMatchWholeWord; | 193 FX_BOOL m_bMatchWholeWord; |
193 int m_resStart; | 194 int m_resStart; |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
236 }; | 237 }; |
237 | 238 |
238 FX_STRSIZE FX_Unicode_GetNormalization(FX_WCHAR wch, FX_WCHAR* pDst); | 239 FX_STRSIZE FX_Unicode_GetNormalization(FX_WCHAR wch, FX_WCHAR* pDst); |
239 void NormalizeString(CFX_WideString& str); | 240 void NormalizeString(CFX_WideString& str); |
240 void NormalizeCompositeChar(FX_WCHAR wChar, CFX_WideString& sDest); | 241 void NormalizeCompositeChar(FX_WCHAR wChar, CFX_WideString& sDest); |
241 void GetTextStream_Unicode(CFX_WideTextBuf& buffer, | 242 void GetTextStream_Unicode(CFX_WideTextBuf& buffer, |
242 CPDF_PageObjectList* pPage, | 243 CPDF_PageObjectList* pPage, |
243 FX_BOOL bUseLF); | 244 FX_BOOL bUseLF); |
244 | 245 |
245 #endif // CORE_SRC_FPDFTEXT_TEXT_INT_H_ | 246 #endif // CORE_SRC_FPDFTEXT_TEXT_INT_H_ |
OLD | NEW |