Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(46)

Side by Side Diff: core/fpdftext/cpdf_textpage.h

Issue 2477443002: Remove FX_BOOL from core (Closed)
Patch Set: Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « core/fpdftext/cpdf_linkextract.cpp ('k') | core/fpdftext/cpdf_textpage.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 PDFium Authors. All rights reserved. 1 // Copyright 2016 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_FPDFTEXT_CPDF_TEXTPAGE_H_ 7 #ifndef CORE_FPDFTEXT_CPDF_TEXTPAGE_H_
8 #define CORE_FPDFTEXT_CPDF_TEXTPAGE_H_ 8 #define CORE_FPDFTEXT_CPDF_TEXTPAGE_H_
9 9
10 #include <deque> 10 #include <deque>
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
100 FX_FLOAT yTolerance) const; 100 FX_FLOAT yTolerance) const;
101 CFX_WideString GetTextByRect(const CFX_FloatRect& rect) const; 101 CFX_WideString GetTextByRect(const CFX_FloatRect& rect) const;
102 CFX_WideString GetPageText(int start = 0, int nCount = -1) const; 102 CFX_WideString GetPageText(int start = 0, int nCount = -1) const;
103 int CountRects(int start, int nCount); 103 int CountRects(int start, int nCount);
104 void GetRect(int rectIndex, 104 void GetRect(int rectIndex,
105 FX_FLOAT& left, 105 FX_FLOAT& left,
106 FX_FLOAT& top, 106 FX_FLOAT& top,
107 FX_FLOAT& right, 107 FX_FLOAT& right,
108 FX_FLOAT& bottom) const; 108 FX_FLOAT& bottom) const;
109 109
110 static FX_BOOL IsRectIntersect(const CFX_FloatRect& rect1, 110 static bool IsRectIntersect(const CFX_FloatRect& rect1,
111 const CFX_FloatRect& rect2); 111 const CFX_FloatRect& rect2);
112 112
113 private: 113 private:
114 enum class TextOrientation { 114 enum class TextOrientation {
115 Unknown, 115 Unknown,
116 Horizontal, 116 Horizontal,
117 Vertical, 117 Vertical,
118 }; 118 };
119 119
120 enum class GenerateCharacter { 120 enum class GenerateCharacter {
121 None, 121 None,
122 Space, 122 Space,
123 LineBreak, 123 LineBreak,
124 Hyphen, 124 Hyphen,
125 }; 125 };
126 126
127 FX_BOOL IsHyphen(FX_WCHAR curChar); 127 bool IsHyphen(FX_WCHAR curChar);
128 bool IsControlChar(const PAGECHAR_INFO& charInfo); 128 bool IsControlChar(const PAGECHAR_INFO& charInfo);
129 void ProcessObject(); 129 void ProcessObject();
130 void ProcessFormObject(CPDF_FormObject* pFormObj, 130 void ProcessFormObject(CPDF_FormObject* pFormObj,
131 const CFX_Matrix& formMatrix); 131 const CFX_Matrix& formMatrix);
132 void ProcessTextObject(PDFTEXT_Obj pObj); 132 void ProcessTextObject(PDFTEXT_Obj pObj);
133 void ProcessTextObject(CPDF_TextObject* pTextObj, 133 void ProcessTextObject(CPDF_TextObject* pTextObj,
134 const CFX_Matrix& formMatrix, 134 const CFX_Matrix& formMatrix,
135 const CPDF_PageObjectList* pObjList, 135 const CPDF_PageObjectList* pObjList,
136 CPDF_PageObjectList::const_iterator ObjPos); 136 CPDF_PageObjectList::const_iterator ObjPos);
137 GenerateCharacter ProcessInsertObject(const CPDF_TextObject* pObj, 137 GenerateCharacter ProcessInsertObject(const CPDF_TextObject* pObj,
138 const CFX_Matrix& formMatrix); 138 const CFX_Matrix& formMatrix);
139 FX_BOOL GenerateCharInfo(FX_WCHAR unicode, PAGECHAR_INFO& info); 139 bool GenerateCharInfo(FX_WCHAR unicode, PAGECHAR_INFO& info);
140 FX_BOOL IsSameAsPreTextObject(CPDF_TextObject* pTextObj, 140 bool IsSameAsPreTextObject(CPDF_TextObject* pTextObj,
141 const CPDF_PageObjectList* pObjList, 141 const CPDF_PageObjectList* pObjList,
142 CPDF_PageObjectList::const_iterator ObjPos); 142 CPDF_PageObjectList::const_iterator ObjPos);
143 FX_BOOL IsSameTextObject(CPDF_TextObject* pTextObj1, 143 bool IsSameTextObject(CPDF_TextObject* pTextObj1, CPDF_TextObject* pTextObj2);
144 CPDF_TextObject* pTextObj2);
145 int GetCharWidth(uint32_t charCode, CPDF_Font* pFont) const; 144 int GetCharWidth(uint32_t charCode, CPDF_Font* pFont) const;
146 void CloseTempLine(); 145 void CloseTempLine();
147 FPDFText_MarkedContent PreMarkedContent(PDFTEXT_Obj pObj); 146 FPDFText_MarkedContent PreMarkedContent(PDFTEXT_Obj pObj);
148 void ProcessMarkedContent(PDFTEXT_Obj pObj); 147 void ProcessMarkedContent(PDFTEXT_Obj pObj);
149 void CheckMarkedContentObject(int32_t& start, int32_t& nCount) const; 148 void CheckMarkedContentObject(int32_t& start, int32_t& nCount) const;
150 void FindPreviousTextObject(); 149 void FindPreviousTextObject();
151 void AddCharInfoByLRDirection(FX_WCHAR wChar, PAGECHAR_INFO info); 150 void AddCharInfoByLRDirection(FX_WCHAR wChar, PAGECHAR_INFO info);
152 void AddCharInfoByRLDirection(FX_WCHAR wChar, PAGECHAR_INFO info); 151 void AddCharInfoByRLDirection(FX_WCHAR wChar, PAGECHAR_INFO info);
153 TextOrientation GetTextObjectWritingMode( 152 TextOrientation GetTextObjectWritingMode(
154 const CPDF_TextObject* pTextObj) const; 153 const CPDF_TextObject* pTextObj) const;
155 TextOrientation FindTextlineFlowOrientation() const; 154 TextOrientation FindTextlineFlowOrientation() const;
156 void AppendGeneratedCharacter(FX_WCHAR unicode, const CFX_Matrix& formMatrix); 155 void AppendGeneratedCharacter(FX_WCHAR unicode, const CFX_Matrix& formMatrix);
157 156
158 void SwapTempTextBuf(int32_t iCharListStartAppend, int32_t iBufStartAppend); 157 void SwapTempTextBuf(int32_t iCharListStartAppend, int32_t iBufStartAppend);
159 FX_BOOL IsRightToLeft(const CPDF_TextObject* pTextObj, 158 bool IsRightToLeft(const CPDF_TextObject* pTextObj,
160 const CPDF_Font* pFont, 159 const CPDF_Font* pFont,
161 int nItems) const; 160 int nItems) const;
162 161
163 const CPDF_Page* const m_pPage; 162 const CPDF_Page* const m_pPage;
164 std::vector<uint16_t> m_CharIndex; 163 std::vector<uint16_t> m_CharIndex;
165 std::deque<PAGECHAR_INFO> m_CharList; 164 std::deque<PAGECHAR_INFO> m_CharList;
166 std::deque<PAGECHAR_INFO> m_TempCharList; 165 std::deque<PAGECHAR_INFO> m_TempCharList;
167 CFX_WideTextBuf m_TextBuf; 166 CFX_WideTextBuf m_TextBuf;
168 CFX_WideTextBuf m_TempTextBuf; 167 CFX_WideTextBuf m_TempTextBuf;
169 const FPDFText_Direction m_parserflag; 168 const FPDFText_Direction m_parserflag;
170 CPDF_TextObject* m_pPreTextObj; 169 CPDF_TextObject* m_pPreTextObj;
171 CFX_Matrix m_perMatrix; 170 CFX_Matrix m_perMatrix;
172 bool m_bIsParsed; 171 bool m_bIsParsed;
173 CFX_Matrix m_DisplayMatrix; 172 CFX_Matrix m_DisplayMatrix;
174 CFX_ArrayTemplate<FPDF_SEGMENT> m_Segments; 173 CFX_ArrayTemplate<FPDF_SEGMENT> m_Segments;
175 std::vector<CFX_FloatRect> m_SelRects; 174 std::vector<CFX_FloatRect> m_SelRects;
176 CFX_ArrayTemplate<PDFTEXT_Obj> m_LineObj; 175 CFX_ArrayTemplate<PDFTEXT_Obj> m_LineObj;
177 TextOrientation m_TextlineDir; 176 TextOrientation m_TextlineDir;
178 CFX_FloatRect m_CurlineRect; 177 CFX_FloatRect m_CurlineRect;
179 }; 178 };
180 179
181 #endif // CORE_FPDFTEXT_CPDF_TEXTPAGE_H_ 180 #endif // CORE_FPDFTEXT_CPDF_TEXTPAGE_H_
OLDNEW
« no previous file with comments | « core/fpdftext/cpdf_linkextract.cpp ('k') | core/fpdftext/cpdf_textpage.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698