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_FPDFAPI_FPDF_PAGE_PAGEINT_H_ | 7 #ifndef CORE_FPDFAPI_FPDF_PAGE_PAGEINT_H_ |
8 #define CORE_FPDFAPI_FPDF_PAGE_PAGEINT_H_ | 8 #define CORE_FPDFAPI_FPDF_PAGE_PAGEINT_H_ |
9 | 9 |
10 #include <map> | 10 #include <map> |
11 #include <memory> | 11 #include <memory> |
12 #include <unordered_map> | 12 #include <unordered_map> |
13 #include <vector> | 13 #include <vector> |
14 | 14 |
15 #include "core/fpdfapi/fpdf_page/cpdf_contentmark.h" | |
15 #include "core/fpdfapi/fpdf_page/cpdf_parseoptions.h" | 16 #include "core/fpdfapi/fpdf_page/cpdf_parseoptions.h" |
16 #include "core/fpdfapi/fpdf_page/include/cpdf_pageobjectholder.h" | 17 #include "core/fpdfapi/fpdf_page/include/cpdf_pageobjectholder.h" |
17 #include "core/include/fpdfapi/fpdf_pageobj.h" | 18 #include "core/include/fpdfapi/fpdf_resource.h" |
19 #include "core/include/fxge/fx_ge.h" | |
18 | 20 |
19 class CPDF_AllStates; | 21 class CPDF_AllStates; |
20 class CPDF_ParseOptions; | 22 class CPDF_ParseOptions; |
21 class CPDF_IccProfile; | 23 class CPDF_IccProfile; |
24 class CPDF_ImageObject; | |
25 class CPDF_Image; | |
Tom Sepez
2016/03/17 20:15:38
nit: alphabetize.
dsinclair
2016/03/17 20:37:41
Done.
| |
26 class CPDF_Font; | |
27 class CPDF_ColorSpace; | |
28 class CPDF_Pattern; | |
29 class CPDF_TextObject; | |
30 class CPDF_Form; | |
31 class CPDF_Type3Char; | |
32 class CPDF_StreamAcc; | |
33 class CPDF_Patttern; | |
34 class CPDF_FontEncoding; | |
22 | 35 |
23 #define PARSE_STEP_LIMIT 100 | 36 #define PARSE_STEP_LIMIT 100 |
24 | 37 |
25 class CPDF_StreamParser { | 38 class CPDF_StreamParser { |
26 public: | 39 public: |
27 enum SyntaxType { EndOfData, Number, Keyword, Name, Others }; | 40 enum SyntaxType { EndOfData, Number, Keyword, Name, Others }; |
28 | 41 |
29 CPDF_StreamParser(const uint8_t* pData, FX_DWORD dwSize); | 42 CPDF_StreamParser(const uint8_t* pData, FX_DWORD dwSize); |
30 ~CPDF_StreamParser(); | 43 ~CPDF_StreamParser(); |
31 | 44 |
(...skipping 269 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
301 CPDF_ParseOptions m_Options; | 314 CPDF_ParseOptions m_Options; |
302 CPDF_Type3Char* m_pType3Char; | 315 CPDF_Type3Char* m_pType3Char; |
303 FX_DWORD m_nStreams; | 316 FX_DWORD m_nStreams; |
304 std::unique_ptr<CPDF_StreamAcc> m_pSingleStream; | 317 std::unique_ptr<CPDF_StreamAcc> m_pSingleStream; |
305 std::vector<std::unique_ptr<CPDF_StreamAcc>> m_StreamArray; | 318 std::vector<std::unique_ptr<CPDF_StreamAcc>> m_StreamArray; |
306 uint8_t* m_pData; | 319 uint8_t* m_pData; |
307 FX_DWORD m_Size; | 320 FX_DWORD m_Size; |
308 FX_DWORD m_CurrentOffset; | 321 FX_DWORD m_CurrentOffset; |
309 std::unique_ptr<CPDF_StreamContentParser> m_pParser; | 322 std::unique_ptr<CPDF_StreamContentParser> m_pParser; |
310 }; | 323 }; |
311 class CPDF_AllStates : public CPDF_GraphicStates { | |
312 public: | |
313 CPDF_AllStates(); | |
314 ~CPDF_AllStates(); | |
315 void Copy(const CPDF_AllStates& src); | |
316 void ProcessExtGS(CPDF_Dictionary* pGS, CPDF_StreamContentParser* pParser); | |
317 void SetLineDash(CPDF_Array*, FX_FLOAT, FX_FLOAT scale); | |
318 CFX_Matrix m_TextMatrix, m_CTM, m_ParentMatrix; | |
319 FX_FLOAT m_TextX, m_TextY, m_TextLineX, m_TextLineY; | |
320 FX_FLOAT m_TextLeading, m_TextRise, m_TextHorzScale; | |
321 }; | |
322 | 324 |
323 class CPDF_DocPageData { | 325 class CPDF_DocPageData { |
324 public: | 326 public: |
325 explicit CPDF_DocPageData(CPDF_Document* pPDFDoc); | 327 explicit CPDF_DocPageData(CPDF_Document* pPDFDoc); |
326 ~CPDF_DocPageData(); | 328 ~CPDF_DocPageData(); |
327 | 329 |
328 void Clear(FX_BOOL bRelease = FALSE); | 330 void Clear(FX_BOOL bRelease = FALSE); |
329 CPDF_Font* GetFont(CPDF_Dictionary* pFontDict, FX_BOOL findOnly); | 331 CPDF_Font* GetFont(CPDF_Dictionary* pFontDict, FX_BOOL findOnly); |
330 CPDF_Font* GetStandardFont(const CFX_ByteStringC& fontName, | 332 CPDF_Font* GetStandardFont(const CFX_ByteStringC& fontName, |
331 CPDF_FontEncoding* pEncoding); | 333 CPDF_FontEncoding* pEncoding); |
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
451 | 453 |
452 private: | 454 private: |
453 CPDF_ColorSpace* m_pBaseCS; | 455 CPDF_ColorSpace* m_pBaseCS; |
454 CPDF_CountedColorSpace* m_pCountedBaseCS; | 456 CPDF_CountedColorSpace* m_pCountedBaseCS; |
455 }; | 457 }; |
456 | 458 |
457 void PDF_ReplaceAbbr(CPDF_Object* pObj); | 459 void PDF_ReplaceAbbr(CPDF_Object* pObj); |
458 bool IsPathOperator(const uint8_t* buf, size_t len); | 460 bool IsPathOperator(const uint8_t* buf, size_t len); |
459 | 461 |
460 #endif // CORE_FPDFAPI_FPDF_PAGE_PAGEINT_H_ | 462 #endif // CORE_FPDFAPI_FPDF_PAGE_PAGEINT_H_ |
OLD | NEW |