| 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_FPDFAPI_FPDF_PAGEOBJ_H_ | 7 #ifndef CORE_INCLUDE_FPDFAPI_FPDF_PAGEOBJ_H_ |
| 8 #define CORE_INCLUDE_FPDFAPI_FPDF_PAGEOBJ_H_ | 8 #define CORE_INCLUDE_FPDFAPI_FPDF_PAGEOBJ_H_ |
| 9 | 9 |
| 10 #include "../fxge/fx_ge.h" | 10 #include "../fxge/fx_ge.h" |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 63 FX_FLOAT right, | 63 FX_FLOAT right, |
| 64 FX_FLOAT top) { | 64 FX_FLOAT top) { |
| 65 m_pObject->AppendRect(left, bottom, right, top); | 65 m_pObject->AppendRect(left, bottom, right, top); |
| 66 } | 66 } |
| 67 | 67 |
| 68 FX_BOOL IsRect() const { return m_pObject->IsRect(); } | 68 FX_BOOL IsRect() const { return m_pObject->IsRect(); } |
| 69 }; | 69 }; |
| 70 class CPDF_ClipPathData { | 70 class CPDF_ClipPathData { |
| 71 public: | 71 public: |
| 72 CPDF_ClipPathData(); | 72 CPDF_ClipPathData(); |
| 73 | |
| 74 CPDF_ClipPathData(const CPDF_ClipPathData&); | 73 CPDF_ClipPathData(const CPDF_ClipPathData&); |
| 75 | |
| 76 ~CPDF_ClipPathData(); | 74 ~CPDF_ClipPathData(); |
| 77 | 75 |
| 78 void SetCount(int path_count, int text_count); | 76 void SetCount(int path_count, int text_count); |
| 79 | 77 |
| 80 public: | 78 public: |
| 81 int m_PathCount; | 79 int m_PathCount; |
| 82 | 80 |
| 83 CPDF_Path* m_pPathList; | 81 CPDF_Path* m_pPathList; |
| 84 | 82 |
| 85 uint8_t* m_pTypeList; | 83 uint8_t* m_pTypeList; |
| 86 | 84 |
| 87 int m_TextCount; | 85 int m_TextCount; |
| 88 | 86 |
| 89 CPDF_TextObject** m_pTextList; | 87 CPDF_TextObject** m_pTextList; |
| 90 }; | 88 }; |
| 89 |
| 91 class CPDF_ClipPath : public CFX_CountRef<CPDF_ClipPathData> { | 90 class CPDF_ClipPath : public CFX_CountRef<CPDF_ClipPathData> { |
| 92 public: | 91 public: |
| 93 FX_DWORD GetPathCount() const { return m_pObject->m_PathCount; } | 92 FX_DWORD GetPathCount() const { return m_pObject->m_PathCount; } |
| 94 | 93 |
| 95 CPDF_Path GetPath(int i) const { return m_pObject->m_pPathList[i]; } | 94 CPDF_Path GetPath(int i) const { return m_pObject->m_pPathList[i]; } |
| 96 | 95 |
| 97 int GetClipType(int i) const { return m_pObject->m_pTypeList[i]; } | 96 int GetClipType(int i) const { return m_pObject->m_pTypeList[i]; } |
| 98 | 97 |
| 99 FX_DWORD GetTextCount() const { return m_pObject->m_TextCount; } | 98 FX_DWORD GetTextCount() const { return m_pObject->m_TextCount; } |
| 100 | 99 |
| (...skipping 384 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 485 int m_nChars; | 484 int m_nChars; |
| 486 | 485 |
| 487 FX_DWORD* m_pCharCodes; | 486 FX_DWORD* m_pCharCodes; |
| 488 | 487 |
| 489 FX_FLOAT* m_pCharPos; | 488 FX_FLOAT* m_pCharPos; |
| 490 }; | 489 }; |
| 491 | 490 |
| 492 class CPDF_PathObject : public CPDF_PageObject { | 491 class CPDF_PathObject : public CPDF_PageObject { |
| 493 public: | 492 public: |
| 494 CPDF_PathObject() { m_Type = PDFPAGE_PATH; } | 493 CPDF_PathObject() { m_Type = PDFPAGE_PATH; } |
| 494 ~CPDF_PathObject() override {} |
| 495 | 495 |
| 496 virtual ~CPDF_PathObject() {} | |
| 497 void Transform(const CFX_AffineMatrix& maxtrix) override; | 496 void Transform(const CFX_AffineMatrix& maxtrix) override; |
| 498 | 497 |
| 499 void SetGraphState(CPDF_GraphState GraphState); | 498 void SetGraphState(CPDF_GraphState GraphState); |
| 500 | 499 |
| 500 void CalcBoundingBox(); |
| 501 |
| 501 CPDF_Path m_Path; | 502 CPDF_Path m_Path; |
| 502 | 503 |
| 503 int m_FillType; | 504 int m_FillType; |
| 504 | 505 |
| 505 FX_BOOL m_bStroke; | 506 FX_BOOL m_bStroke; |
| 506 | 507 |
| 507 CFX_AffineMatrix m_Matrix; | 508 CFX_AffineMatrix m_Matrix; |
| 508 | 509 |
| 509 void CalcBoundingBox(); | |
| 510 | |
| 511 protected: | 510 protected: |
| 512 void CopyData(const CPDF_PageObject* pSrcObject) override; | 511 void CopyData(const CPDF_PageObject* pSrcObject) override; |
| 513 }; | 512 }; |
| 514 | 513 |
| 515 class CPDF_ImageObject : public CPDF_PageObject { | 514 class CPDF_ImageObject : public CPDF_PageObject { |
| 516 public: | 515 public: |
| 517 CPDF_ImageObject(); | 516 CPDF_ImageObject(); |
| 517 ~CPDF_ImageObject() override; |
| 518 | 518 |
| 519 virtual ~CPDF_ImageObject(); | |
| 520 void Transform(const CFX_AffineMatrix& matrix) override; | 519 void Transform(const CFX_AffineMatrix& matrix) override; |
| 521 | 520 |
| 522 CPDF_Image* m_pImage; | 521 CPDF_Image* m_pImage; |
| 523 | 522 |
| 524 CFX_AffineMatrix m_Matrix; | 523 CFX_AffineMatrix m_Matrix; |
| 525 | 524 |
| 526 void CalcBoundingBox(); | 525 void CalcBoundingBox(); |
| 527 | 526 |
| 528 private: | 527 private: |
| 529 void CopyData(const CPDF_PageObject* pSrcObject) override; | 528 void CopyData(const CPDF_PageObject* pSrcObject) override; |
| 530 }; | 529 }; |
| 531 | 530 |
| 532 class CPDF_ShadingObject : public CPDF_PageObject { | 531 class CPDF_ShadingObject : public CPDF_PageObject { |
| 533 public: | 532 public: |
| 534 CPDF_ShadingObject(); | 533 CPDF_ShadingObject(); |
| 535 | 534 ~CPDF_ShadingObject() override; |
| 536 virtual ~CPDF_ShadingObject(); | |
| 537 | 535 |
| 538 CPDF_ShadingPattern* m_pShading; | 536 CPDF_ShadingPattern* m_pShading; |
| 539 | 537 |
| 540 CFX_AffineMatrix m_Matrix; | 538 CFX_AffineMatrix m_Matrix; |
| 541 | 539 |
| 542 void Transform(const CFX_AffineMatrix& matrix) override; | 540 void Transform(const CFX_AffineMatrix& matrix) override; |
| 543 | 541 |
| 544 void CalcBoundingBox(); | 542 void CalcBoundingBox(); |
| 545 | 543 |
| 546 protected: | 544 protected: |
| 547 void CopyData(const CPDF_PageObject* pSrcObject) override; | 545 void CopyData(const CPDF_PageObject* pSrcObject) override; |
| 548 }; | 546 }; |
| 549 | 547 |
| 550 class CPDF_FormObject : public CPDF_PageObject { | 548 class CPDF_FormObject : public CPDF_PageObject { |
| 551 public: | 549 public: |
| 552 CPDF_FormObject() { | 550 CPDF_FormObject() { |
| 553 m_Type = PDFPAGE_FORM; | 551 m_Type = PDFPAGE_FORM; |
| 554 m_pForm = NULL; | 552 m_pForm = NULL; |
| 555 } | 553 } |
| 554 ~CPDF_FormObject() override; |
| 556 | 555 |
| 557 virtual ~CPDF_FormObject(); | |
| 558 void Transform(const CFX_AffineMatrix& matrix) override; | 556 void Transform(const CFX_AffineMatrix& matrix) override; |
| 559 | 557 |
| 560 CPDF_Form* m_pForm; | 558 CPDF_Form* m_pForm; |
| 561 | 559 |
| 562 CFX_AffineMatrix m_FormMatrix; | 560 CFX_AffineMatrix m_FormMatrix; |
| 563 | 561 |
| 564 void CalcBoundingBox(); | 562 void CalcBoundingBox(); |
| 565 | 563 |
| 566 protected: | 564 protected: |
| 567 void CopyData(const CPDF_PageObject* pSrcObject) override; | 565 void CopyData(const CPDF_PageObject* pSrcObject) override; |
| 568 }; | 566 }; |
| 569 | 567 |
| 570 #endif // CORE_INCLUDE_FPDFAPI_FPDF_PAGEOBJ_H_ | 568 #endif // CORE_INCLUDE_FPDFAPI_FPDF_PAGEOBJ_H_ |
| OLD | NEW |