Index: core/include/fpdfapi/fpdf_page.h |
diff --git a/core/include/fpdfapi/fpdf_page.h b/core/include/fpdfapi/fpdf_page.h |
index bd8b5c9878c677438d6590b081fc1d327c2c3067..5f716b2c2ee30d1dba2c1044589d467cec8f2ac1 100644 |
--- a/core/include/fpdfapi/fpdf_page.h |
+++ b/core/include/fpdfapi/fpdf_page.h |
@@ -21,202 +21,182 @@ class CPDF_StreamFilter; |
class CPDF_AllStates; |
class CPDF_ContentParser; |
class CPDF_StreamContentParser; |
-#define PDFTRANS_GROUP 0x0100 |
-#define PDFTRANS_ISOLATED 0x0200 |
-#define PDFTRANS_KNOCKOUT 0x0400 |
- |
-class CPDF_PageObjects |
-{ |
-public: |
- CPDF_PageObjects(FX_BOOL bReleaseMembers = TRUE); |
- ~CPDF_PageObjects(); |
- |
- void ContinueParse(IFX_Pause* pPause); |
- |
- FX_BOOL IsParsed() const |
- { |
- return m_ParseState == CONTENT_PARSED; |
- } |
- |
- FX_POSITION GetFirstObjectPosition() const |
- { |
- return m_ObjectList.GetHeadPosition(); |
- } |
- |
- FX_POSITION GetLastObjectPosition() const |
- { |
- return m_ObjectList.GetTailPosition(); |
- } |
- |
- CPDF_PageObject* GetNextObject(FX_POSITION& pos) const |
- { |
- return (CPDF_PageObject*)m_ObjectList.GetNext(pos); |
- } |
- |
- CPDF_PageObject* GetPrevObject(FX_POSITION& pos) const |
- { |
- return (CPDF_PageObject*)m_ObjectList.GetPrev(pos); |
- } |
- |
- CPDF_PageObject* GetObjectAt(FX_POSITION pos) const |
- { |
- return (CPDF_PageObject*)m_ObjectList.GetAt(pos); |
- } |
- |
- FX_DWORD CountObjects() const |
- { |
- return m_ObjectList.GetCount(); |
- } |
- |
- int GetObjectIndex(CPDF_PageObject* pObj) const; |
- |
- CPDF_PageObject* GetObjectByIndex(int index) const; |
- |
- FX_POSITION InsertObject(FX_POSITION posInsertAfter, CPDF_PageObject* pNewObject); |
- |
- void Transform(const CFX_AffineMatrix& matrix); |
- |
- FX_BOOL BackgroundAlphaNeeded() const |
- { |
- return m_bBackgroundAlphaNeeded; |
- } |
- |
- CFX_FloatRect CalcBoundingBox() const; |
- |
- CPDF_Dictionary* m_pFormDict; |
- CPDF_Stream* m_pFormStream; |
- CPDF_Document* m_pDocument; |
- CPDF_Dictionary* m_pPageResources; |
- CPDF_Dictionary* m_pResources; |
- CFX_FloatRect m_BBox; |
- int m_Transparency; |
- |
-protected: |
- friend class CPDF_ContentParser; |
- friend class CPDF_StreamContentParser; |
- friend class CPDF_AllStates; |
- |
- enum ParseState { |
- CONTENT_NOT_PARSED, |
- CONTENT_PARSING, |
- CONTENT_PARSED |
- }; |
- |
- void LoadTransInfo(); |
- void ClearCacheObjects(); |
- |
- CFX_PtrList m_ObjectList; |
- FX_BOOL m_bBackgroundAlphaNeeded; |
- FX_BOOL m_bReleaseMembers; |
- CPDF_ContentParser* m_pParser; |
- ParseState m_ParseState; |
-}; |
- |
-class CPDF_Page : public CPDF_PageObjects, public CFX_PrivateData |
-{ |
-public: |
+#define PDFTRANS_GROUP 0x0100 |
+#define PDFTRANS_ISOLATED 0x0200 |
+#define PDFTRANS_KNOCKOUT 0x0400 |
- CPDF_Page(); |
+class CPDF_PageObjects { |
+ public: |
+ CPDF_PageObjects(FX_BOOL bReleaseMembers = TRUE); |
+ ~CPDF_PageObjects(); |
- ~CPDF_Page(); |
+ void ContinueParse(IFX_Pause* pPause); |
- void Load(CPDF_Document* pDocument, CPDF_Dictionary* pPageDict, FX_BOOL bPageCache = TRUE); |
+ FX_BOOL IsParsed() const { return m_ParseState == CONTENT_PARSED; } |
- void StartParse(CPDF_ParseOptions* pOptions = NULL, FX_BOOL bReParse = FALSE); |
+ FX_POSITION GetFirstObjectPosition() const { |
+ return m_ObjectList.GetHeadPosition(); |
+ } |
- void ParseContent(CPDF_ParseOptions* pOptions = NULL, FX_BOOL bReParse = FALSE); |
+ FX_POSITION GetLastObjectPosition() const { |
+ return m_ObjectList.GetTailPosition(); |
+ } |
- void GetDisplayMatrix(CFX_AffineMatrix& matrix, int xPos, int yPos, |
- int xSize, int ySize, int iRotate) const; |
+ CPDF_PageObject* GetNextObject(FX_POSITION& pos) const { |
+ return (CPDF_PageObject*)m_ObjectList.GetNext(pos); |
+ } |
- FX_FLOAT GetPageWidth() const |
- { |
- return m_PageWidth; |
- } |
+ CPDF_PageObject* GetPrevObject(FX_POSITION& pos) const { |
+ return (CPDF_PageObject*)m_ObjectList.GetPrev(pos); |
+ } |
- FX_FLOAT GetPageHeight() const |
- { |
- return m_PageHeight; |
- } |
+ CPDF_PageObject* GetObjectAt(FX_POSITION pos) const { |
+ return (CPDF_PageObject*)m_ObjectList.GetAt(pos); |
+ } |
- CFX_FloatRect GetPageBBox() const |
- { |
- return m_BBox; |
- } |
+ FX_DWORD CountObjects() const { return m_ObjectList.GetCount(); } |
- const CFX_AffineMatrix& GetPageMatrix() const |
- { |
- return m_PageMatrix; |
- } |
+ int GetObjectIndex(CPDF_PageObject* pObj) const; |
- CPDF_Object* GetPageAttr(const CFX_ByteStringC& name) const; |
+ CPDF_PageObject* GetObjectByIndex(int index) const; |
+ FX_POSITION InsertObject(FX_POSITION posInsertAfter, |
+ CPDF_PageObject* pNewObject); |
+ void Transform(const CFX_AffineMatrix& matrix); |
- CPDF_PageRenderCache* GetRenderCache() const |
- { |
- return m_pPageRender; |
- } |
+ FX_BOOL BackgroundAlphaNeeded() const { return m_bBackgroundAlphaNeeded; } |
- void ClearRenderCache(); |
+ CFX_FloatRect CalcBoundingBox() const; |
-protected: |
- friend class CPDF_ContentParser; |
+ CPDF_Dictionary* m_pFormDict; |
+ CPDF_Stream* m_pFormStream; |
+ CPDF_Document* m_pDocument; |
+ CPDF_Dictionary* m_pPageResources; |
+ CPDF_Dictionary* m_pResources; |
+ CFX_FloatRect m_BBox; |
+ int m_Transparency; |
- FX_FLOAT m_PageWidth; |
+ protected: |
+ friend class CPDF_ContentParser; |
+ friend class CPDF_StreamContentParser; |
+ friend class CPDF_AllStates; |
- FX_FLOAT m_PageHeight; |
+ enum ParseState { CONTENT_NOT_PARSED, CONTENT_PARSING, CONTENT_PARSED }; |
- CFX_AffineMatrix m_PageMatrix; |
+ void LoadTransInfo(); |
+ void ClearCacheObjects(); |
- CPDF_PageRenderCache* m_pPageRender; |
+ CFX_PtrList m_ObjectList; |
+ FX_BOOL m_bBackgroundAlphaNeeded; |
+ FX_BOOL m_bReleaseMembers; |
+ CPDF_ContentParser* m_pParser; |
+ ParseState m_ParseState; |
}; |
-class CPDF_ParseOptions |
-{ |
-public: |
- CPDF_ParseOptions(); |
+class CPDF_Page : public CPDF_PageObjects, public CFX_PrivateData { |
+ public: |
+ CPDF_Page(); |
- FX_BOOL m_bTextOnly; |
+ ~CPDF_Page(); |
- FX_BOOL m_bMarkedContent; |
+ void Load(CPDF_Document* pDocument, |
+ CPDF_Dictionary* pPageDict, |
+ FX_BOOL bPageCache = TRUE); |
- FX_BOOL m_bSeparateForm; |
+ void StartParse(CPDF_ParseOptions* pOptions = NULL, FX_BOOL bReParse = FALSE); |
- FX_BOOL m_bDecodeInlineImage; |
-}; |
-class CPDF_Form : public CPDF_PageObjects |
-{ |
-public: |
+ void ParseContent(CPDF_ParseOptions* pOptions = NULL, |
+ FX_BOOL bReParse = FALSE); |
+ |
+ void GetDisplayMatrix(CFX_AffineMatrix& matrix, |
+ int xPos, |
+ int yPos, |
+ int xSize, |
+ int ySize, |
+ int iRotate) const; |
+ |
+ FX_FLOAT GetPageWidth() const { return m_PageWidth; } |
+ |
+ FX_FLOAT GetPageHeight() const { return m_PageHeight; } |
+ |
+ CFX_FloatRect GetPageBBox() const { return m_BBox; } |
+ |
+ const CFX_AffineMatrix& GetPageMatrix() const { return m_PageMatrix; } |
+ |
+ CPDF_Object* GetPageAttr(const CFX_ByteStringC& name) const; |
- CPDF_Form(CPDF_Document* pDocument, CPDF_Dictionary* pPageResources, CPDF_Stream* pFormStream, CPDF_Dictionary* pParentResources = NULL); |
+ CPDF_PageRenderCache* GetRenderCache() const { return m_pPageRender; } |
- ~CPDF_Form(); |
+ void ClearRenderCache(); |
- void StartParse(CPDF_AllStates* pGraphicStates, CFX_AffineMatrix* pParentMatrix, |
- CPDF_Type3Char* pType3Char, CPDF_ParseOptions* pOptions, int level = 0); |
+ protected: |
+ friend class CPDF_ContentParser; |
- void ParseContent(CPDF_AllStates* pGraphicStates, CFX_AffineMatrix* pParentMatrix, |
- CPDF_Type3Char* pType3Char, CPDF_ParseOptions* pOptions, int level = 0); |
+ FX_FLOAT m_PageWidth; |
- CPDF_Form* Clone() const; |
+ FX_FLOAT m_PageHeight; |
+ |
+ CFX_AffineMatrix m_PageMatrix; |
+ |
+ CPDF_PageRenderCache* m_pPageRender; |
+}; |
+class CPDF_ParseOptions { |
+ public: |
+ CPDF_ParseOptions(); |
+ |
+ FX_BOOL m_bTextOnly; |
+ |
+ FX_BOOL m_bMarkedContent; |
+ |
+ FX_BOOL m_bSeparateForm; |
+ |
+ FX_BOOL m_bDecodeInlineImage; |
+}; |
+class CPDF_Form : public CPDF_PageObjects { |
+ public: |
+ CPDF_Form(CPDF_Document* pDocument, |
+ CPDF_Dictionary* pPageResources, |
+ CPDF_Stream* pFormStream, |
+ CPDF_Dictionary* pParentResources = NULL); |
+ |
+ ~CPDF_Form(); |
+ |
+ void StartParse(CPDF_AllStates* pGraphicStates, |
+ CFX_AffineMatrix* pParentMatrix, |
+ CPDF_Type3Char* pType3Char, |
+ CPDF_ParseOptions* pOptions, |
+ int level = 0); |
+ |
+ void ParseContent(CPDF_AllStates* pGraphicStates, |
+ CFX_AffineMatrix* pParentMatrix, |
+ CPDF_Type3Char* pType3Char, |
+ CPDF_ParseOptions* pOptions, |
+ int level = 0); |
+ |
+ CPDF_Form* Clone() const; |
}; |
-class CPDF_PageContentGenerate |
-{ |
-public: |
- CPDF_PageContentGenerate(CPDF_Page* pPage); |
- ~CPDF_PageContentGenerate(); |
- FX_BOOL InsertPageObject(CPDF_PageObject* pPageObject); |
- void GenerateContent(); |
- void TransformContent(CFX_Matrix& matrix); |
-protected: |
- void ProcessImage(CFX_ByteTextBuf& buf, CPDF_ImageObject* pImageObj); |
- void ProcessForm(CFX_ByteTextBuf& buf, const uint8_t* data, FX_DWORD size, CFX_Matrix& matrix); |
- CFX_ByteString RealizeResource(CPDF_Object* pResourceObj, const FX_CHAR* szType); |
-private: |
- CPDF_Page* m_pPage; |
- CPDF_Document* m_pDocument; |
- CFX_PtrArray m_pageObjects; |
+class CPDF_PageContentGenerate { |
+ public: |
+ CPDF_PageContentGenerate(CPDF_Page* pPage); |
+ ~CPDF_PageContentGenerate(); |
+ FX_BOOL InsertPageObject(CPDF_PageObject* pPageObject); |
+ void GenerateContent(); |
+ void TransformContent(CFX_Matrix& matrix); |
+ |
+ protected: |
+ void ProcessImage(CFX_ByteTextBuf& buf, CPDF_ImageObject* pImageObj); |
+ void ProcessForm(CFX_ByteTextBuf& buf, |
+ const uint8_t* data, |
+ FX_DWORD size, |
+ CFX_Matrix& matrix); |
+ CFX_ByteString RealizeResource(CPDF_Object* pResourceObj, |
+ const FX_CHAR* szType); |
+ |
+ private: |
+ CPDF_Page* m_pPage; |
+ CPDF_Document* m_pDocument; |
+ CFX_PtrArray m_pageObjects; |
}; |
#endif // CORE_INCLUDE_FPDFAPI_FPDF_PAGE_H_ |