| 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 #include <vector> |
| 12 | 12 |
| 13 #include "core/include/fpdfapi/fpdf_page.h" |
| 13 #include "core/include/fpdftext/fpdf_text.h" | 14 #include "core/include/fpdftext/fpdf_text.h" |
| 14 #include "core/include/fxcrt/fx_basic.h" | 15 #include "core/include/fxcrt/fx_basic.h" |
| 15 | 16 |
| 16 class CFX_BidiChar; | 17 class CFX_BidiChar; |
| 17 class CPDF_DocProgressiveSearch; | 18 class CPDF_DocProgressiveSearch; |
| 18 class CPDF_FormObject; | 19 class CPDF_FormObject; |
| 19 class CPDF_LinkExtract; | 20 class CPDF_LinkExtract; |
| 20 class CPDF_TextPageFind; | 21 class CPDF_TextPageFind; |
| 21 | 22 |
| 22 #define FPDFTEXT_CHAR_ERROR -1 | 23 #define FPDFTEXT_CHAR_ERROR -1 |
| (...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 100 private: | 101 private: |
| 101 FX_BOOL IsHyphen(FX_WCHAR curChar); | 102 FX_BOOL IsHyphen(FX_WCHAR curChar); |
| 102 bool IsControlChar(const PAGECHAR_INFO& charInfo); | 103 bool IsControlChar(const PAGECHAR_INFO& charInfo); |
| 103 FX_BOOL GetBaselineRotate(int start, int end, int& Rotate); | 104 FX_BOOL GetBaselineRotate(int start, int end, int& Rotate); |
| 104 void ProcessObject(); | 105 void ProcessObject(); |
| 105 void ProcessFormObject(CPDF_FormObject* pFormObj, | 106 void ProcessFormObject(CPDF_FormObject* pFormObj, |
| 106 const CFX_Matrix& formMatrix); | 107 const CFX_Matrix& formMatrix); |
| 107 void ProcessTextObject(PDFTEXT_Obj pObj); | 108 void ProcessTextObject(PDFTEXT_Obj pObj); |
| 108 void ProcessTextObject(CPDF_TextObject* pTextObj, | 109 void ProcessTextObject(CPDF_TextObject* pTextObj, |
| 109 const CFX_Matrix& formMatrix, | 110 const CFX_Matrix& formMatrix, |
| 110 FX_POSITION ObjPos); | 111 const CPDF_PageObjectList* pObjList, |
| 112 CPDF_PageObjectList::const_iterator ObjPos); |
| 111 int ProcessInsertObject(const CPDF_TextObject* pObj, | 113 int ProcessInsertObject(const CPDF_TextObject* pObj, |
| 112 const CFX_Matrix& formMatrix); | 114 const CFX_Matrix& formMatrix); |
| 113 FX_BOOL GenerateCharInfo(FX_WCHAR unicode, PAGECHAR_INFO& info); | 115 FX_BOOL GenerateCharInfo(FX_WCHAR unicode, PAGECHAR_INFO& info); |
| 114 FX_BOOL IsSameAsPreTextObject(CPDF_TextObject* pTextObj, FX_POSITION ObjPos); | 116 FX_BOOL IsSameAsPreTextObject(CPDF_TextObject* pTextObj, |
| 117 const CPDF_PageObjectList* pObjList, |
| 118 CPDF_PageObjectList::const_iterator ObjPos); |
| 115 FX_BOOL IsSameTextObject(CPDF_TextObject* pTextObj1, | 119 FX_BOOL IsSameTextObject(CPDF_TextObject* pTextObj1, |
| 116 CPDF_TextObject* pTextObj2); | 120 CPDF_TextObject* pTextObj2); |
| 117 int GetCharWidth(FX_DWORD charCode, CPDF_Font* pFont) const; | 121 int GetCharWidth(FX_DWORD charCode, CPDF_Font* pFont) const; |
| 118 void CloseTempLine(); | 122 void CloseTempLine(); |
| 119 void OnPiece(CFX_BidiChar* pBidi, CFX_WideString& str); | 123 void OnPiece(CFX_BidiChar* pBidi, CFX_WideString& str); |
| 120 int32_t PreMarkedContent(PDFTEXT_Obj pObj); | 124 int32_t PreMarkedContent(PDFTEXT_Obj pObj); |
| 121 void ProcessMarkedContent(PDFTEXT_Obj pObj); | 125 void ProcessMarkedContent(PDFTEXT_Obj pObj); |
| 122 void CheckMarkedContentObject(int32_t& start, int32_t& nCount) const; | 126 void CheckMarkedContentObject(int32_t& start, int32_t& nCount) const; |
| 123 void FindPreviousTextObject(void); | 127 void FindPreviousTextObject(void); |
| 124 void AddCharInfoByLRDirection(FX_WCHAR wChar, PAGECHAR_INFO info); | 128 void AddCharInfoByLRDirection(FX_WCHAR wChar, PAGECHAR_INFO info); |
| (...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 232 private: | 236 private: |
| 233 LINK_InfoArray m_LinkList; | 237 LINK_InfoArray m_LinkList; |
| 234 const CPDF_TextPage* m_pTextPage; | 238 const CPDF_TextPage* m_pTextPage; |
| 235 CFX_WideString m_strPageText; | 239 CFX_WideString m_strPageText; |
| 236 bool m_bIsParsed; | 240 bool m_bIsParsed; |
| 237 }; | 241 }; |
| 238 | 242 |
| 239 FX_STRSIZE FX_Unicode_GetNormalization(FX_WCHAR wch, FX_WCHAR* pDst); | 243 FX_STRSIZE FX_Unicode_GetNormalization(FX_WCHAR wch, FX_WCHAR* pDst); |
| 240 | 244 |
| 241 #endif // CORE_SRC_FPDFTEXT_TEXT_INT_H_ | 245 #endif // CORE_SRC_FPDFTEXT_TEXT_INT_H_ |
| OLD | NEW |