Podofo
Podofo
Podofo
0.9.4
1 Main Page 1
2 Pdf3rdPartyForwardDecl.h 3
3 PdfCompilerCompat Header 5
4 (Codingstyle) 7
5 Namespace Index 13
5.1 Namespace List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
6 Hierarchical Index 15
6.1 Class Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
7 Class Index 19
7.1 Class List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
8 File Index 23
8.1 File List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
9 Namespace Documentation 25
9.1 PoDoFo Namespace Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
9.1.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
9.1.2 Enumeration Type Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
9.1.2.1 ELogSeverity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
9.1.2.2 EPdfAcroFormDefaulAppearance . . . . . . . . . . . . . . . . . . . . . . . . . 30
9.1.2.3 EPdfAction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
9.1.2.4 EPdfAlignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
9.1.2.5 EPdfAnnotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
9.1.2.6 EPdfAnnotationFlags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
9.1.2.7 EPdfColorSpace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
9.1.2.8 EPdfContentsType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
9.1.2.9 EPdfDataType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
9.1.2.10 EPdfDestinationType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
iv CONTENTS
9.1.2.11 EPdfError . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
9.1.2.12 EPdfField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
9.1.2.13 EPdfFilter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
9.1.2.14 EPdfFontType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
9.1.2.15 EPdfFunctionType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
9.1.2.16 EPdfHighlightingMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
9.1.2.17 EPdfLineCapStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
9.1.2.18 EPdfLineJoinStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
9.1.2.19 EPdfOutlineFormat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
9.1.2.20 EPdfPageLayout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
9.1.2.21 EPdfPageMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
9.1.2.22 EPdfPageSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
9.1.2.23 EPdfStrokeStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
9.1.2.24 EPdfTextRenderingMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
9.1.2.25 EPdfTilingPatternType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
9.1.2.26 EPdfVersion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
9.1.2.27 EPdfVerticalAlignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
9.1.2.28 EPdfWriteMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
9.1.3 Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
9.1.3.1 PDF_MAX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
9.1.3.2 PDF_MIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
9.1.3.3 PdfLocaleImbue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
9.1.3.4 podofo_calloc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
9.1.3.5 podofo_free . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
9.1.3.6 podofo_is_little_endian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
9.1.3.7 podofo_malloc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
9.1.3.8 podofo_realloc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
9.1.4 Variable Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
9.1.4.1 ePdfVersion_Default . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
10 Class Documentation 39
10.1 PoDoFo::MD5Context Struct Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
10.1.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
10.2 PoDoFo::NamedColorComparatorPredicate Class Reference . . . . . . . . . . . . . . . . . . . . 39
10.2.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
10.3 PoDoFo::PdfVecObjects::Observer Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . 39
10.3.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
10.3.2 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
10.3.2.1 BeginAppendStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
10.3.2.2 EndAppendStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
10.3.2.3 ParentDestructed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
10.4 PoDoFo::PdfAction Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
10.4.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
10.4.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
10.4.2.1 PdfAction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
10.4.2.2 PdfAction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
10.4.2.3 PdfAction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
10.4.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
10.4.3.1 AddToDictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
10.4.3.2 GetType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
10.4.3.3 GetURI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
10.4.3.4 HasURI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
10.4.3.5 SetURI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
10.5 PoDoFo::PdfAnnotation Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
10.5.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
10.5.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
10.5.2.1 PdfAnnotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
10.5.2.2 PdfAnnotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
10.5.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
10.5.3.1 GetAction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
10.5.3.2 GetColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
10.5.3.3 GetContents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
10.5.3.4 GetDestination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
10.5.3.5 GetFileAttachement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
10.5.3.6 GetFlags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
10.5.3.7 GetOpen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
10.5.3.8 GetPage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
10.5.3.9 GetQuadPoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
10.5.3.10 GetRect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
10.5.3.11 GetTitle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
10.5.3.12 GetType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
10.5.3.13 HasAction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
10.5.3.14 HasAppearanceStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
10.5.3.15 HasDestination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
10.5.3.16 HasFileAttachement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
10.5.3.17 SetAction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
10.5.3.18 SetAppearanceStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
10.5.3.19 SetBorderStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
10.5.3.20 SetBorderStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
10.5.3.21 SetColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
10.5.3.22 SetColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
10.5.3.23 SetColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
10.5.3.24 SetColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
10.5.3.25 SetContents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
10.5.3.26 SetDestination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
10.5.3.27 SetFileAttachement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
10.5.3.28 SetFlags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
10.5.3.29 SetOpen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
10.5.3.30 SetQuadPoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
10.5.3.31 SetTitle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
10.6 PoDoFo::PdfArray Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
10.6.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
10.6.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
10.6.2.1 PdfArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
10.6.2.2 PdfArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
10.6.2.3 PdfArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
10.6.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
10.6.3.1 back . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
10.6.3.2 back . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
10.6.3.3 begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
10.6.3.4 begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
10.6.3.5 Clear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
10.6.3.6 ContainsString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
10.6.3.7 empty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
10.6.3.8 end . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
10.6.3.9 end . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
10.6.3.10 front . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
10.6.3.11 front . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
10.6.3.12 GetSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
10.6.3.13 GetStringIndex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
10.6.3.14 IsDirty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
10.6.3.15 operator= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
10.6.3.16 push_back . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
10.6.3.17 rbegin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
10.6.3.18 rbegin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
10.6.3.19 rend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
10.6.3.20 rend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
10.6.3.21 resize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
10.6.3.22 SetDirty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
10.6.3.23 size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
10.6.3.24 Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
10.7 PoDoFo::PdfAscii85Filter Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
10.7.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
10.7.2 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
10.7.2.1 BeginDecodeImpl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
10.7.2.2 BeginEncodeImpl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
10.7.2.3 CanDecode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
10.7.2.4 CanEncode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
10.7.2.5 DecodeBlockImpl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
10.7.2.6 EncodeBlockImpl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
10.7.2.7 EndDecodeImpl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
10.7.2.8 EndEncodeImpl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
10.7.2.9 GetType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
10.8 PoDoFo::PdfAxialShadingPattern Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . 57
10.8.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
10.8.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
10.8.2.1 PdfAxialShadingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
10.8.2.2 PdfAxialShadingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
10.9 PoDoFo::PdfBufferOutputStream Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . 58
10.9.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
10.9.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
10.9.2.1 PdfBufferOutputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
10.9.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
10.9.3.1 Close . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
10.9.3.2 GetLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
10.9.3.3 Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
10.10PoDoFo::PdfCanvas Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
10.10.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
10.10.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
10.10.2.1 ∼PdfCanvas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
10.10.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
10.10.3.1 AddColorResource . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
10.10.3.2 AddResource . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
10.10.3.3 GetContents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
10.10.3.4 GetContentsForAppending . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
10.10.3.5 GetPageSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
10.10.3.6 GetProcSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
10.10.3.7 GetResources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
10.11PoDoFo::PdfCheckBox Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
10.11.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
10.12.3.20GetName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
10.12.3.21GetNameForColorSpace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
10.12.3.22GetRed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
10.12.3.23GetYellow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
10.12.3.24IsCieLab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
10.12.3.25IsCMYK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
10.12.3.26IsGrayScale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
10.12.3.27IsRGB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
10.12.3.28IsSeparation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
10.12.3.29operator"!= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
10.12.3.30operator= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
10.12.3.31operator== . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
10.12.3.32ToArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
10.13PoDoFo::PdfComboBox Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
10.13.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
10.13.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
10.13.2.1 PdfComboBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
10.13.2.2 PdfComboBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
10.13.2.3 PdfComboBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
10.13.2.4 PdfComboBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
10.13.2.5 PdfComboBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
10.13.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
10.13.3.1 IsEditable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
10.13.3.2 SetEditable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
10.14PoDoFo::PdfContents Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
10.14.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
10.14.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
10.14.2.1 PdfContents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
10.14.2.2 PdfContents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
10.14.2.3 PdfContents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
10.14.2.4 PdfContents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
10.14.2.5 ∼PdfContents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
10.14.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
10.14.3.1 GetContents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
10.14.3.2 GetContentsForAppending . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
10.15PoDoFo::PdfContentsTokenizer Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
10.15.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
10.15.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
10.15.2.1 PdfContentsTokenizer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
10.15.2.2 PdfContentsTokenizer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
10.19.2.3 PdfDestination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
10.19.2.4 PdfDestination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
10.19.2.5 PdfDestination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
10.19.2.6 PdfDestination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
10.19.2.7 PdfDestination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
10.19.2.8 PdfDestination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
10.19.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
10.19.3.1 AddToDictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
10.19.3.2 GetArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
10.19.3.3 GetArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
10.19.3.4 GetDValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
10.19.3.5 GetLeft . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
10.19.3.6 GetObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
10.19.3.7 GetObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
10.19.3.8 GetPage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
10.19.3.9 GetPage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
10.19.3.10GetRect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
10.19.3.11GetTop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
10.19.3.12GetType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
10.19.3.13GetZoom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
10.19.3.14operator= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
10.20PoDoFo::PdfDeviceInputStream Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . 89
10.20.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
10.20.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
10.20.2.1 PdfDeviceInputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
10.20.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
10.20.3.1 Read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
10.21PoDoFo::PdfDeviceOutputStream Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . 90
10.21.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
10.21.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
10.21.2.1 PdfDeviceOutputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
10.21.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
10.21.3.1 Close . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
10.21.3.2 Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
10.22PoDoFo::PdfDictionary Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
10.22.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
10.22.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
10.22.2.1 PdfDictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
10.22.2.2 PdfDictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
10.22.2.3 ∼PdfDictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
10.25.3.31GetPagesTree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
10.25.3.32GetPdfVersion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
10.25.3.33GetTrailer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
10.25.3.34GetTrailer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
10.25.3.35GetWriteMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
10.25.3.36InitPagesTree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
10.25.3.37InsertExistingPageAt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
10.25.3.38InsertPage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
10.25.3.39IsAccessibilityAllowed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
10.25.3.40IsCopyAllowed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
10.25.3.41IsDocAssemblyAllowed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
10.25.3.42IsEditAllowed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
10.25.3.43IsEditNotesAllowed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
10.25.3.44IsFillAndSignAllowed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
10.25.3.45IsHighPrintAllowed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
10.25.3.46IsLinearized . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
10.25.3.47IsPrintAllowed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
10.25.3.48SetBaseURI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
10.25.3.49SetBindingDirection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
10.25.3.50SetCatalog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
10.25.3.51SetCenterWindow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
10.25.3.52SetDisplayDocTitle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
10.25.3.53SetFitWindow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
10.25.3.54SetFontConfigWrapper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
10.25.3.55SetHideMenubar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
10.25.3.56SetHideToolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
10.25.3.57SetHideWindowUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
10.25.3.58SetInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
10.25.3.59SetLanguage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
10.25.3.60SetPageLayout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
10.25.3.61SetPageMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
10.25.3.62SetPrintScaling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
10.25.3.63SetTrailer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
10.25.3.64SetUseFullScreen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
10.25.3.65SetViewerPreference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
10.25.3.66SetViewerPreference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
10.26PoDoFo::PdfElement Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
10.26.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
10.26.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
10.26.2.1 PdfElement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
10.31.4.16IsEditNotesAllowed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
10.31.4.17IsEncryptionEnabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
10.31.4.18IsFillAndSignAllowed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
10.31.4.19IsHighPrintAllowed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
10.31.4.20IsPrintAllowed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
10.31.4.21SetCurrentReference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
10.31.4.22SetEnabledEncryptionAlgorithms . . . . . . . . . . . . . . . . . . . . . . . . . 141
10.32PoDoFo::PdfEncryptAESBase Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
10.32.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
10.33PoDoFo::PdfEncryptAESV2 Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
10.33.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
10.33.2 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
10.33.2.1 Authenticate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
10.33.2.2 CreateEncryptionInputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
10.33.2.3 CreateEncryptionOutputStream . . . . . . . . . . . . . . . . . . . . . . . . . . 143
10.33.2.4 GenerateEncryptionKey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
10.34PoDoFo::PdfEncryptRC4 Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
10.34.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
10.34.2 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
10.34.2.1 Authenticate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
10.34.2.2 CreateEncryptionInputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
10.34.2.3 CreateEncryptionOutputStream . . . . . . . . . . . . . . . . . . . . . . . . . . 144
10.34.2.4 GenerateEncryptionKey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
10.35PoDoFo::PdfEncryptRC4Base Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
10.35.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
10.36PoDoFo::PdfError Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
10.36.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
10.36.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
10.36.2.1 PdfError . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
10.36.2.2 PdfError . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
10.36.2.3 PdfError . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
10.36.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
10.36.3.1 AddToCallstack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
10.36.3.2 DebugEnabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
10.36.3.3 DebugMessage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
10.36.3.4 EnableDebug . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
10.36.3.5 EnableLogging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
10.36.3.6 ErrorMessage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
10.36.3.7 ErrorName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
10.36.3.8 GetCallstack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
10.49.3.20SetFontCharSpace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
10.49.3.21SetFontScale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
10.49.3.22SetFontSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
10.49.3.23SetItalic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
10.49.3.24SetStrikeOut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
10.49.3.25SetUnderlined . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
10.49.3.26SetWordSpace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
10.49.3.27WriteStringToStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
10.50PoDoFo::PdfFontCache Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
10.50.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
10.50.2 Member Enumeration Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
10.50.2.1 EFontCreationFlags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
10.50.3 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
10.50.3.1 PdfFontCache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
10.50.3.2 PdfFontCache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
10.50.3.3 ∼PdfFontCache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
10.50.4 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
10.50.4.1 EmbedSubsetFonts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
10.50.4.2 EmptyCache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
10.50.4.3 GetDuplicateFontType1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
10.50.4.4 GetFont . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
10.50.4.5 GetFont . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
10.50.4.6 GetFont . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
10.50.4.7 GetFontLibrary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
10.50.4.8 GetFontSubset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
10.50.4.9 SetFontConfigWrapper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
10.51PoDoFo::PdfFontCID Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
10.51.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
10.51.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
10.51.2.1 PdfFontCID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
10.51.2.2 PdfFontCID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
10.51.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
10.51.3.1 AddUsedSubsettingGlyphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
10.51.3.2 EmbedFont . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
10.51.3.3 EmbedFont . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
10.51.3.4 EmbedSubsetFont . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
10.51.3.5 Init . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
10.51.3.6 SetBold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
10.51.3.7 SetItalic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
10.52PoDoFo::PdfFontConfigWrapper Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . 190
10.54.2.25GetStrikeoutThickness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
10.54.2.26GetStrikeoutThicknessMM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
10.54.2.27GetSubsetFontnamePrefix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
10.54.2.28GetUnderlinePosition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
10.54.2.29GetUnderlinePositionMM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
10.54.2.30GetUnderlineThickness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
10.54.2.31GetUnderlineThicknessMM . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
10.54.2.32GetWeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
10.54.2.33GetWidthArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
10.54.2.34GetWordSpace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
10.54.2.35IsSymbol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
10.54.2.36SetFontCharSpace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
10.54.2.37SetFontScale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
10.54.2.38SetFontSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
10.54.2.39SetFontType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
10.54.2.40SetWordSpace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
10.54.2.41StringWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
10.54.2.42StringWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
10.54.2.43StringWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
10.54.2.44StringWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
10.54.2.45StringWidthMM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
10.54.2.46StringWidthMM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
10.54.2.47StringWidthMM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
10.54.2.48UnicodeCharWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
10.55PoDoFo::PdfFontSimple Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
10.55.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
10.55.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
10.55.2.1 PdfFontSimple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
10.55.2.2 PdfFontSimple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
10.55.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
10.55.3.1 EmbedFont . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
10.55.3.2 EmbedFontFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
10.55.3.3 Init . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
10.56PoDoFo::PdfFontTrueType Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
10.56.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
10.56.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
10.56.2.1 PdfFontTrueType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
10.56.2.2 PdfFontTrueType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
10.57PoDoFo::PdfFontTTFSubset Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
10.57.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
10.65.3.12SetImageSoftmask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
10.65.3.13SetInterpolate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
10.66PoDoFo::PdfImmediateWriter Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
10.66.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
10.66.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
10.66.2.1 PdfImmediateWriter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
10.66.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
10.66.3.1 GetPdfVersion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
10.66.3.2 GetWriteMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
10.67PoDoFo::PdfInfo Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
10.67.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
10.67.2 Member Enumeration Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
10.67.2.1 EPdfInfoInitial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
10.67.3 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
10.67.3.1 PdfInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
10.67.3.2 PdfInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
10.67.3.3 ∼PdfInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
10.67.4 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
10.67.4.1 GetAuthor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
10.67.4.2 GetCreationDate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
10.67.4.3 GetCreator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
10.67.4.4 GetKeywords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
10.67.4.5 GetModDate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
10.67.4.6 GetProducer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
10.67.4.7 GetSubject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
10.67.4.8 GetTitle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
10.67.4.9 GetTrapped . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
10.67.4.10SetAuthor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
10.67.4.11SetCreator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
10.67.4.12SetCustomKey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
10.67.4.13SetKeywords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
10.67.4.14SetProducer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
10.67.4.15SetSubject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
10.67.4.16SetTitle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
10.67.4.17SetTrapped . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
10.68PoDoFo::PdfInputDevice Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
10.68.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
10.68.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
10.68.2.1 PdfInputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
10.68.2.2 PdfInputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
10.75.3.39SetEncrypted . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
10.75.3.40SetPassword . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
10.75.3.41SetPdfVersion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
10.75.3.42SetWriteMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
10.75.3.43Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
10.75.3.44Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
10.76PoDoFo::PdfMemoryInputStream Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . 255
10.76.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
10.76.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
10.76.2.1 PdfMemoryInputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
10.76.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
10.76.3.1 Read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
10.77PoDoFo::PdfMemoryOutputStream Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . 256
10.77.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
10.77.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
10.77.2.1 PdfMemoryOutputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
10.77.2.2 PdfMemoryOutputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
10.77.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
10.77.3.1 Close . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
10.77.3.2 GetLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
10.77.3.3 TakeBuffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
10.77.3.4 Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
10.78PoDoFo::PdfMemStream Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
10.78.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
10.78.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
10.78.2.1 PdfMemStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
10.78.2.2 PdfMemStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
10.78.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
10.78.3.1 AppendImpl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
10.78.3.2 BeginAppendImpl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
10.78.3.3 Empty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
10.78.3.4 EndAppendImpl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
10.78.3.5 FlateCompress . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
10.78.3.6 Get . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
10.78.3.7 GetCopy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
10.78.3.8 GetCopy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
10.78.3.9 GetInternalBuffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
10.78.3.10GetInternalBufferSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
10.78.3.11GetLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
10.78.3.12operator= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
10.78.3.13Uncompress . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
10.78.3.14Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
10.79PoDoFo::Util::PdfMutexImpl Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
10.79.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
10.79.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
10.79.2.1 PdfMutexImpl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
10.79.2.2 PdfMutexImpl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
10.79.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
10.79.3.1 Lock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
10.79.3.2 Lock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
10.79.3.3 Lock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
10.79.3.4 TryLock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
10.79.3.5 TryLock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
10.79.3.6 TryLock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
10.79.3.7 UnLock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
10.79.3.8 UnLock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
10.79.3.9 UnLock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
10.80PoDoFo::Util::PdfMutexWrapper Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . 264
10.80.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
10.80.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
10.80.2.1 PdfMutexWrapper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
10.80.2.2 ∼PdfMutexWrapper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
10.81PoDoFo::PdfName Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
10.81.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
10.81.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
10.81.2.1 PdfName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
10.81.2.2 PdfName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
10.81.2.3 PdfName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
10.81.2.4 PdfName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
10.81.2.5 PdfName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
10.81.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
10.81.3.1 FromEscaped . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
10.81.3.2 FromEscaped . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
10.81.3.3 GetEscapedName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
10.81.3.4 GetLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
10.81.3.5 GetName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
10.81.3.6 operator"!= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
10.81.3.7 operator"!= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
10.81.3.8 operator< . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
10.81.3.9 operator= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
10.81.3.10operator== . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
10.81.3.11operator== . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
10.81.3.12operator== . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
10.81.3.13Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
10.82PoDoFo::PdfNamedColor Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
10.82.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
10.82.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
10.82.2.1 PdfNamedColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
10.82.2.2 PdfNamedColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
10.82.2.3 PdfNamedColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
10.82.2.4 ∼PdfNamedColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
10.82.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
10.82.3.1 GetColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
10.82.3.2 GetName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
10.82.3.3 operator< . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
10.82.3.4 operator< . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
10.82.3.5 operator== . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
10.83PoDoFo::PdfObject Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
10.83.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
10.83.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
10.83.2.1 PdfObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
10.83.2.2 PdfObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
10.83.2.3 PdfObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
10.83.2.4 PdfObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
10.83.2.5 PdfObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
10.83.2.6 PdfObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
10.83.2.7 PdfObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
10.83.2.8 PdfObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
10.83.2.9 PdfObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
10.83.2.10PdfObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
10.83.2.11PdfObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
10.83.2.12PdfObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
10.83.2.13PdfObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
10.83.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
10.83.3.1 DelayedStreamLoad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
10.83.3.2 DelayedStreamLoadImpl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
10.83.3.3 EnableDelayedStreamLoading . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
10.83.3.4 FlateCompressStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
10.83.3.5 GetByteOffset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
10.83.3.6 GetIndirectKey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
10.85.3.16Next . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
10.85.3.17Prev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
10.85.3.18SetAction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
10.85.3.19SetDestination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
10.85.3.20SetTextColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
10.85.3.21SetTextFormat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
10.85.3.22SetTitle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
10.86PoDoFo::PdfOutlines Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
10.86.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
10.86.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
10.86.2.1 PdfOutlines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
10.86.2.2 PdfOutlines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
10.86.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
10.86.3.1 CreateRoot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
10.87PoDoFo::PdfOutputDevice Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
10.87.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
10.87.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
10.87.2.1 PdfOutputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
10.87.2.2 PdfOutputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
10.87.2.3 PdfOutputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
10.87.2.4 PdfOutputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
10.87.2.5 PdfOutputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
10.87.2.6 ∼PdfOutputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
10.87.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
10.87.3.1 Flush . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
10.87.3.2 GetLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
10.87.3.3 Print . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
10.87.3.4 PrintV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
10.87.3.5 PrintVLen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
10.87.3.6 Read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
10.87.3.7 Seek . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
10.87.3.8 Tell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
10.87.3.9 Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
10.88PoDoFo::PdfOutputStream Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
10.88.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
10.88.2 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
10.88.2.1 Close . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
10.88.2.2 Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
10.88.2.3 Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
10.89PoDoFo::PdfPage Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
10.92.3.13DrawImage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
10.92.3.14DrawLine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
10.92.3.15DrawMultiLineText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
10.92.3.16DrawMultiLineText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314
10.92.3.17DrawText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314
10.92.3.18DrawText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314
10.92.3.19DrawTextAligned . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
10.92.3.20DrawXObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
10.92.3.21Ellipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
10.92.3.22EndPath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
10.92.3.23EndText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
10.92.3.24ExpandTabs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
10.92.3.25Fill . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
10.92.3.26FillAndStroke . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
10.92.3.27FinishPage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
10.92.3.28GetCanvas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
10.92.3.29GetCurrentPath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
10.92.3.30GetFont . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
10.92.3.31GetMultiLineTextAsLines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
10.92.3.32GetPage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
10.92.3.33GetPrecision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
10.92.3.34GetTabWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
10.92.3.35GetTextRenderingMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
10.92.3.36HorizontalLineTo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
10.92.3.37LineTo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
10.92.3.38MoveTextPos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
10.92.3.39MoveTo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
10.92.3.40QuadCurveTo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
10.92.3.41Rectangle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
10.92.3.42Rectangle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
10.92.3.43Restore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
10.92.3.44Save . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
10.92.3.45SetClipRect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
10.92.3.46SetClipRect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
10.92.3.47SetColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
10.92.3.48SetColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
10.92.3.49SetColorCMYK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
10.92.3.50SetCurrentStrokingColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
10.92.3.51SetExtGState . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
10.92.3.52SetFont . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
10.92.3.53SetGray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
10.92.3.54SetLineCapStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
10.92.3.55SetLineJoinStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
10.92.3.56SetMiterLimit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
10.92.3.57SetPage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
10.92.3.58SetPrecision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
10.92.3.59SetRenderingIntent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
10.92.3.60SetShadingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
10.92.3.61SetStrokeStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
10.92.3.62SetStrokeWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
10.92.3.63SetStrokingColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
10.92.3.64SetStrokingColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
10.92.3.65SetStrokingColorCMYK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
10.92.3.66SetStrokingGray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
10.92.3.67SetStrokingShadingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
10.92.3.68SetStrokingTilingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
10.92.3.69SetStrokingTilingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
10.92.3.70SetTabWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
10.92.3.71SetTextRenderingMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
10.92.3.72SetTilingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
10.92.3.73SetTilingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
10.92.3.74SetTransformationMatrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
10.92.3.75SmoothCurveTo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
10.92.3.76SmoothQuadCurveTo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
10.92.3.77Stroke . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
10.92.3.78VerticalLineTo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
10.92.4 Member Data Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
10.92.4.1 m_curColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
10.92.4.2 m_curPath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
10.92.4.3 m_isTextOpen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
10.92.4.4 m_nTabWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
10.92.4.5 m_oss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
10.92.4.6 m_pCanvas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
10.92.4.7 m_pFont . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
10.92.4.8 m_pPage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
10.93PoDoFo::PdfPainterMM Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
10.93.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
10.93.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
10.93.2.1 PdfPainterMM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
10.93.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
10.94.3.22ParseFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
10.94.3.23QuickEncryptedCheck . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
10.94.3.24ReadDocumentStructure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
10.94.3.25ReadObjectFromStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
10.94.3.26ReadObjects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
10.94.3.27ReadObjectsInternal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
10.94.3.28ReadTrailer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
10.94.3.29ReadXRef . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
10.94.3.30ReadXRefContents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
10.94.3.31ReadXRefStreamContents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
10.94.3.32ReadXRefSubsection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
10.94.3.33SetIgnoreBrokenObjects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
10.94.3.34SetMaxObjectCount . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
10.94.3.35SetPassword . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
10.94.3.36SetStrictParsing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
10.94.3.37TakeEncrypt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
10.95PoDoFo::PdfParserObject Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
10.95.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
10.95.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
10.95.2.1 PdfParserObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
10.95.2.2 PdfParserObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
10.95.3 Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
10.95.3.1 DelayedLoadImpl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
10.95.3.2 DelayedStreamLoadImpl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
10.95.3.3 FreeObjectMemory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
10.95.3.4 HasStreamToParse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
10.95.3.5 IsLoadOnDemand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
10.95.3.6 ParseFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
10.95.3.7 ParseStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
10.95.3.8 SetLoadOnDemand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
10.95.3.9 SetObjectNumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
10.96PoDoFo::PdfPredictorDecoder Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
10.96.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
10.97PoDoFo::PdfPushButton Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
10.97.1 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
10.97.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
10.97.2.1 PdfPushButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
10.97.2.2 PdfPushButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
10.97.2.3 PdfPushButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
10.97.2.4 PdfPushButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
10.100.3.1GetBuffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
10.100.3.2GetSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
10.100.3.3operator< . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
10.100.3.4operator= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
10.100.3.5operator== . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
10.100.3.6operator> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
10.100.3.7Resize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
10.100.3.8SetTakePossesion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
10.100.3.9TakePossesion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
10.101
PoDoFo::PdfRefCountedInputDevice Class Reference . . . . . . . . . . . . . . . . . . . . . . . . 357
10.101.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
10.101.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
10.101.2.1PdfRefCountedInputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
10.101.2.2PdfRefCountedInputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
10.101.2.3PdfRefCountedInputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
10.101.2.4PdfRefCountedInputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
10.101.2.5PdfRefCountedInputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
10.101.2.6∼PdfRefCountedInputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
10.101.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
10.101.3.1Device . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
10.101.3.2operator= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
10.102
PoDoFo::PdfReference Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
10.102.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
10.102.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
10.102.2.1PdfReference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
10.102.2.2PdfReference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
10.102.2.3PdfReference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
10.102.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
10.102.3.1GenerationNumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
10.102.3.2IsIndirect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
10.102.3.3ObjectNumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
10.102.3.4operator"!= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
10.102.3.5operator< . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
10.102.3.6operator= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
10.102.3.7operator== . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
10.102.3.8SetGenerationNumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
10.102.3.9SetObjectNumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
10.102.3.10
ToString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
10.102.3.11
Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
10.103
PoDoFo::PdfRLEFilter Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
10.107.2.6Print . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
10.107.2.7Read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
10.107.2.8ReadForSignature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
10.107.2.9Seek . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
10.107.2.10
SetSignature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
10.107.2.11
SetSignatureSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372
10.107.2.12
Tell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
10.107.2.13
Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
10.108
PoDoFo::PdfSimpleEncoding Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
10.108.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
10.108.2Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
10.108.2.1AddToDictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
10.108.2.2ConvertToEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
10.108.2.3ConvertToUnicode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375
10.108.2.4GetCharCode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375
10.108.2.5GetID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375
10.108.2.6GetName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
10.108.2.7GetToUnicodeTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
10.108.2.8IsAutoDelete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
10.108.2.9IsSingleByteEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
10.109
PoDoFo::PdfSimpleTableModel Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
10.109.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
10.109.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
10.109.2.1PdfSimpleTableModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
10.109.2.2PdfSimpleTableModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
10.109.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
10.109.3.1GetAlignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
10.109.3.2GetBackgroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
10.109.3.3GetBorderColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
10.109.3.4GetBorderWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
10.109.3.5GetFont . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
10.109.3.6GetForegroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
10.109.3.7GetImage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
10.109.3.8GetText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
10.109.3.9GetVerticalAlignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
10.109.3.10
HasBackgroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
10.109.3.11
HasBorders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
10.109.3.12
HasImage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
10.109.3.13
HasWordWrap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
10.109.3.14
SetAlignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
10.109.3.15
SetAlignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
10.109.3.16
SetBackgroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
10.109.3.17
SetBackgroundEnabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
10.109.3.18
SetBorderEnabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
10.109.3.19
SetBorderWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
10.109.3.20
SetFont . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
10.109.3.21
SetForegroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
10.109.3.22
SetText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
10.109.3.23
SetWordWrapEnabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
10.110
PoDoFo::PdfStandardEncoding Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
10.110.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
10.110.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
10.110.2.1PdfStandardEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
10.110.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
10.110.3.1GetToUnicodeTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
10.111
PoDoFo::PdfStitchingFunction Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
10.111.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
10.111.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
10.111.2.1PdfStitchingFunction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
10.111.2.2PdfStitchingFunction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
10.112
PoDoFo::PdfStream Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
10.112.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
10.112.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
10.112.2.1PdfStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
10.112.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
10.112.3.1Append . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
10.112.3.2Append . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
10.112.3.3Append . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
10.112.3.4AppendImpl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
10.112.3.5BeginAppend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
10.112.3.6BeginAppend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
10.112.3.7BeginAppendImpl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
10.112.3.8EndAppend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
10.112.3.9EndAppendImpl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
10.112.3.10
GetCopy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
10.112.3.11
GetCopy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
10.112.3.12
GetFilteredCopy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
10.112.3.13
GetFilteredCopy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
10.112.3.14
GetInternalBuffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
10.112.3.15
GetInternalBufferSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
10.112.3.16
GetLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
10.112.3.17
IsAppending . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
10.112.3.18
operator= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
10.112.3.19
Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
10.112.3.20
Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
10.112.3.21
Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
10.112.3.22
Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
10.112.3.23
Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
10.112.3.24
SetRawData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
10.112.3.25
Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
10.113
PoDoFo::PdfStreamedDocument Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . 394
10.113.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
10.113.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
10.113.2.1PdfStreamedDocument . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
10.113.2.2PdfStreamedDocument . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
10.113.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
10.113.3.1Close . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
10.113.3.2GetPdfVersion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
10.113.3.3GetWriteMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
10.113.3.4IsAccessibilityAllowed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
10.113.3.5IsCopyAllowed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
10.113.3.6IsDocAssemblyAllowed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
10.113.3.7IsEditAllowed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
10.113.3.8IsEditNotesAllowed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
10.113.3.9IsFillAndSignAllowed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
10.113.3.10
IsHighPrintAllowed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
10.113.3.11
IsLinearized . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
10.113.3.12
IsPrintAllowed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
10.114
PoDoFo::PdfString Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
10.114.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
10.114.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
10.114.2.1PdfString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
10.114.2.2PdfString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
10.114.2.3PdfString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
10.114.2.4PdfString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
10.114.2.5PdfString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
10.114.2.6PdfString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
10.114.2.7PdfString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
10.114.2.8PdfString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
10.114.2.9PdfString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
10.114.2.10
PdfString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
10.114.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
10.114.3.1GetBuffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
10.114.3.2GetCharacterLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
10.114.3.3GetLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
10.114.3.4GetString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
10.114.3.5GetStringUtf8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
10.114.3.6GetUnicode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
10.114.3.7GetUnicodeLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
10.114.3.8IsHex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
10.114.3.9IsUnicode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
10.114.3.10
IsValid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
10.114.3.11
operator"!= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
operator< . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
10.114.3.12
10.114.3.13
operator= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
10.114.3.14
operator== . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
operator> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
10.114.3.15
10.114.3.16
SetHexData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
10.114.3.17
ToUnicode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
10.114.3.18
Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
10.115
PoDoFo::PdfSymbolEncoding Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
10.115.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
10.115.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
10.115.2.1PdfSymbolEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
10.115.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
10.115.3.1GetToUnicodeTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
10.116
PoDoFo::PdfTable Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
10.116.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
10.116.2Member Typedef Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
10.116.2.1CreatePageCallback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
10.116.3Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
10.116.3.1PdfTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
10.116.4Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
10.116.4.1CalculateTableSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
10.116.4.2CheckForNewPage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
10.116.4.3Draw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
10.116.4.4DrawHorizontalBorders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
10.116.4.5GetAutoPageBreak . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
10.116.4.6GetCols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
10.116.4.7GetHeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410
10.116.4.8GetModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
10.116.4.9GetRows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
10.116.4.10
GetWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
10.116.4.11
SetAutoPageBreak . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
10.116.4.12
SetColumnWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
10.116.4.13
SetColumnWidths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
10.116.4.14
SetModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
10.116.4.15
SetRowHeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
10.116.4.16
SetRowHeights . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
10.116.4.17
SetTableHeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
10.116.4.18
SetTableWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
10.117
PoDoFo::PdfTableModel Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
10.117.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
10.117.2Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
10.117.2.1GetAlignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
10.117.2.2GetBackgroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
10.117.2.3GetBorderColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
10.117.2.4GetBorderWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
10.117.2.5GetFont . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
10.117.2.6GetForegroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
10.117.2.7GetImage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
10.117.2.8GetText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
10.117.2.9GetVerticalAlignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
10.117.2.10
HasBackgroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
10.117.2.11
HasBorders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
10.117.2.12
HasImage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
10.117.2.13
HasWordWrap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
10.118
PoDoFo::PdfTextField Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
10.118.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
10.118.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
10.118.2.1PdfTextField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
10.118.2.2PdfTextField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
10.118.2.3PdfTextField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
10.118.2.4PdfTextField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
10.118.2.5PdfTextField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
10.118.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
10.118.3.1GetMaxLen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
10.118.3.2GetText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
10.118.3.3IsCombs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
10.118.3.4IsFileField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
10.118.3.5IsMultiLine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
10.118.3.6IsPasswordField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
10.118.3.7IsRichText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
10.118.3.8IsScrollBarsEnabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
10.118.3.9IsSpellcheckingEnabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
10.118.3.10
SetCombs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
10.118.3.11
SetFileField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
10.118.3.12
SetMaxLen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
10.118.3.13
SetMultiLine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
10.118.3.14
SetPasswordField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
10.118.3.15
SetRichText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
10.118.3.16
SetScrollBarsEnabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
10.118.3.17
SetSpellcheckingEnabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
10.118.3.18
SetText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
10.119
PoDoFo::PdfTilingPattern Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
10.119.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
10.119.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
10.119.2.1PdfTilingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
10.119.2.2PdfTilingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
10.119.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
10.119.3.1GetIdentifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
10.120
PoDoFo::PdfTokenizer Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
10.120.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
10.120.2Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
10.120.2.1DetermineDataType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
10.120.2.2GetHexValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
10.120.2.3GetNextNumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
10.120.2.4GetNextToken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
10.120.2.5GetNextVariant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
10.120.2.6GetNextVariant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
10.120.2.7IsDelimiter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
10.120.2.8IsNextToken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
10.120.2.9IsPrintable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
10.120.2.10
IsRegular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
10.120.2.11
IsWhitespace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
10.120.2.12
QuequeToken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426
10.120.2.13
ReadArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426
10.120.2.14
ReadDictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426
10.120.2.15
ReadHexString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426
10.120.2.16
ReadName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426
10.120.2.17
ReadString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427
10.120.3Member Data Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427
10.120.3.1HEX_NOT_FOUND . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427
10.121
PoDoFo::PdfTriangleShadingPattern Class Reference . . . . . . . . . . . . . . . . . . . . . . . . 427
10.121.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427
10.121.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 427
10.121.2.1PdfTriangleShadingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428
10.121.2.2PdfTriangleShadingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
10.122
PoDoFo::NonPublic::PdfTTFWriter Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . 429
10.122.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
10.122.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
10.122.2.1PdfTTFWriter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
10.122.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
10.122.3.1Read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
10.122.3.2Subset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
10.122.3.3Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
10.123
PoDoFo::PdfType1Encrypt Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
10.123.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
10.123.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
10.123.2.1PdfType1Encrypt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
10.123.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
10.123.3.1Decrypt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
10.123.3.2Encrypt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
10.124
PoDoFo::PdfVariant Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
10.124.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
10.124.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
10.124.2.1PdfVariant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
10.124.2.2PdfVariant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
10.124.2.3PdfVariant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
10.124.2.4PdfVariant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
10.124.2.5PdfVariant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
10.124.2.6PdfVariant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
10.124.2.7PdfVariant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
10.124.2.8PdfVariant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
10.124.2.9PdfVariant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
10.124.2.10
PdfVariant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
10.124.2.11
PdfVariant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
10.124.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
10.124.3.1AssertMutable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
10.124.3.2Clear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
10.124.3.3DelayedLoad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
10.124.3.4DelayedLoadDone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
10.124.3.5DelayedLoadImpl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
10.124.3.6EnableDelayedLoading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436
10.124.3.7GetArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436
10.124.3.8GetArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436
10.124.3.9GetArray_NoDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436
10.124.3.10
GetArray_NoDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436
10.124.3.11
GetBool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436
10.124.3.12
GetDataType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436
10.124.3.13
GetDataTypeString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
10.124.3.14
GetDictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
10.124.3.15
GetDictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
10.124.3.16
GetDictionary_NoDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
10.124.3.17
GetDictionary_NoDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
10.124.3.18
GetImmutable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
10.124.3.19
GetName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
10.124.3.20
GetNumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
10.124.3.21
GetRawData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
10.124.3.22
GetRawData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
10.124.3.23
GetReal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
10.124.3.24
GetReference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
10.124.3.25
GetString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
10.124.3.26
IsArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
10.124.3.27
IsBool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
10.124.3.28
IsDictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
10.124.3.29
IsDirty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
10.124.3.30
IsEmpty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
10.124.3.31
IsHexString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
10.124.3.32
IsName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
10.124.3.33
IsNull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
10.124.3.34
IsNumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
10.124.3.35
IsRawData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
10.124.3.36
IsReal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
10.124.3.37
IsReference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
10.124.3.38
IsString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
10.124.3.39
operator"!= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
10.124.3.40
operator= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
10.124.3.41
operator== . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
10.124.3.42
SetBool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
10.124.3.43
SetDirty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441
10.124.3.44
SetImmutable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441
10.124.3.45
SetNumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441
10.124.3.46
SetReal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441
10.124.3.47
ToString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442
10.124.3.48
Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443
10.124.3.49
Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443
10.125
PoDoFo::PdfVecObjects Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443
10.125.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
10.125.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
10.125.2.1PdfVecObjects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
10.125.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
10.125.3.1AddFreeObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
10.125.3.2Attach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
10.125.3.3AutoDelete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
10.125.3.4begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
10.125.3.5begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
10.125.3.6BeginAppendStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
10.125.3.7Clear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
10.125.3.8CollectGarbage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446
10.125.3.9CreateObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
10.125.3.10
CreateObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
10.125.3.11
CreateStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
10.125.3.12
CreateStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
10.125.3.13
Detach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
10.125.3.14
end . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
10.125.3.15
end . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
10.125.3.16
EndAppendStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
10.125.3.17
Finish . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
10.125.3.18
GetBack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
10.125.3.19
GetFreeObjects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
10.125.3.20
GetIndex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
10.125.3.21
GetNextSubsetPrefix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449
10.125.3.22
GetObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449
10.125.3.23
GetObjectCount . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449
10.125.3.24
GetObjectDependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449
10.125.3.25
GetParentDocument . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449
10.125.3.26
GetSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449
10.125.3.27
insert_sorted . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
10.125.3.28
push_back . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
10.125.3.29
RemoveObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
10.125.3.30
RemoveObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
10.125.3.31
RenumberObjects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
10.125.3.32
Reserve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
10.125.3.33
SetAutoDelete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
10.125.3.34
SetObjectCount . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
10.125.3.35
SetParentDocument . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
10.125.3.36
SetStreamFactory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
10.125.3.37
Sort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
10.125.3.38
WriteObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
10.126
PoDoFo::PdfWin1250Encoding Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
10.126.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
10.126.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
10.126.2.1PdfWin1250Encoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
10.126.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
10.126.3.1GetToUnicodeTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
10.127
PoDoFo::PdfWinAnsiEncoding Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
10.127.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
10.127.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
10.127.2.1PdfWinAnsiEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
10.127.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
10.127.3.1AddToDictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
10.127.3.2GetToUnicodeTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
10.128
PoDoFo::PdfWriter Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
10.128.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
10.128.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
10.128.2.1PdfWriter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
10.128.2.2PdfWriter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
10.128.2.3PdfWriter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
10.128.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
10.128.3.1CreateFileIdentifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
10.128.3.2CreateLinearizationDictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
10.128.3.3FillTrailerObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
10.128.3.4GetByteOffset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
10.128.3.5GetEncrypted . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
10.128.3.6GetLinearized . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
10.128.3.7GetPdfVersion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
10.128.3.8GetPdfVersionString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
10.128.3.9GetUseXRefStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
10.128.3.10
GetWriteMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
10.128.3.11
SetEncrypted . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
10.128.3.12
SetLinearized . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
10.128.3.13
SetPdfVersion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
10.128.3.14
SetUseXRefStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
10.128.3.15
SetWriteMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461
10.128.3.16
Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461
10.128.3.17
Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461
10.128.3.18
WriteLinearized . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461
10.128.3.19
WritePdfHeader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461
10.128.3.20
WritePdfObjects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461
10.128.3.21
WriteToBuffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
10.128.4Member Data Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
10.128.4.1m_vecObjects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
10.129
PoDoFo::PdfXObject Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
10.129.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
10.129.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
10.129.2.1PdfXObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
10.129.2.2PdfXObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
10.129.2.3PdfXObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
10.129.2.4PdfXObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
10.129.2.5PdfXObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
10.129.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
10.129.3.1GetContents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
10.129.3.2GetContentsForAppending . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
10.129.3.3GetIdentifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
10.129.3.4GetObjectReference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
10.129.3.5GetPageSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
10.129.3.6GetResources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
10.130
PoDoFo::PdfXRef Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
10.130.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
10.130.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
10.130.2.1PdfXRef . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
10.130.2.2∼PdfXRef . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
10.130.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
10.130.3.1AddObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
10.130.3.2BeginWrite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
10.130.3.3EndWrite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467
10.130.3.4GetOffset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467
10.130.3.5GetSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467
10.130.3.6SetFirstEmptyBlock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467
10.130.3.7Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467
10.130.3.8WriteSubSection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467
10.130.3.9WriteXRefEntry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468
10.131
PoDoFo::PdfXRefStream Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
10.131.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
10.131.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
10.131.2.1PdfXRefStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
10.131.2.2∼PdfXRefStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
10.131.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
10.131.3.1BeginWrite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
10.131.3.2EndWrite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
10.131.3.3GetOffset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
10.131.3.4WriteSubSection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
10.131.3.5WriteXRefEntry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
10.132
PoDoFo::PdfXRefStreamParserObject Class Reference . . . . . . . . . . . . . . . . . . . . . . . 471
10.132.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
10.132.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
10.132.2.1PdfXRefStreamParserObject . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
10.132.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
10.132.3.1GetPreviousOffset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
10.132.3.2HasPrevious . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
10.133
PoDoFo::PdfZapfDingbatsEncoding Class Reference . . . . . . . . . . . . . . . . . . . . . . . . 472
10.133.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
10.133.2Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
10.133.2.1PdfZapfDingbatsEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
10.133.3Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
10.133.3.1GetToUnicodeTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
10.134
PoDoFo::PdfVecObjects::StreamFactory Class Reference . . . . . . . . . . . . . . . . . . . . . . 473
10.134.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
10.134.2Member Function Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
10.134.2.1CreateStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
10.135
PoDoFo::TFontCacheElement Struct Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
10.135.1Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474
Index 481
Main Page
PoDoFo is a library to work with the PDF file format and includes also a few tools. The name comes from the first
letter of PDF (Portable Document Format).
The PoDoFo library is a free portable C++ library which includes classes to parse a PDF file and modify its contents
into memory. The changes can be written back to disk easily. The parser could also be used to write a PDF
viewer. Besides parsing PoDoFo includes also very simple classes to create your own PDF files. All classes are
documented so it is easy to start writing your own application using PoDoFo.
The PoDoFo tools are simple tools build around the PoDoFo library. These tools are first of all examples on how
to use the PoDoFo library in your own projects. But secondly they offer also features for working with PDF files.
More tools will come with future release and the existing tools will gain more features. Currently there are two tools:
podofoimgextract (which extracts all jpeg images from a given PDF file) and podofouncompress (which removes all
compression filters from a PDF file - this is useful for debugging existing PDF files).
Additionally there is the external tool PoDoFoBrowser which is not included in this package, but can be downloaded
from the PoDoFo webpage. PoDoFoBrowser is a Qt application for browsing the objects in a PDF file and modifying
their keys easily. It is very useful if you want to look on the internal structure of PDF files.
As of now PoDoFo is available for Unix, Mac OS X and Windows platforms.
More information can be found at: http://podofo.sourceforge.net
PoDoFo is created by Dominik Seichter domseichter@web.de, Leonard Rosenthol leonardr@pdfsages.←-
com and Craig Ringer craig@postnewspapers.com.au
2 Main Page
Pdf3rdPartyForwardDecl.h
Forward declare some types that we use in our public API but don't want to include the headers for directly. We
can't do a nice simple forward declaration because most of these libraries have typedefs everywhere.
We don't want to include things like freetype directly in our public headers because:
• They dump a huge amount of cruft into the top level namespace
• Programs that haven't gone through the apallingly convoluted process required to add freetype's header path
can't include podofo's headers even if they have no intention of using any freetype-related font features.
4 Pdf3rdPartyForwardDecl.h
PdfCompilerCompat Header
PdfCompilerCompat.h gathers up nastyness required for various compiler compatibility into a central place. All
compiler-specific defines, wrappers, and the like should be included here and (if necessary) in PdfCompiler←-
Compat.cpp if they must be visible to public users of the library.
If the nasty platform and compiler specific hacks can be kept to PoDoFo's build and need not be visible to users of
the library, put them in PdfCompilerCompatPrivate.{cpp,h} instead.
Please NEVER use symbols from this header or the PoDoFo::compat namespace in a "using" directive. Always
explicitly reference names so it's clear that you're pulling them from the compat cruft.
PdfCompilerCompatPrivate.h gathers up nastyness required for various compiler compatibility into a central place.
All compiler-specific defines, wrappers, and the like should be included here and (if necessary) in PdfCompiler←-
CompatPrivate.cpp. If the must be visible to library users they're put in PdfCompilerCompat.{cpp,h} instead.
PdfCompilerCompatPrivate.h is private to PoDoFo's build process. It is not used by library clients, the tools, or the
unit tests. It is not installed with PoDoFo and must never be visible in the public headers.
Include PdfCompilerCompatPrivate.h in your .cpp sources, preferably after including other PoDoFo headers.
Please NEVER use symbols from this header or the PoDoFo::compat namespace in a "using" directive. Always
explicitly reference names so it's clear that you're pulling them from the compat cruft.
PdfDefinesPrivate.h contains preprocessor definitions, inline functions, templates, compile-time const variables,
and other things that must be visible across the entirety of the PoDoFo library code base but should not be visible
to users of the library's headers.
This header is private to the library build. It is not installed with PoDoFo and must not be referenced in any way from
any public, installed header.
6 PdfCompilerCompat Header
(Codingstyle)
The codingstyle of PoDoFo is in no way perfect and is in parts not even the
preferred codingstyle of the maintainers. But consistency is more important
than personal preferences and most parts of the style can be applied through
simple editor settings.
0. Overall Rule
===============
The comments are most important in the header files, though additional
information may also be included in the source itself if necessary.
1. Code formatting
==================
1.1 Indentation
1.2 Brackets
Brackets always start in a new line of their own. The only exception are
class and struct declarations and try and catch blocks.
Example:
if( true )
{
// do something
}
but
class MyClass {
};
Inline functions are declared in the class definition in the header file.
They are implemented in the header file after the class definition.
The author may choose to either implement them directly at the same location
as the declaration or may place them at the end of the header file (preferred).
2. Naming
=========
2.1 Variables
Example:
bool bDecision;
long lValue;
char* pszString;
int nNumber;
Examples:
class MyClass {
private:
bool m_bMemberVar;
};
2.3 Methods
All methods start with an uppercase letter and every new word is
capitalized again.
Properties are set using a function with the prefix "Set", and retrieved with
a "Get". Also, unless there is a good reason not to - all "Getters" should be
marked as const.
Additionally, please use the prefixes "Has" and "Is" when appropriate.
E.g.
PdfDictionary::HasKey();
PdfDocument::IsLinearized();
2.4 NULL-Pointers
NULL Pointers are initialized in the code with the constant NULL. Please
do not use 0 or 0L but use NULL.
3. General Guidelines
===================
3.1 Casting
C++ style casting is strongly preferred, and the use of C-style casts will
generate warnings on gcc builds. Use, as appropriate,
static_cast<>
const_cast<>
reinterpret_cast<>
Dynamic casting and typeid are not presently used in PoDoFo.
For example:
Thing f()
{
Thing ret;
// blah blah blah
ret = DoSomething();
// blah blah blah
return ret;
}
Thing f()
{
// blah blah blah
Thing ret ( DoSomething() );
// blah blah blah
return ret;
}
DoSomething( PdfName("blah") );
rather than
PdfName n("blah");
DoSomething( n );
as this makes it easier for the compiler to optimise the call, may reduce
the stack size of the function, etc. Don’t forget to consider the lifetime
of the temporary, however.
see:
http://msdn2.microsoft.com/en-us/library/49147z04.aspx
http://gcc.gnu.org/onlinedocs/gcc-3.3.1/gcc/Function-Attributes.html
Note that classes that only inherit and implement an abstract interface
(adding no other public methods intended for use outside PoDoFo) that’re
only constructed through a factory or through other PoDoFo classes need
not be exported.
If you have a class that needs to be exported as public API, but it has
quite a few methods that do not need to be externally visible (private
helper methods etc), you can annotate those with the PODOFO_LOCAL macro as
shown in podofoapi.h . This omits just those methods from the symbol
table. Note that if the methods are accessed via public or protected
inline functions it is not safe to make them private.
(even though it is bad style on Linux, too), because most processes and
libraries use the same runtime library on a Linux system.
Using STL classes that may perform allocations internally is fine since
they tend to carry their own std::allocator instance (or reference,
anyway) around with them.
If at all possible, it’s desirable not to expose the use of 3rd party
headers in the PoDoFo headers. Rather than including headers for required
libraries, try to forward-declare required types and then include the
header in the implementation (.cpp) files. If the header is widely used,
you might want to put it in PdfDefinesPrivate.h . Widely used forward
declarations can go in Pdf3rdPtyForwardDecl.h .
Avoiding exposing used 3rd party headers means that users’ build systems
don’t need to know how to find those headers, and means that users’ programs
don’t get their namespaces polluted by unrelated symbols from libjpeg,
zlib, libtiff, freetype, etc etc etc. As some headers (*cough*freetype*cough*)
aren’t trivial to reliably locate, this can really simplify the build of
tools that use PoDoFo.
4. Structure
============
Additionally, there are two more projects. The test/ subdirectory contains
tests for both libraries. All new tests shall go to the test/unit/
sub-projects to provide unit-tests for PoDoFo. Utility programs that come with
PoDoFo go into the tools/ subdirectory. These tools provide a direct benefit
for end users who want to work with PDF files on the commandline and are also
a nice way to showcase the features of the PoDoFo libraries to new
developers.
Namespace Index
Hierarchical Index
PoDoFo::PdfFunction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
PoDoFo::PdfExponentialFunction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
PoDoFo::PdfSampledFunction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
PoDoFo::PdfStitchingFunction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
PoDoFo::PdfInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
PoDoFo::PdfOutlineItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
PoDoFo::PdfOutlines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
PoDoFo::PdfPage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
PoDoFo::PdfPagesTree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
PoDoFo::PdfShadingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
PoDoFo::PdfAxialShadingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
PoDoFo::PdfFunctionBaseShadingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
PoDoFo::PdfRadialShadingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
PoDoFo::PdfTriangleShadingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427
PoDoFo::PdfTilingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
PoDoFo::PdfXObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
PoDoFo::PdfEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
PoDoFo::PdfDifferenceEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
PoDoFo::PdfIdentityEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
PoDoFo::PdfSimpleEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
PoDoFo::PdfDocEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
PoDoFo::PdfMacRomanEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
PoDoFo::PdfStandardEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
PoDoFo::PdfSymbolEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
PoDoFo::PdfWinAnsiEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
PoDoFo::PdfIso88592Encoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
PoDoFo::PdfWin1250Encoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
PoDoFo::PdfZapfDingbatsEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
PoDoFo::PdfEncodingDifference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
PoDoFo::PdfEncodingFactory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
PoDoFo::PdfEncodingObjectFactory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
PoDoFo::PdfEncrypt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
PoDoFo::PdfEncryptAESBase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
PoDoFo::PdfEncryptAESV2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
PoDoFo::PdfEncryptRC4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
PoDoFo::PdfEncryptRC4Base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
PoDoFo::PdfError . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
PoDoFo::PdfExtension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
PoDoFo::PdfFilter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
PoDoFo::PdfAscii85Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
PoDoFo::PdfFlateFilter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
PoDoFo::PdfHexFilter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
PoDoFo::PdfLZWFilter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
PoDoFo::PdfRLEFilter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
PoDoFo::PdfFilterFactory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
PoDoFo::PdfFontCache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
PoDoFo::PdfFontConfigWrapper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
PoDoFo::PdfFontFactory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
PoDoFo::PdfFontMetrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
PoDoFo::PdfFontTTFSubset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
PoDoFo::PdfInputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
PoDoFo::PdfInputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
PoDoFo::PdfDeviceInputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
PoDoFo::PdfFileInputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
PoDoFo::PdfMemoryInputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
PoDoFo::PdfListField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
PoDoFo::PdfComboBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
PoDoFo::PdfListBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
PoDoFo::Util::PdfMutexImpl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
PoDoFo::Util::PdfMutexWrapper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
PoDoFo::PdfNamedColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
PoDoFo::PdfObjectStreamParserObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
PoDoFo::PdfOutputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
PoDoFo::PdfSignOutputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
PoDoFo::PdfOutputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
PoDoFo::PdfBufferOutputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
PoDoFo::PdfDeviceOutputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
PoDoFo::PdfFileOutputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
PoDoFo::PdfFilteredDecodeStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
PoDoFo::PdfFilteredEncodeStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
PoDoFo::PdfMemoryOutputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
PoDoFo::PdfPagesTreeCache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
PoDoFo::PdfPainter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
PoDoFo::PdfPainterMM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
PoDoFo::PdfPredictorDecoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
PoDoFo::PdfPushButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
PoDoFo::PdfRect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351
PoDoFo::PdfRefCountedBuffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
PoDoFo::PdfRefCountedInputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
PoDoFo::PdfSignatureField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
PoDoFo::PdfStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
PoDoFo::PdfFileStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
PoDoFo::PdfMemStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
PoDoFo::PdfTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
PoDoFo::PdfTableModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
PoDoFo::PdfSimpleTableModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
PoDoFo::PdfTextField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
PoDoFo::PdfTokenizer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
PoDoFo::PdfContentsTokenizer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
PoDoFo::PdfParser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
PoDoFo::PdfParserObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
PoDoFo::PdfXRefStreamParserObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
PoDoFo::NonPublic::PdfTTFWriter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
PoDoFo::PdfType1Encrypt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
PoDoFo::PdfVariant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
PoDoFo::PdfObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
PoDoFo::PdfParserObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
PoDoFo::PdfVecObjects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443
PoDoFo::PdfWriter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
PoDoFo::PdfImmediateWriter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
PoDoFo::PdfXRef . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
PoDoFo::PdfXRefStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
PoDoFo::PdfVecObjects::StreamFactory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
PoDoFo::PdfImmediateWriter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
PoDoFo::TFontCacheElement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
Class Index
Here are the classes, structs, unions and interfaces with brief descriptions:
PoDoFo::MD5Context
Structure representing an MD5 context while ecrypting. (For internal use only) . . . . . . . . . 39
PoDoFo::NamedColorComparatorPredicate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
PoDoFo::PdfVecObjects::Observer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
PoDoFo::PdfAction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
PoDoFo::PdfAnnotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
PoDoFo::PdfArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
PoDoFo::PdfAscii85Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
PoDoFo::PdfAxialShadingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
PoDoFo::PdfBufferOutputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
PoDoFo::PdfCanvas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
PoDoFo::PdfCheckBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
PoDoFo::PdfColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
PoDoFo::PdfComboBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
PoDoFo::PdfContents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
PoDoFo::PdfContentsTokenizer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
PoDoFo::PdfData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
PoDoFo::PdfDataType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
PoDoFo::PdfDate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
PoDoFo::PdfDestination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
PoDoFo::PdfDeviceInputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
PoDoFo::PdfDeviceOutputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
PoDoFo::PdfDictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
PoDoFo::PdfDifferenceEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
PoDoFo::PdfDocEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
PoDoFo::PdfDocument . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
PoDoFo::PdfElement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
PoDoFo::PdfEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
PoDoFo::PdfEncodingDifference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
PoDoFo::PdfEncodingFactory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
PoDoFo::PdfEncodingObjectFactory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
PoDoFo::PdfEncrypt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
PoDoFo::PdfEncryptAESBase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
PoDoFo::PdfEncryptAESV2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
PoDoFo::PdfEncryptRC4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
PoDoFo::PdfEncryptRC4Base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
PoDoFo::PdfError . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
PoDoFo::PdfExponentialFunction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
20 Class Index
PoDoFo::PdfExtension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
PoDoFo::PdfExtGState . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
PoDoFo::PdfFileInputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
PoDoFo::PdfFileOutputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
PoDoFo::PdfFileSpec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
PoDoFo::PdfFileStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
PoDoFo::PdfFilter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
PoDoFo::PdfFilteredDecodeStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
PoDoFo::PdfFilteredEncodeStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
PoDoFo::PdfFilterFactory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
PoDoFo::PdfFlateFilter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
PoDoFo::PdfFont . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
PoDoFo::PdfFontCache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
PoDoFo::PdfFontCID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
PoDoFo::PdfFontConfigWrapper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
PoDoFo::PdfFontFactory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
PoDoFo::PdfFontMetrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
PoDoFo::PdfFontSimple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
PoDoFo::PdfFontTrueType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
PoDoFo::PdfFontTTFSubset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
PoDoFo::PdfFontType1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
PoDoFo::PdfFontType1Base14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
PoDoFo::PdfFontType3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
PoDoFo::PdfFunction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
PoDoFo::PdfFunctionBaseShadingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
PoDoFo::PdfHexFilter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
PoDoFo::PdfIdentityEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
PoDoFo::PdfImage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
PoDoFo::PdfImmediateWriter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
PoDoFo::PdfInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
PoDoFo::PdfInputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
PoDoFo::PdfInputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
PoDoFo::PdfIso88592Encoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
PoDoFo::PdfListBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
PoDoFo::PdfListField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
PoDoFo::PdfLZWFilter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
PoDoFo::PdfMacRomanEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
PoDoFo::PdfMemDocument . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
PoDoFo::PdfMemoryInputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
PoDoFo::PdfMemoryOutputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
PoDoFo::PdfMemStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
PoDoFo::Util::PdfMutexImpl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
PoDoFo::Util::PdfMutexWrapper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
PoDoFo::PdfName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
PoDoFo::PdfNamedColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
PoDoFo::PdfObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
PoDoFo::PdfObjectStreamParserObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
PoDoFo::PdfOutlineItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
PoDoFo::PdfOutlines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
PoDoFo::PdfOutputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
PoDoFo::PdfOutputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
PoDoFo::PdfPage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
PoDoFo::PdfPagesTree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
PoDoFo::PdfPagesTreeCache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
PoDoFo::PdfPainter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
PoDoFo::PdfPainterMM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
PoDoFo::PdfParser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
PoDoFo::PdfParserObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
PoDoFo::PdfPredictorDecoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
PoDoFo::PdfPushButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
PoDoFo::PdfRadialShadingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
PoDoFo::PdfRect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351
PoDoFo::PdfRefCountedBuffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
PoDoFo::PdfRefCountedInputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
PoDoFo::PdfReference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
PoDoFo::PdfRLEFilter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
PoDoFo::PdfSampledFunction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
PoDoFo::PdfShadingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
PoDoFo::PdfSignatureField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
PoDoFo::PdfSignOutputDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
PoDoFo::PdfSimpleEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
PoDoFo::PdfSimpleTableModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
PoDoFo::PdfStandardEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
PoDoFo::PdfStitchingFunction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
PoDoFo::PdfStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
PoDoFo::PdfStreamedDocument . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
PoDoFo::PdfString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
PoDoFo::PdfSymbolEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
PoDoFo::PdfTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
PoDoFo::PdfTableModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
PoDoFo::PdfTextField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
PoDoFo::PdfTilingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
PoDoFo::PdfTokenizer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
PoDoFo::PdfTriangleShadingPattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427
PoDoFo::NonPublic::PdfTTFWriter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
PoDoFo::PdfType1Encrypt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
PoDoFo::PdfVariant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
PoDoFo::PdfVecObjects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443
PoDoFo::PdfWin1250Encoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
PoDoFo::PdfWinAnsiEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
PoDoFo::PdfWriter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
PoDoFo::PdfXObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
PoDoFo::PdfXRef . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
PoDoFo::PdfXRefStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
PoDoFo::PdfXRefStreamParserObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
PoDoFo::PdfZapfDingbatsEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
PoDoFo::PdfVecObjects::StreamFactory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
PoDoFo::TFontCacheElement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
File Index
Namespace Documentation
Classes
• struct MD5Context
Structure representing an MD5 context while ecrypting. (For internal use only)
• class NamedColorComparatorPredicate
• class PdfAction
• class PdfAnnotation
• class PdfArray
• class PdfAscii85Filter
• class PdfAxialShadingPattern
• class PdfBufferOutputStream
• class PdfCanvas
• class PdfCheckBox
• class PdfColor
• class PdfComboBox
• class PdfContents
• class PdfContentsTokenizer
• class PdfData
• class PdfDataType
• class PdfDate
• class PdfDestination
• class PdfDeviceInputStream
• class PdfDeviceOutputStream
• class PdfDictionary
• class PdfDifferenceEncoding
• class PdfDocEncoding
• class PdfDocument
• class PdfElement
• class PdfEncoding
• class PdfEncodingDifference
• class PdfEncodingFactory
• class PdfEncodingObjectFactory
• class PdfEncrypt
• class PdfEncryptAESBase
• class PdfEncryptAESV2
• class PdfEncryptRC4
• class PdfEncryptRC4Base
26 Namespace Documentation
• class PdfError
• class PdfExponentialFunction
• class PdfExtension
• class PdfExtGState
• class PdfFileInputStream
• class PdfFileOutputStream
• class PdfFileSpec
• class PdfFileStream
• class PdfFilter
• class PdfFilteredDecodeStream
• class PdfFilteredEncodeStream
• class PdfFilterFactory
• class PdfFlateFilter
• class PdfFont
• class PdfFontCache
• class PdfFontCID
• class PdfFontConfigWrapper
• class PdfFontFactory
• class PdfFontMetrics
• class PdfFontSimple
• class PdfFontTrueType
• class PdfFontTTFSubset
• class PdfFontType1
• class PdfFontType1Base14
• class PdfFontType3
• class PdfFunction
• class PdfFunctionBaseShadingPattern
• class PdfHexFilter
• class PdfIdentityEncoding
• class PdfImage
• class PdfImmediateWriter
• class PdfInfo
• class PdfInputDevice
• class PdfInputStream
• class PdfIso88592Encoding
• class PdfListBox
• class PdfListField
• class PdfLZWFilter
• class PdfMacRomanEncoding
• class PdfMemDocument
• class PdfMemoryInputStream
• class PdfMemoryOutputStream
• class PdfMemStream
• class PdfName
• class PdfNamedColor
• class PdfObject
• class PdfObjectStreamParserObject
• class PdfOutlineItem
• class PdfOutlines
• class PdfOutputDevice
• class PdfOutputStream
• class PdfPage
• class PdfPagesTree
• class PdfPagesTreeCache
• class PdfPainter
• class PdfPainterMM
• class PdfParser
• class PdfParserObject
• class PdfPredictorDecoder
• class PdfPushButton
• class PdfRadialShadingPattern
• class PdfRect
• class PdfRefCountedBuffer
• class PdfRefCountedInputDevice
• class PdfReference
• class PdfRLEFilter
• class PdfSampledFunction
• class PdfShadingPattern
• class PdfSignatureField
• class PdfSignOutputDevice
• class PdfSimpleEncoding
• class PdfSimpleTableModel
• class PdfStandardEncoding
• class PdfStitchingFunction
• class PdfStream
• class PdfStreamedDocument
• class PdfString
• class PdfSymbolEncoding
• class PdfTable
• class PdfTableModel
• class PdfTextField
• class PdfTilingPattern
• class PdfTokenizer
• class PdfTriangleShadingPattern
• class PdfType1Encrypt
• class PdfVariant
• class PdfVecObjects
• class PdfWin1250Encoding
• class PdfWinAnsiEncoding
• class PdfWriter
• class PdfXObject
• class PdfXRef
• class PdfXRefStream
• class PdfXRefStreamParserObject
• class PdfZapfDingbatsEncoding
• struct TFontCacheElement
Typedefs
Enumerations
• enum ELogSeverity {
eLogSeverity_Critical, eLogSeverity_Error, eLogSeverity_Warning, eLogSeverity_Information,
eLogSeverity_Debug, eLogSeverity_None, eLogSeverity_Unknown = 0xffff }
• enum EPdfAcroFormDefaulAppearance { ePdfAcroFormDefaultAppearance_None, ePdfAcroFormDefault←-
Appearance_BlackText12pt }
• enum EPdfAction
• enum EPdfAnnotation
• enum EPdfAnnotationFlags
• enum EPdfDestinationType
• enum EPdfField
• enum EPdfHighlightingMode { ePdfHighlightingMode_None, ePdfHighlightingMode_Invert, ePdf←-
HighlightingMode_InvertOutline, ePdfHighlightingMode_Push }
• enum EPdfFunctionType { ePdfFunctionType_Sampled = 0, ePdfFunctionType_Exponential = 2, ePdf←-
FunctionType_Stitching = 3, ePdfFunctionType_PostScript = 4 }
• enum EPdfOutlineFormat { ePdfOutlineFormat_Default = 0x00, ePdfOutlineFormat_Italic = 0x01, ePdf←-
OutlineFormat_Bold = 0x02, ePdfOutlineFormat_BoldItalic = 0x03 }
Functions
• template<typename T >
const T PDF_MAX (const T a, const T b)
• template<typename T >
const T PDF_MIN (const T a, const T b)
• void PdfLocaleImbue (std::ios_base &s)
• bool podofo_is_little_endian ()
• void ∗ podofo_malloc (size_t size)
• void ∗ podofo_calloc (size_t nmemb, size_t size)
• void ∗ podofo_realloc (void ∗buffer, size_t size)
• void podofo_free (void ∗buffer)
Variables
All classes, functions, types and enums of PoDoFo are members of these namespace.
If you use PoDoFo, you might want to add the line: using namespace PoDoFo; to your application.
PODOFO_USE_UNORDERED_MAP
If you set this define, PoDoFo will use std::tr1::unordered_map instead of std::map for PdfDictionary.
Some benchmarking tests using callgrind have shown that unordered_map is a little faster for writing and AddKey
but of course slower for GetKey and HasKey. As PdfDictionaries are usually very small the difference for GetKey
and HasKey is not very large and should therefore be rarely noticeable.
By default this define is not set and std::map will be used.
See also
PdfError::LogMessage
Enumerator
Enumerator
The type of the action. PDF supports different action types, each of them has different keys and propeties.
Not all action types listed here are supported yet.
Please make also sure that the action type you use is supported by the PDF version you are using.
The type of the annotation. PDF supports different annotation types, each of them has different keys and propeties.
Not all annotation types listed here are supported yet.
Please make also sure that the annotation type you use is supported by the PDF version you are using.
Flags that control the appearance of a PdfAnnotation. You can OR them together and pass it to PdfAnnotation::←-
SetFlags.
Enumerator
ePdfColorSpace_DeviceGray Gray
ePdfColorSpace_DeviceRGB RGB
ePdfColorSpace_DeviceCMYK CMYK
ePdfColorSpace_Separation Separation
ePdfColorSpace_CieLab CIE-Lab
ePdfColorSpace_Indexed Indexed
Enumerator
Every PDF datatype that can occur in a PDF file is referenced by an own enum (e.g. Bool or String).
See also
PdfVariant
Enumerator
PdfString
ePdfDataType_HexString HexString datatype in PDF file. Hex encoded strings have the form <AF00BE> in
PDF files.
See also
PdfString
ePdfDataType_Name Name datatype. Names are used as keys in dictionary to reference values.
See also
PdfName
PdfObject
Error Code defines which are used in PdfError to describe the error.
If you add an error code to this enum, please also add it to PdfError::ErrorName() and PdfError::ErrorMessage().
See also
PdfError
Enumerator
Every filter that can be used to encode a stream in a PDF file is referenced by an own enum value. Common filters
are ePdfFilter_FlateDecode (i.e. Zip) or ePdfFilter_ASCIIHexDecode
Enumerator
ePdfFilter_ASCIIHexDecode Converts data from and to hexadecimal. Increases size of the data by a factor
of 2!
See also
PdfHexFilter
ePdfFilter_ASCII85Decode Converts to and from Ascii85 encoding.
See also
PdfAscii85Filter
ePdfFilter_FlateDecode Compress data using the Flate algorithm of ZLib. This filter is recommended to be
used always.
See also
PdfFlateFilter
ePdfFilter_RunLengthDecode Run length decode data.
See also
PdfRLEFilter
Enumerator
The possible highlighting modes for a PdfField. I.e the visual effect that is to be used when the mouse button is
pressed.
The default value is ePdfHighlightingMode_Invert
Enumerator
ePdfHighlightingMode_None Do no highlighting.
ePdfHighlightingMode_Invert Invert the PdfField.
ePdfHighlightingMode_InvertOutline Invert the fields border.
ePdfHighlightingMode_Push Display the fields down appearance (requires an additional appearance stream
to be set)
The title of an outline item can be displayed in different formating styles since PDF 1.4.
Enumerator
Enum holding the supported of types of "PageLayouts" that define how Acrobat will display the pages in relation to
each other
See also
PdfDocument
Enum holding the supported of types of "PageModes" that define which (if any) of the "panels" are opened in Acrobat
when the document is opened.
See also
PdfDocument
Enum holding the supported page sizes by PoDoFo. Can be used to construct a PdfRect structure with measure-
ments of a page object.
See also
PdfPage
Enumerator
ePdfPageSize_A0 DIN A0
ePdfPageSize_A1 DIN A1
ePdfPageSize_A2 DIN A2
ePdfPageSize_A3 DIN A3
ePdfPageSize_A4 DIN A4
ePdfPageSize_A5 DIN A5
ePdfPageSize_A6 DIN A6
ePdfPageSize_Letter Letter
ePdfPageSize_Legal Legal
ePdfPageSize_Tabloid Tabloid
Enum for the different stroke styles that can be set when drawing to a PDF file (mostly for line drawing).
Enumerator
Enumerator
Enumerator
PDF_MAX(x,y)
Returns
PDF_MIN(x,y)
Returns
Imbue the passed stream with a locale that will be safe to do I/O of the low level PDF format with.
PDF document structure I/O is done with the C++ standard library IOStreams code. By default, this will adapt to
the current locale. That's not good at all when doing I/O of PDF data structures, which follow POSIX/english locale
conventions irrespective of runtime locale. Make sure to to call this function on any stream you intend to use for
PDF I/O. Avoid using this stream for anything that should be done in the regional locale.
Warning
This method may throw ePdfError_InvalidDeviceOperation if your STL does not support the locale string in
PdfIOLocale .
If you fail to call this on a stream you use for PDF I/O you will encounter problems like German and other European
users getting numbers in the format "10110,4" or even "10.110,4" instead of "10110.4" .
Returns
Class Documentation
Structure representing an MD5 context while ecrypting. (For internal use only)
Structure representing an MD5 context while ecrypting. (For internal use only)
Predicate to allow binary search in the list of PdfNamedColor's using for example std::equal_range.
#include <PdfVecObjects.h>
Inheritance diagram for PoDoFo::PdfVecObjects::Observer:
PoDoFo::PdfVecObjects::Observer
PoDoFo::PdfImmediateWriter
#include <PdfAction.h>
Inheritance diagram for PoDoFo::PdfAction:
PoDoFo::PdfElement
PoDoFo::PdfAction
Adds this action to an dictionary. This method handles the all the complexities of making sure it's added correctly
If this action is empty. Nothing will be added.
Parameters
dictionary the action will be added to this dictionary
Returns
Returns
an URI
Returns
#include <PdfAnnotation.h>
Inheritance diagram for PoDoFo::PdfAnnotation:
PoDoFo::PdfElement
PoDoFo::PdfAnnotation
• PdfAnnotation (PdfPage ∗pPage, EPdfAnnotation eAnnot, const PdfRect &rRect, PdfVecObjects ∗pParent)
• PdfAnnotation (PdfObject ∗pObject, PdfPage ∗pPage)
• void SetAppearanceStream (PdfXObject ∗pObject)
• bool HasAppearanceStream () const
• PdfRect GetRect () const
• void SetFlags (pdf_uint32 uiFlags)
• pdf_uint32 GetFlags () const
• void SetBorderStyle (double dHCorner, double dVCorner, double dWidth)
• void SetBorderStyle (double dHCorner, double dVCorner, double dWidth, const PdfArray &rStrokeStyle)
• void SetTitle (const PdfString &sTitle)
• PdfString GetTitle () const
• void SetContents (const PdfString &sContents)
• PdfString GetContents () const
• void SetDestination (const PdfDestination &rDestination)
• PdfDestination GetDestination (PdfDocument ∗pDoc) const
• bool HasDestination () const
• void SetAction (const PdfAction &rAction)
• PdfAction ∗ GetAction () const
• bool HasAction () const
• void SetOpen (bool b)
• bool GetOpen () const
• bool HasFileAttachement () const
• void SetFileAttachement (const PdfFileSpec &rFileSpec)
• PdfFileSpec ∗ GetFileAttachement () const
• PdfArray GetQuadPoints () const
See also
PdfPage::CreateAnnotation
10.5.2.1 PoDoFo::PdfAnnotation::PdfAnnotation ( PdfPage ∗ pPage, EPdfAnnotation eAnnot, const PdfRect & rRect,
PdfVecObjects ∗ pParent )
See also
PdfPage::CreateAnnotation
Returns
See also
SetAction
Get the color key of the Annotation dictionary which defines the color of the annotation, as per 8.4 of the pdf spec.
The PdfArray contains 0 to four numbers, depending on the colorspace in which the color is specified 0 numbers
means the annotation is transparent 1 number specifies the intensity of the color in grayscale 3 numbers specifie
the color in the RGB colorspace and 4 numbers specify the color in the CMYK colorspace
Returns
a PdfArray of either 0, 1, 3 or 4 numbers depending on the colorspace in which the color is specified
Returns
See also
SetContents
Returns
a destination object
See also
SetDestination
Returns
a file specification object. The file specification object is owned by the PdfAnnotation.
See also
SetFileAttachement
Returns
the flags which is an unsigned 32bit integer with different EPdfAnnotationFlags OR'ed together.
See also
SetFlags
Returns
Returns
Get the quad points associated with the annotation (if appropriate). This array is used in text markup annotations to
describe the regions affected by the markup (i.e. the hilighted words, one quadrilateral per word)
Returns
a PdfArray of 8xn numbers describing the x,y coordinates of BL BR TR TL corners of the quadrilaterals. If
inappropriate, returns an empty array.
Returns
a rectangle
Returns
See also
SetTitle
Returns
Returns
Returns
Returns
Returns
See also
GetAction
Set an appearance stream for this object to specify its visual appearance
Parameters
pObject an XObject
10.5.3.20 void PoDoFo::PdfAnnotation::SetBorderStyle ( double dHCorner, double dVCorner, double dWidth, const PdfArray
& rStrokeStyle )
Set the C key of the Annotation dictionary, which defines the color of the annotation, as per 8.4 of the pdf spec.
Parameters give the color in rgb colorspace coordinates
Parameters
r number from 0 to 1, the intensity of the red channel
g number from 0 to 1, the intensity of the green channel
b number from 0 to 1, the intensity of the blue channel
Set the C key of the Annotation dictionary, which defines the color of the annotation, as per 8.4 of the pdf spec.
Parameters give the color in cmyk colorspace coordinates
Parameters
c number from 0 to 1, the intensity of the cyan channel
m number from 0 to 1, the intensity of the magneta channel
y number from 0 to 1, the intensity of the yellow channel
k number from 0 to 1, the intensity of the black channel
Set the C key of the Annotation dictionary, which defines the color of the annotation, as per 8.4 of the pdf spec.
Parameters give the color in grayscale colorspace coordinates
Parameters
gray number from 0 to 1, the intensity of the black
Set the C key of the Annotation dictionary to an empty array, which, as per 8.4 of the pdf spec., makes the annotation
transparent
See also
GetContents
See also
GetDestination
Set a file attachment for this annotation. The type of this annotation has to be ePdfAnnotation_FileAttachement for
file attachements to work.
Parameters
rFileSpec a file specification
See also
GetFlags
Sets wether this annotation is initialy open. You should always set this true for popup annotations.
Parameters
b if true open it
Set the quad points associated with the annotation (if appropriate). This array is used in text markup annotations to
describe the regions affected by the markup (i.e. the hilighted words, one quadrilateral per word)
Parameters
rQuadPoints a PdfArray of 8xn numbers describing the x,y coordinates of BL BR TR TL corners of the
quadrilaterals.
See also
GetTitle
#include <PdfArray.h>
Inheritance diagram for PoDoFo::PdfArray:
PoDoFo::PdfDataType
PoDoFo::PdfArray
• PdfArray ()
• PdfArray (const PdfObject &var)
• PdfArray (const PdfArray &rhs)
• PdfArray & operator= (const PdfArray &rhs)
• size_t GetSize () const
• void Clear ()
• virtual void Write (PdfOutputDevice ∗pDevice, EPdfWriteMode eWriteMode, const PdfEncrypt ∗p←-
Encrypt=NULL) const
• bool ContainsString (const std::string &cmpString) const
• size_t GetStringIndex (const std::string &cmpString) const
• void push_back (const PdfObject &var)
• size_t size () const
• bool empty () const
• void resize (size_t __n, value_type __x=PdfArrayBaseClass::value_type())
• iterator begin ()
• const_iterator begin () const
• iterator end ()
• const_iterator end () const
• reverse_iterator rbegin ()
• const_reverse_iterator rbegin () const
• reverse_iterator rend ()
• const_reverse_iterator rend () const
• reference front ()
• const_reference front () const
• reference back ()
• const_reference back () const
• virtual bool IsDirty () const
• virtual void SetDirty (bool bDirty)
This class represents a PdfArray Use it for all arrays that are written to a PDF file.
A PdfArray can hold any PdfVariant.
See also
PdfVariant
10.6.2.1 PoDoFo::PdfArray::PdfArray ( )
Create an array and add one value to it. The value is copied.
Parameters
var add this object to the array.
Returns
Returns
a read-only (constant) reference to the data at the last element of the array.
Returns a read/write iterator that points to the first element in the array. Iteration is done in ordinary element order.
Returns a read-only (constant) iterator that points to the first element in the array. Iteration is done in ordinary
element order.
Utility method to determine if the array contains contains any objects of ePdfDataType_String whose value is the
passed string.
Parameters
cmpString the string to compare against
Returns
Returns
Returns a read/write iterator that points one past the last element in the array. Iteration is done in ordinary element
order.
Returns a read-only (constant) iterator that points one past the last element in the array. Iteration is done in ordinary
element order.
Returns
Returns
a read-only (constant) reference to the data at the first element of the array.
Returns
Utility method to return the actual index in the array which contains an object of ePdfDataType_String whose value
is the passed string.
Parameters
cmpString the string to compare against
Returns
The dirty flag is set if this variant has been modified after construction.
Usually the dirty flag is also set if you call any non-const member function as we cannot determine if you actually
changed something or not.
Returns
true if the value is dirty and has been modified since construction
assignment operator
Parameters
rhs the array to assign
Parameters
var add a PdfObject to the array
See also
IsDirty
Returns a read/write reverse iterator that points to the last element in the array. Iteration is done in reverse element
order.
Returns a read-only (constant) reverse iterator that points to the last element in the array. Iteration is done in reverse
element order.
Returns a read/write reverse iterator that points to one before the first element in the array. Iteration is done in
reverse element order.
Returns a read-only (constant) reverse iterator that points to one before the first element in the array. Iteration is
done in reverse element order.
See also
IsDirty
Returns
Implements PoDoFo::PdfDataType.
#include <PdfFiltersPrivate.h>
Inheritance diagram for PoDoFo::PdfAscii85Filter:
PoDoFo::PdfFilter
PoDoFo::PdfAscii85Filter
By default this function does nothing. If your filter needs to do setup for decoding, you should override this method.
PdfFilter ensures that a valid stream is available when this method is called, and that EndDecode() was called since
the last BeginDecode()/DecodeBlock().
See also
BeginDecode
See also
EncodeBlockImpl
EndEncodeImpl
PdfFilter::BeginEncode
Returns
Implements PoDoFo::PdfFilter.
Returns
Implements PoDoFo::PdfFilter.
See also
DecodeBlock
Implements PoDoFo::PdfFilter.
See also
BeginEncodeImpl
EndEncodeImpl
Implements PoDoFo::PdfFilter.
See also
EndDecode
See also
BeginEncodeImpl
EncodeBlockImpl
Returns
Implements PoDoFo::PdfFilter.
#include <PdfShadingPattern.h>
Inheritance diagram for PoDoFo::PdfAxialShadingPattern:
PoDoFo::PdfElement
PoDoFo::PdfShadingPattern
PoDoFo::PdfAxialShadingPattern
• PdfAxialShadingPattern (double dX0, double dY0, double dX1, double dY1, const PdfColor &rStart, const
PdfColor &rEnd, PdfVecObjects ∗pParent)
• PdfAxialShadingPattern (double dX0, double dY0, double dX1, double dY1, const PdfColor &rStart, const
PdfColor &rEnd, PdfDocument ∗pParent)
10.8.2.1 PoDoFo::PdfAxialShadingPattern::PdfAxialShadingPattern ( double dX0, double dY0, double dX1, double dY1, const
PdfColor & rStart, const PdfColor & rEnd, PdfVecObjects ∗ pParent )
10.8.2.2 PoDoFo::PdfAxialShadingPattern::PdfAxialShadingPattern ( double dX0, double dY0, double dX1, double dY1, const
PdfColor & rStart, const PdfColor & rEnd, PdfDocument ∗ pParent )
#include <PdfOutputStream.h>
Inheritance diagram for PoDoFo::PdfBufferOutputStream:
PoDoFo::PdfOutputStream
PoDoFo::PdfBufferOutputStream
Close the PdfOutputStream. This method may throw exceptions and has to be called before the descructor to end
writing.
No more data may be written to the output device after calling close.
Implements PoDoFo::PdfOutputStream.
Returns
Returns
Implements PoDoFo::PdfOutputStream.
#include <PdfCanvas.h>
Inheritance diagram for PoDoFo::PdfCanvas:
PoDoFo::PdfCanvas
PoDoFo::PdfPage PoDoFo::PdfXObject
PoDoFo::PdfImage
• virtual ∼PdfCanvas ()
• virtual PdfObject ∗ GetContents () const =0
• virtual PdfObject ∗ GetContentsForAppending () const =0
• virtual PdfObject ∗ GetResources () const =0
• virtual const PdfRect GetPageSize () const =0
• void AddColorResource (const PdfColor &rColor)
• void AddResource (const PdfName &rIdentifier, const PdfReference &rRef, const PdfName &rName)
A interface that provides the necessary features for a painter to draw onto a PdfObject.
Register a colourspace for a (separation) colour in the resource dictionary of this page or XObbject so that it can be
used for any following drawing operations.
Parameters
rColor reference to the PdfColor
10.10.3.2 void PoDoFo::PdfCanvas::AddResource ( const PdfName & rIdentifier, const PdfReference & rRef, const
PdfName & rName )
Register an object in the resource dictionary of this page or XObbject so that it can be used for any following drawing
operations.
Parameters
rIdentifier identifier of this object, e.g. /Ft0
rRef reference to the object you want to register
rName register under this key in the resource dictionary
Get access to the contents object of this page. If you want to draw onto the page, you have to add drawing
commands to the stream of the Contents object.
Returns
a contents object
Get access an object that you can use to ADD drawing to. If you want to draw onto the page, you have to add
drawing commands to the stream of the Contents object.
Returns
a contents object
Returns
Returns
Get access to the resources object of this page. This is most likely an internal object.
Returns
a resources object
#include <PdfField.h>
Inherits PoDoFo::PdfButton.
10.11.2.2 PoDoFo::PdfCheckBox::PdfCheckBox ( PdfPage ∗ pPage, const PdfRect & rRect, PdfAcroForm ∗ pParent )
10.11.2.3 PoDoFo::PdfCheckBox::PdfCheckBox ( PdfPage ∗ pPage, const PdfRect & rRect, PdfDocument ∗ pDoc )
Returns
Set the appearance stream which is displayed when the checkbox is checked.
Parameters
rXObject an xobject which contains the drawing commands for a checked checkbox
Set the appearance stream which is displayed when the checkbox is unchecked.
Parameters
rXObject an xobject which contains the drawing commands for an unchecked checkbox
Parameters
bChecked if true the checkbox will be checked
#include <PdfColor.h>
Inherited by PoDoFo::PdfColorCieLab, PoDoFo::PdfColorCMYK, PoDoFo::PdfColorGray, PoDoFo::PdfColorRGB,
PoDoFo::PdfColorSeparation, PoDoFo::PdfColorSeparationAll, and PoDoFo::PdfColorSeparationNone.
• PdfColor ()
• PdfColor (double dGray)
• PdfColor (double dRed, double dGreen, double dBlue)
• PdfColor (double dCyan, double dMagenta, double dYellow, double dBlack)
• PdfColor (const PdfColor &rhs)
• virtual ∼PdfColor ()
• const PdfColor & operator= (const PdfColor &rhs)
• bool operator== (const PdfColor &rhs) const
• bool operator!= (const PdfColor &rhs) const
• bool IsGrayScale () const
• bool IsRGB () const
• bool IsCMYK () const
• bool IsSeparation () const
• bool IsCieLab () const
• EPdfColorSpace GetColorSpace () const
• EPdfColorSpace GetAlternateColorSpace () const
• double GetGrayScale () const
• double GetRed () const
• double GetGreen () const
• double GetBlue () const
• double GetCyan () const
• double GetMagenta () const
• double GetYellow () const
• double GetBlack () const
• const std::string GetName () const
• double GetDensity () const
• double GetCieL () const
• double GetCieA () const
• double GetCieB () const
• PdfColor ConvertToGrayScale () const
• PdfColor ConvertToRGB () const
• PdfColor ConvertToCMYK () const
• PdfArray ToArray () const
• PdfObject ∗ BuildColorSpace (PdfVecObjects ∗pOwner) const
A color object can represent either a grayscale value, a RGB color, a CMYK color, a separation color or a CieLab
color.
All drawing functions in PoDoFo accept a PdfColor object to specify a drawing color in one of these colorspaces.
Derived classes PdfColorGray, PdfColorRGB, PdfColorCMYK, PdfColorSeparation and PdfColorCieLab are avail-
able for easy construction
10.12.2.1 PoDoFo::PdfColor::PdfColor ( )
10.12.2.4 PoDoFo::PdfColor::PdfColor ( double dCyan, double dMagenta, double dYellow, double dBlack )
Copy constructor
Parameters
rhs copy rhs into this object
Destructor
Returns
a PdfObject pointer, which can be insert into resources, NULL if not needed
Returns
See also
IsCMYK()
Returns
See also
IsGrayScale()
Returns
See also
IsRGB()
Returns
a PdfColor object
• PdfArray's
Returns
a PdfColor object
Returns
Returns
the black color value of this object (between 0.0 and 1.0)
See also
IsCMYK
Returns
the blue color value of this object (between 0.0 and 1.0)
See also
IsRGB
Returns
See also
IsCieLab
Returns
See also
IsCieLab
Returns
See also
IsCieLab
Returns
Returns
See also
GetNameForColorSpace
Returns
the cyan color value of this object (between 0.0 and 1.0)
See also
IsCMYK
Returns
See also
IsSeparation
Returns
the grayscale color value of this object (between 0.0 and 1.0)
See also
IsGrayScale
Returns
the green color value of this object (between 0.0 and 1.0)
See also
IsRGB
Returns
the magenta color value of this object (between 0.0 and 1.0)
See also
IsCMYK
Returns
See also
IsSeparation
Returns
a name
See also
GetColorSpaceForName
Returns
the red color value of this object (between 0.0 and 1.0)
See also
IsRGB
Returns
the yellow color value of this object (between 0.0 and 1.0)
See also
IsCMYK
Returns
Returns
Returns
Returns
Returns
Returns
Assignment operator
Parameters
rhs copy rhs into this object
Returns
Returns
Returns
a PdfArray object
#include <PdfField.h>
Inheritance diagram for PoDoFo::PdfComboBox:
PoDoFo::PdfListField
PoDoFo::PdfComboBox
10.13.2.2 PoDoFo::PdfComboBox::PdfComboBox ( PdfPage ∗ pPage, const PdfRect & rRect, PdfAcroForm ∗ pParent )
10.13.2.3 PoDoFo::PdfComboBox::PdfComboBox ( PdfPage ∗ pPage, const PdfRect & rRect, PdfDocument ∗ pDoc )
Returns
#include <PdfContents.h>
Inheritance diagram for PoDoFo::PdfContents:
PoDoFo::PdfElement
PoDoFo::PdfContents
A interface that provides a wrapper around "PDF content" - the instructions that are used to draw on the PDF
"canvas".
Create the contents for an existing page which does not yet have a contents object.
Parameters
pParent a /Contents key will be added to this page and a contents object will be created.
Get access to the raw contents object. It will either be a PdfStream or a PdfArray
Returns
a contents object
Get access to an object into which you can add contents at the end of the "stream".
#include <PdfContentsTokenizer.h>
Inheritance diagram for PoDoFo::PdfContentsTokenizer:
PoDoFo::PdfTokenizer
PoDoFo::PdfContentsTokenizer
Parameters
pBuffer pointer to a buffer
lLen length of the buffer
10.15.3.1 bool PoDoFo::PdfContentsTokenizer::GetNextToken ( const char ∗& pszToken, EPdfTokenType ∗ peType = NULL )
[virtual]
Reads the next token from the current file position ignoring all comments.
Parameters
out pszToken On true return, set to a pointer to the read token (a NULL-terminated C string).
The pointer is to memory owned by PdfTokenizer and must NOT be freed.
The contents are invalidated on the next call to GetNextToken(..) and by the
destruction of the PdfTokenizer. Undefined on false return.
out peType On true return, if not NULL the type of the read token will be stored into this
parameter. Undefined on false return.
Returns
True if a token was read, false if there are no more tokens to read.
See also
GetBuffer
10.15.3.2 bool PoDoFo::PdfContentsTokenizer::ReadNext ( EPdfContentsType & reType, const char ∗& rpszKeyword,
PoDoFo::PdfVariant & rVariant )
Read the next keyword or variant, returning true and setting reType if something was read. Either rpszKeyword or
rVariant, but never both, have defined and usable values on true return, with which being controlled by the value of
eType.
If EOF is encountered, returns false and leaves eType, pszKeyword and rVariant undefined.
As a special case, reType may be set to ePdfContentsType_ImageData. In this case rpszzKeyword is undefined,
and rVariant contains a PdfData variant containing the byte sequence between the ID and BI keywords sans the
one byte of leading- and trailing- white space. No filter decoding is performed.
Parameters
out reType will be set to either keyword or variant if true is returned. Undefined if false is
returned.
out rpszKeyword if pType is set to ePdfContentsType_Keyword this will point to the keyword,
otherwise the value is undefined. If set, the value points to memory owned
by the PdfContentsTokenizer and must not be freed. The value is invalidated
when ReadNext is next called or when the PdfContentsTokenizer is destroyed.
out rVariant if pType is set to ePdfContentsType_Variant or ePdfContentsType_ImageData
this will be set to the read variant, otherwise the value is undefined.
#include <PdfData.h>
Inheritance diagram for PoDoFo::PdfData:
PoDoFo::PdfDataType
PoDoFo::PdfData
A datatype that allows to write abitrary data to a PDF file. The user of this class has to ensure that the data written
to the PDF file using this class is valid data for a PDF file!
This class is used in PoDoFo to pad PdfVariants.
Parameters
pszData a null-terminated string to be copied.
Returns
10.16.3.2 const PdfData & PoDoFo::PdfData::operator= ( const PdfData & rhs ) [inline]
Returns
this object
PdfData cannot do any encryption for you. So the encryption object will be ignored as it is also the case for the
write mode!
Implements PoDoFo::PdfDataType.
#include <PdfDataType.h>
Inheritance diagram for PoDoFo::PdfDataType:
PoDoFo::PdfDataType
• virtual void Write (PdfOutputDevice ∗pDevice, EPdfWriteMode eWriteMode, const PdfEncrypt ∗p←-
Encrypt=NULL) const =0
• virtual bool IsDirty () const
• virtual void SetDirty (bool bDirty)
• void SetImmutable (bool bImmutable)
• bool GetImmutable () const
• PdfDataType ()
• void AssertMutable () const
See also
PdfName
PdfArray
PdfReference
PdfVariant
PdfDictionary
PdfString
Will throw an exception if called on an immutable object, so this should be called before actually changing a value!
Returns
The dirty flag is set if this variant has been modified after construction.
Usually the dirty flag is also set if you call any non-const member function as we cannot determine if you actually
changed something or not.
Returns
true if the value is dirty and has been modified since construction
See also
IsDirty
This is used by PdfImmediateWriter and PdfStreamedDocument so that no keys can be added to an object after
setting stream data on it.
Parameters
pDevice write the object to this device
eWriteMode additional options for writing this object
pEncrypt an encryption object which is used to encrypt this object or NULL to not encrypt this object
#include <PdfDate.h>
• PdfDate ()
• PdfDate (const time_t &t)
• PdfDate (const PdfString &sDate)
• virtual ∼PdfDate ()
• bool IsValid () const
• const time_t & GetTime () const
• void ToString (PdfString &rsString) const
This class is a date datatype as specified in the PDF reference. You can easily convert from Unix time_t to the PDF
time representation and back. Dates like these are used for example in the PDF info dictionary for the creation time
and date of the PDF file.
PdfDate objects are immutable.
From the PDF reference:
PDF defines a standard date format, which closely follows that of the international standard ASN.1 (Abstract Syntax
Notation One), defined in ISO/IEC 8824 (see the Bibliography). A date is a string of the form (D:YYYYMMDDH←-
HmmSSOHH'mm')
10.18.2.1 PoDoFo::PdfDate::PdfDate ( )
Use IsValid to check wether the time_t could be converted to a valid PdfDate object.
See also
IsValid()
Parameters
szDate the date and time of this object in PDF format. It has to be a string of the format (D:YYYY←-
MMDDHHmmSSOHH'mm'). Otherwise IsValid will return false.
Use IsValid to check wether the string could be converted to a valid PdfDate object.
See also
IsValid()
Returns
You can use this function to check wether the date you passed to the constructor could be converted to a valid pdf
date string or a valid time_t.
Returns
The value returned by this function can be used in any PdfObject where a date is needed.
Parameters
rsString write the date to a PdfString
#include <PdfDestination.h>
See also
PdfOutlineItem
PdfAnnotation
PdfDocument
Create a new PdfDestination from an existing PdfObject (such as loaded from a doc)
Parameters
pObject the object to construct from
pDocument a PDF document owning this destination, needed to resolve pages
Create a new PdfDestination from an existing PdfObject (such as loaded from a doc)
Parameters
pObject the object to construct from
pVecObjects a PdfVecObjects owning this destination, needed to resolve pages
Parameters
pPage a page which is the destination
eFit fit mode for the page. Must be ePdfDestinationFit_Fit or ePdfDestinationFit_FitB
Create a destination to a page with its contents magnified to fit into the given rectangle
Parameters
pPage a page which is the destination
rRect magnify the page so that the contents of the rectangle are visible
10.19.2.6 PoDoFo::PdfDestination::PdfDestination ( const PdfPage ∗ pPage, double dLeft, double dTop, double dZoom )
Create a new destination to a page with specified left and top coordinates and a zoom factor.
Parameters
pPage a page which is the destination
dLeft left coordinate
dTop top coordinate
dZoom zoom factor in the viewer
Adds this destination to an dictionary. This method handles the all the complexities of making sure it's added
correctly
If this destination is empty. Nothing will be added.
Parameters
dictionary the destination will be added to this dictionary
Returns
Returns
Get the destination Value Destination must be of type FitH, FitV or FitBH, otherwise exception is thrown
Returns
Get the destination Left position Destination must be of type XYZ, FitV or FitR otherwise exception is thrown.
Returns
Returns
Returns
Get the page that this destination points to Requires that this PdfDestination was somehow created by or from a
PdfDocument. Won't work otherwise.
Parameters
pDoc a PDF document owning this destination, needed to resolve pages
Returns
Get the page that this destination points to Requires that this PdfDestination was somehow created by or from a
PdfDocument. Won't work otherwise.
Parameters
pVecObjects a PdfVecObjects owning this destination, needed to resolve pages
Returns
Get the destination rect Destination must be of type FirR otherwise exception is thrown
Returns
Get the destination Top position Destination must be of type XYZ, FitH, FitR, FitBH otherwise exception is thrown.
Returns
Returns
Get the destination zoom Destination must be of type XYZ otherwise exception is thrown.
Returns
the zoom
Parameters
rhs copy this PdfDestination
Returns
this object
#include <PdfInputStream.h>
Inheritance diagram for PoDoFo::PdfDeviceInputStream:
PoDoFo::PdfInputStream
PoDoFo::PdfDeviceInputStream
Returns
the number of bytes read, -1 if an error ocurred and zero if no more bytes are available for reading.
Implements PoDoFo::PdfInputStream.
#include <PdfOutputStream.h>
Inheritance diagram for PoDoFo::PdfDeviceOutputStream:
PoDoFo::PdfOutputStream
PoDoFo::PdfDeviceOutputStream
Close the PdfOutputStream. This method may throw exceptions and has to be called before the descructor to end
writing.
No more data may be written to the output device after calling close.
Implements PoDoFo::PdfOutputStream.
Returns
Implements PoDoFo::PdfOutputStream.
#include <PdfDictionary.h>
Inheritance diagram for PoDoFo::PdfDictionary:
PoDoFo::PdfDataType
PoDoFo::PdfDictionary
• PdfDictionary ()
• PdfDictionary (const PdfDictionary &rhs)
• virtual ∼PdfDictionary ()
• const PdfDictionary & operator= (const PdfDictionary &rhs)
• bool operator== (const PdfDictionary &rhs) const
• bool operator!= (const PdfDictionary &rhs) const
• void Clear ()
• void AddKey (const PdfName &identifier, const PdfObject &rObject)
• void AddKey (const PdfName &identifier, const PdfObject ∗pObject)
• const PdfObject ∗ GetKey (const PdfName &key) const
• PdfObject ∗ GetKey (const PdfName &key)
• bool HasKey (const PdfName &key) const
• bool RemoveKey (const PdfName &identifier)
• void Write (PdfOutputDevice ∗pDevice, EPdfWriteMode eWriteMode, const PdfEncrypt ∗pEncrypt=NULL)
const
• void Write (PdfOutputDevice ∗pDevice, EPdfWriteMode eWriteMode, const PdfEncrypt ∗pEncrypt, const
PdfName &keyStop=PdfName::KeyNull) const
• const TKeyMap & GetKeys () const
• TKeyMap & GetKeys ()
• virtual bool IsDirty () const
• virtual void SetDirty (bool bDirty)
The PDF dictionary data type of PoDoFo (inherits from PdfDataType, the base class for such representations)
10.22.2.1 PoDoFo::PdfDictionary::PdfDictionary ( )
Parameters
rhs the PdfDictionary to copy
Destructor
10.22.3.1 void PoDoFo::PdfDictionary::AddKey ( const PdfName & identifier, const PdfObject & rObject )
Add a key to the dictionary. If an existing key of this name exists, its value is replaced and the old value object will
be deleted. The passed object is copied.
Parameters
identifier the key is identified by this name in the dictionary
rObject a variant object containing the data. The object is copied.
See also
IsDirty
10.22.3.2 void PoDoFo::PdfDictionary::AddKey ( const PdfName & identifier, const PdfObject ∗ pObject )
Add a key to the dictionary. If an existing key of this name exists, its value is replaced and the old value object will
be deleted. The passed object is copied.
This is an overloaded member function.
Parameters
identifier the key is identified by this name in the dictionary
rObject a variant object containing the data. The object is copied.
See also
IsDirty
Parameters
key look for the key names pszKey in the dictionary
Returns
Get the keys value out of the dictionary. This is an overloaded member function.
The returned value is a pointer to the internal object in the dictionary. It may be modified but is still owned by the
dictionary so it MUST not be deleted.
Parameters
key look for the key named key in the dictionary
Returns
Returns
Returns
Returns
The dirty flag is set if this variant has been modified after construction.
Usually the dirty flag is also set if you call any non-const member function as we cannot determine if you actually
changed something or not.
Returns
true if the value is dirty and has been modified since construction
See also
operator==
Asignment operator. Asign another PdfDictionary to this dictionary. This is a deep copy; all elements of the source
dictionary are duplicated.
Parameters
rhs the PdfDictionary to copy.
Returns
this PdfDictionary
See also
IsDirty
Comparison operator. If this dictionary contains all the same keys as the other dictionary, and for each key the
values compare equal, the dictionaries are considered equal.
Remove a key from this dictionary. If the key does not exists, this function does nothing.
Parameters
identifier the name of the key to delete
Returns
true if the key was found in the object and was removed if there was is no key with this name, false is returned.
See also
IsDirty
See also
IsDirty
Implements PoDoFo::PdfDataType.
#include <PdfDifferenceEncoding.h>
Inheritance diagram for PoDoFo::PdfDifferenceEncoding:
PoDoFo::PdfEncoding PoDoFo::PdfElement
PoDoFo::PdfDifferenceEncoding
Public Types
PdfDifferenceEncoding is an encoding, which is based on either the fonts encoding or a predefined encoding and
defines differences to this base encoding.
Enumerator
Parameters
rDifference the differences in this encoding
pParent parent PdfVecObjects. Add a newly created object to this vector.
bAutoDelete if true the encoding is deleted by its owning font
Add this encoding object to a dictionary usually be adding an /Encoding key in font dictionaries.
Parameters
rDictionary add the encoding to this dictionary
Implements PoDoFo::PdfEncoding.
Returns
Returns
an unicode PdfString.
Get the unicode character code for this encoding at the position nIndex. nIndex is a position between GetFirstChar()
and GetLastChar()
Parameters
nIndex character code at position index
Returns
See also
GetFirstChar
GetLastChar
Returns
Get a unique ID for this encoding which can used for comparisons!
Returns
Implements PoDoFo::PdfEncoding.
Returns
Implements PoDoFo::PdfEncoding.
Returns
Implements PoDoFo::PdfEncoding.
Returns
Parameters
inCodePoint a code point
Returns
#include <PdfEncoding.h>
Inheritance diagram for PoDoFo::PdfDocEncoding:
PoDoFo::PdfEncoding
PoDoFo::PdfSimpleEncoding
PoDoFo::PdfDocEncoding
• PdfDocEncoding ()
The PdfDocEncoding is the default encoding for all strings in PoDoFo which are data in the PDF file.
Do not allocate this class yourself, as allocations might be expensive. Try using PdfFont::DocEncoding.
See also
PdfFont::DocEncoding
Gets a table of 256 short values which are the big endian unicode code points that are assigned to the 256 values
of this encoding.
This table is used internally to convert an encoded string of this encoding to and from unicode.
Returns
Implements PoDoFo::PdfSimpleEncoding.
#include <PdfDocument.h>
Inheritance diagram for PoDoFo::PdfDocument:
PoDoFo::PdfDocument
PoDoFo::PdfMemDocument PoDoFo::PdfStreamedDocument
• virtual ∼PdfDocument ()
• virtual EPdfWriteMode GetWriteMode () const =0
• virtual EPdfVersion GetPdfVersion () const =0
• virtual bool IsLinearized () const =0
• PdfInfo ∗ GetInfo () const
• PdfOutlines ∗ GetOutlines (bool bCreate=ePdfCreateObject)
• PdfNamesTree ∗ GetNamesTree (bool bCreate=ePdfCreateObject)
• PdfAcroForm ∗ GetAcroForm (bool bCreate=ePdfCreateObject, EPdfAcroFormDefaulAppearance eDefault←-
Appearance=ePdfAcroFormDefaultAppearance_BlackText12pt)
• PdfPagesTree ∗ GetPagesTree () const
• int GetPageCount () const
• PdfPage ∗ GetPage (int nIndex) const
• PdfFont ∗ CreateFont (const char ∗pszFontName, bool bSymbolCharset=false, const PdfEncoding ∗const
pEncoding=PdfEncodingFactory::GlobalWinAnsiEncodingInstance(), PdfFontCache::EFontCreationFlags
eFontCreationFlags=PdfFontCache::eFontCreationFlags_AutoSelectBase14, bool bEmbedd=true)
• PdfFont ∗ CreateFont (const char ∗pszFontName, bool bBold, bool bItalic, bool bSymbolCharset=false, const
PdfEncoding ∗const pEncoding=PdfEncodingFactory::GlobalWinAnsiEncodingInstance(), PdfFontCache::←-
EFontCreationFlags eFontCreationFlags=PdfFontCache::eFontCreationFlags_AutoSelectBase14, bool b←-
Embedd=true, const char ∗pszFileName=NULL)
• PdfFont ∗ CreateFont (FT_Face face, bool bSymbolCharset=false, const PdfEncoding ∗const p←-
Encoding=PdfEncodingFactory::GlobalWinAnsiEncodingInstance(), bool bEmbedd=true)
• PdfFont ∗ CreateDuplicateFontType1 (PdfFont ∗pFont, const char ∗pszSuffix)
• PdfFont ∗ CreateFontSubset (const char ∗pszFontName, bool bBold, bool bItalic, bool bSymbol←-
Charset=false, const PdfEncoding ∗const pEncoding=PdfEncodingFactory::GlobalWinAnsiEncoding←-
Instance(), const char ∗pszFileName=NULL)
• FT_Library GetFontLibrary () const
• void EmbedSubsetFonts ()
• PdfPage ∗ CreatePage (const PdfRect &rSize)
• void CreatePages (const std::vector< PdfRect > &vecSizes)
• PdfPage ∗ InsertPage (const PdfRect &rSize, int atIndex)
• const PdfDocument & Append (const PdfMemDocument &rDoc, bool bAppendAll=true)
• const PdfDocument & InsertExistingPageAt (const PdfMemDocument &rDoc, int nPageIndex, int nAtIndex)
See also
PdfStreamedDocument
PdfMemDocument
10.25.3.1 void PoDoFo::PdfDocument::AddNamedDestination ( const PdfDestination & rDest, const PdfString & rsName )
Adds a PdfDestination into the global Names tree with the specified name, optionally replacing one of the same
name
Parameters
rDest the destination to be assigned
rsName the name for the destination
10.25.3.2 const PdfDocument & PoDoFo::PdfDocument::Append ( const PdfMemDocument & rDoc, bool bAppendAll =
true )
Returns
this document
Parameters
rFileSpec a file specification
TODO: DS: Make this generic so that it will work for any font type!
Returns
PdfFont∗ a pointer to a new PdfFont object. The returned object is owned by the PdfDocument.
Returns
Returns
PdfFont∗ a pointer to a new PdfFont object. The returned object is owned by the PdfDocument.
Creates a font subset which contains only a few characters and is embedded.
THIS WORKS ONLY FOR TTF FONTS!
Parameters
pszFontName name of the font as it is known to the system
bBold if true search for a bold font
bItalic if true search for an italic font
bSymbolCharset whether to use symbol charset, rather than unicode charset
pEncoding the encoding of the font. The font will not take ownership of this object.
pszFileName optional path of a fontfile which should be used
Returns
Creates a new page object and inserts it into the internal page tree. The returned page is owned by the Pdf←-
Document and will get deleted along with it!
Parameters
rSize a PdfRect spezifying the size of the page (i.e the /MediaBox key) in 1/1000th mm
Returns
Creates several new page objects and inserts them into the internal page tree. The created pages are owned by
the PdfDocument and will get deleted along with it!
Parameters
vecSizes a vector PdfRect's specifying the size of the pages (i.e the /MediaBox key) in PDF Units
Embeds all pending subset-fonts, is automatically done on Write(). Just call explicit in case PdfDocument is needed
as XObject
Fill an existing empty XObject from a page of another document This will append the other document with this one
Parameters
pXObj pointer to the XOject
rDoc the document to embedd into XObject
nPage page-number to embedd into XObject
bUseTrimBox if true try to use trimbox for size of xobject
Returns
Fill an existing empty XObject from an existing page from the current document If you need a page from another
document use FillXObjectFromDocumentPage, or append the documents manually
Parameters
pXObj pointer to the XOject
nPage page-number to embedd into XObject
bUseTrimBox if true try to use trimbox for size of xobject
Returns
Fill an existing empty XObject from an existing page pointer from the current document This is the implementation
for FillXObjectFromDocumentPage and FillXObjectFromExistingPage, you should use those directly instead of this
Parameters
pXObj pointer to the XOject
pPage pointer to the page to embedd into XObject
bUseTrimBox if true try to use trimbox for size of xobject
Returns
Recursively changes every PdfReference in the PdfObject and in any child that is either an PdfArray or a direct
object. The reference is changed so that difference is added to the object number if the reference.
Parameters
pObject object to change
difference add this value to every reference that is encountered
Returns
Returns
the file specification object if the file exists, NULL otherwise The file specification object is not owned by the
document and must be deleted by the caller
Returns
Returns
Returns
Get access to the internal Info dictionary You can set the author, title etc. of the document using the info dictionary.
Returns
Returns
Get access to the Names dictionary (where all the named objects are stored) The returned PdfNamesTree object is
owned by the PdfDocument.
Parameters
bCreate create the object if it does not exist (ePdfCreateObject) or return NULL if it does not exist
Returns
Returns
Returns
Get access to the Outlines (Bookmarks) dictionary The returned outlines object is owned by the PdfDocument.
Parameters
bCreate create the object if it does not exist (ePdfCreateObject) or return NULL if it does not exist
Returns
Get the PdfPage for a specific page in a document The returned page is owned by the PdfDocument and will get
deleted along with it!
Parameters
nIndex which page (0-based)
Returns
a pointer to a PdfPage for the requested page. The returned object is owned by the PdfDocument.
Returns
Returns
Get access to the pages tree. Better use GetPage and CreatePage methods.
Returns
Returns
Returns
Returns
Returns
Internal method for initializing the pages tree for this document
10.25.3.37 const PdfDocument & PoDoFo::PdfDocument::InsertExistingPageAt ( const PdfMemDocument & rDoc, int
nPageIndex, int nAtIndex )
Returns
this document
Creates a new page object and inserts it at index atIndex. The returned page is owned by the pages tree and will
get deleted along with it!
Parameters
rSize a PdfRect specifying the size of the page (i.e the /MediaBox key) in PDF units
atIndex index where to insert the new page (0-based)
Returns
Checks if it is allowed to extract text and graphics to support users with disabillities Every PDF consuming applica-
tions has to adhere this value!
Returns
true if you are allowed to extract text and graphics to support users with disabillities
See also
Checks if text and graphics extraction is allowed. Every PDF consuming applications has to adhere this value!
Returns
true if you are allowed to extract text and graphics from this document
See also
Checks if it is allowed to insert, create, rotate, delete pages or add bookmarks Every PDF consuming applications
has to adhere this value!
Returns
true if you are allowed to insert, create, rotate, delete pages or add bookmarks
See also
Checks if modifiying this document (besides annotations, form fields or changing pages) is allowed. Every PDF
consuming applications has to adhere this value!
Returns
See also
Checks if it is allowed to add or modify annotations or form fields Every PDF consuming applications has to adhere
this value!
Returns
See also
Checks if it is allowed to fill in existing form or signature fields Every PDF consuming applications has to adhere this
value!
Returns
See also
Checks if it is allowed to print a high quality version of this document Every PDF consuming applications has to
adhere this value!
Returns
true if you are allowed to print a high quality version of this document
See also
Returns
Checks if printing this document is allowed. Every PDF consuming applications has to adhere this value!
Returns
See also
Set the document's Viewer Preferences: Set the base URI of the document
TODO: DS document value!
Set the document's Viewer Preferences: Center the document in the viewers window
Set the document's Viewer Preferences: Display the title from the document information in the title of the viewer.
See also
SetTitle
Set the document's Viewer Preferences: Fit the document in the viewers window
Set wrapper for the fontconfig library. Useful to avoid initializing Fontconfig multiple times.
This setter can be called until first use of Fontconfig as the library is initialized at first use.
Set the document's Viewer Preferences: Hide the menubar in the viewer
Set the document's Viewer Preferences: Hide the toolbar in the viewer
Set the document's Viewer Preferences: Show only the documents contents and no controll elements such as
buttons and scrollbars in the viewer
Set the info object containing meta information. Deletes any old info object.
Parameters
pInfo the new info object (will be owned by PdfDocument)
Set the document's Viewer Preferences: Set the language of the document
Set the document's Viewer Preferences: Set the default print scaling of the document
TODO: DS use an enum here!
10.25.3.65 void PoDoFo::PdfDocument::SetViewerPreference ( const PdfName & whichPref, const PdfObject & valueObj )
[protected]
#include <PdfElement.h>
Inheritance diagram for PoDoFo::PdfElement:
PoDoFo::PdfElement
PoDoFo::PdfAction
PoDoFo::PdfAnnotation
PoDoFo::PdfContents
PoDoFo::PdfDifferenceEncoding
PoDoFo::PdfExtGState
PoDoFo::PdfFileSpec
PoDoFo::PdfFont
PoDoFo::PdfFunction
PoDoFo::PdfInfo
PoDoFo::PdfOutlineItem
PoDoFo::PdfPage
PoDoFo::PdfPagesTree
PoDoFo::PdfShadingPattern
PoDoFo::PdfTilingPattern
PoDoFo::PdfXObject
• PdfObject ∗ GetObject ()
• const PdfObject ∗ GetObject () const
PdfElement is a common base class for all elements in a PDF file. For example pages, action and annotations.
Every PDF element has one PdfObject and provides an easier interface to modify the contents of the dictionary.
A PdfElement base class can be created from an existing PdfObject or created from scratch. In the later case, the
PdfElement creates a PdfObject and adds it to a vector of objects.
A PdfElement cannot be created directly. Use one of the subclasses which implement real functionallity.
See also
PdfPage
PdfAction
PdfAnnotation
Create a PdfElement from an existing PdfObject The object might be of any data type, PdfElement will throw an
exception if the PdfObject if not of the same datatype as the expected one. This is necessary in rare cases. E.g. in
PdfContents.
Parameters
eExpected←- the expected datatype of this object
DataType
pObject pointer to the PdfObject that is modified by this PdfElement
Create a PdfObject in the parent of this PdfElement which might either be a PdfStreamedDocument, a PdfDocument
or a PdfVecObjects
Use this function in an own subclass of PdfElement to create new PdfObjects.
Parameters
pszType an optional /Type key of the created object
Returns
Get access to the internal object. Use this method if you need access to the internal object in a const-method
without having to do a const cast.
Returns
Returns
Returns
10.26.3.5 const char ∗ PoDoFo::PdfElement::TypeNameForIndex ( int i, const char ∗∗ ppTypes, long lLen ) const
[protected]
Convert an enum or index to its string representation which can be written to the PDF file.
This is a helper function for various PdfElement subclasses that need strings and enums for their SubTypes keys.
Parameters
i the index or enum value
ppTypes an array of strings containing the string mapping of the index
lLen the length of the string array
Returns
10.26.3.6 int PoDoFo::PdfElement::TypeNameToIndex ( const char ∗ pszType, const char ∗∗ ppTypes, long lLen, int
nUnknownValue ) const [protected]
Parameters
pszType the type as string
ppTypes an array of strings containing the string mapping of the index
lLen the length of the string array
nUnknownValue the value that is returned when the type is unknown
Returns
#include <PdfEncoding.h>
Inheritance diagram for PoDoFo::PdfEncoding:
PoDoFo::PdfEncoding
PoDoFo::PdfIso88592Encoding PoDoFo::PdfWin1250Encoding
Protected Attributes
• bool m_bToUnicodeIsLoaded
If true, ToUnicode has been parse.
A PdfEncoding is in PdfFont to transform a text string into a representation so that it can be displayed in a PDF file.
PdfEncoding can also be used to convert strings from a PDF file back into a PdfString.
Parameters
nFirstChar the first supported character code (either a byte value in the current encoding or a unicode
value)
nLastChar the last supported character code, must be larger than nFirstChar (either a byte value in the
current encoding or a unicode value)
Add this encoding object to a dictionary usually be adding an /Encoding key in font dictionaries.
Parameters
rDictionary add the encoding to this dictionary
Iterate over all unicode character points in this encoding, beginning with the first.
Returns
Returns
rEncodedString a string encoded by this encoding. Usually this string was read from a content stream.
pFont the font for which this string is converted
Returns
an unicode PdfString.
Iterate over all unicode character points in this encoding, beginning with the first.
Returns
Get the unicode character code for this encoding at the position nIndex. nIndex is a position between GetFirstChar()
and GetLastChar()
Parameters
nIndex character code at position index
Returns
See also
GetFirstChar
GetLastChar
Returns
Get a unique ID for this encoding which can used for comparisons!
Returns
Returns
Comparison operator.
Parameters
rhs the PdfEncoding to which this encoding should be compared
Returns
Comparison operator.
Parameters
rhs the PdfEncoding to which this encoding should be compared
Returns
#include <PdfDifferenceEncoding.h>
• PdfEncodingDifference ()
• PdfEncodingDifference (const PdfEncodingDifference &rhs)
• const PdfEncodingDifference & operator= (const PdfEncodingDifference &rhs)
• void AddDifference (int nCode, pdf_utf16be unicodeValue)
• void AddDifference (int nCode, pdf_utf16be unicodeValue, const PdfName &rName, bool bExplicit←-
Names=false)
• bool Contains (int nCode, PdfName &rName, pdf_utf16be &rValue) const
• void ToArray (PdfArray &rArray)
• size_t GetCount () const
A helper class for PdfDifferenceEncoding that can be used to create a differences array.
10.28.2.1 PoDoFo::PdfEncodingDifference::PdfEncodingDifference ( )
See also
AddDifference if you know the name of the code point use the overload below which is faster
10.28.3.2 void PoDoFo::PdfEncodingDifference::AddDifference ( int nCode, pdf_utf16be unicodeValue, const PdfName &
rName, bool bExplicitNames = false )
10.28.3.3 bool PoDoFo::PdfEncodingDifference::Contains ( int nCode, PdfName & rName, pdf_utf16be & rValue ) const
Returns
Get the number of differences in this object. If the user added .notdef as a difference it is counted, even it is no real
difference in the final encoding.
Returns
#include <PdfEncodingFactory.h>
Free's the memory allocated by the global encoding instancess in this singleton.
PoDoFo will reallocated these encodings as soon as they are needed again.
Only call this method if no other class of PoDoFo exists anymore, as PdfString etc contain pointers to the global
instances.
Singleton method which returns a global instance of IndentityEncoding useful for writing direct UTF8 strings.
Returns
Returns
See also
GlobalWinAnsiEncodingInstance, GlobalWin1250EncodingInstance
Returns
Returns
Returns
Returns
Returns
Returns
See also
GlobalWinAnsiEncodingInstance, GlobalIso88592EncodingInstance
Returns
See also
GlobalWin1250EncodingInstance, GlobalIso88592EncodingInstance
Returns
#include <PdfEncodingObjectFactory.h>
• static const PdfEncoding ∗ CreateEncoding (PdfObject ∗pObject, PdfObject ∗pToUnicode=NULL, bool b←-
ExplicitNames=false)
Parameters
pObject must be a name or an encoding dictionary
pToUnicode the optional ToUnicode dictionary
bExplicitNames if true, glyph names are meaningless explicit keys on the font (used for Type3 fonts)
Returns
a PdfEncoding or NULL
#include <PdfEncrypt.h>
Inherited by PoDoFo::PdfEncryptMD5Base.
Public Types
• enum EPdfKeyLength
• enum EPdfPermissions {
ePdfPermissions_Print = 0x00000004, ePdfPermissions_Edit = 0x00000008, ePdfPermissions_Copy =
0x00000010, ePdfPermissions_EditNotes = 0x00000020,
ePdfPermissions_FillAndSign = 0x00000100, ePdfPermissions_Accessible = 0x00000200, ePdf←-
Permissions_DocAssembly = 0x00000400, ePdfPermissions_HighPrint = 0x00000800 }
• enum EPdfEncryptAlgorithm { ePdfEncryptAlgorithm_RC4V1 = 1, ePdfEncryptAlgorithm_RC4V2 = 2, ePdf←-
EncryptAlgorithm_AESV2 = 4 }
Protected Attributes
• EPdfEncryptAlgorithm m_eAlgorithm
The used encryption algorithm.
• int m_keyLength
Length of encryption key.
• int m_rValue
Revision.
• pdf_int32 m_pValue
P entry in pdf document.
• EPdfKeyLength m_eKeyLength
The key length.
• std::string m_userPass
User password.
• std::string m_ownerPass
Owner password.
Class representing PDF encryption methods. (For internal use only) Based on code from Ulrich Telle: http←-
://wxcode.sourceforge.net/components/wxpdfdoc/ Original Copyright header:A class that is
used to encrypt a PDF file and set document permisions on the PDF file.
As a user of this class, you have only to instanciate a object of this class and pass it to PdfWriter, PdfMemDocument,
PdfStreamedDocument or PdfImmediateWriter. You do not have to call any other method of this class. The above
classes know how to handle encryption using Pdfencrypt.
Enumerator
A enum specifying a valid keylength for a PDF encryption key. Keys must be in the range 40 to 128 bit and have to
be a multiple of 8.
Adobe Reader supports only keys with 40, 128 or 256 bits!
Enumerator
10.31.4.1 virtual bool PoDoFo::PdfEncrypt::Authenticate ( const std::string & password, const PdfString & documentId )
[pure virtual]
Returns
Fill all keys into a encryption dictionary. This dictionary is usually added to the PDF files trailer under the /Encryption
key.
Parameters
rDictionary an empty dictionary which is filled with information about the used encryption algorithm
Create a PdfInputStream that decrypts all data read from it using the current settings of the PdfEncrypt object.
Warning: Currently only RC4 based encryption is supported using output streams!
Parameters
pInputStream the created PdfInputStream reads all decrypted data to this input stream.
Returns
Create a PdfOutputStream that encrypts all data written to it using the current settings of the PdfEncrypt object.
Warning: Currently only RC4 based encryption is supported using output streams!
Parameters
pOutputStream the created PdfOutputStream writes all encrypted data to this output stream.
Returns
See also
GenerateEncryptionKey with the documentID to generate the real encryption key using this information
See also
GetEnabledEncryptionAlgorithms
Copy constructor
Parameters
rhs another PdfEncrypt object which is copied
10.31.4.8 virtual void PoDoFo::PdfEncrypt::Encrypt ( const unsigned char ∗ inStr, pdf_long inLen, unsigned char ∗ outStr,
pdf_long outLen ) const [pure virtual]
Encrypt a wxString.
Encrypt a character string
Implemented in PoDoFo::PdfEncryptRC4, and PoDoFo::PdfEncryptAESV2.
Generate encryption key from user and owner passwords and protection key
Parameters
documentId the documentId of the current document
Retrieve the list of encryption algorithms that are used when loading a PDF document.
By default all alogrithms are enabled.
See also
IsEncryptionEnabled
SetEnabledEncryptionAlgorithms
Returns
Returns
Checks if it is allowed to extract text and graphics to support users with disabillities Every PDF consuming applica-
tions has to adhere this value!
Returns
true if you are allowed to extract text and graphics to support users with disabillities
See also
Checks if text and graphics extraction is allowed. Every PDF consuming applications has to adhere this value!
Returns
true if you are allowed to extract text and graphics from this document
See also
Checks if it is allowed to insert, create, rotate, delete pages or add bookmarks Every PDF consuming applications
has to adhere this value!
Returns
true if you are allowed to insert, create, rotate, delete pages or add bookmarks
See also
Checks if modifiying this document (besides annotations, form fields or changing pages) is allowed. Every PDF
consuming applications has to adhere this value!
Returns
See also
Checks if it is allowed to add or modify annotations or form fields Every PDF consuming applications has to adhere
this value!
Returns
See also
Returns
See also
GetEnabledEncryptionAlgorithms
SetEnabledEncryptionAlgorithms
Checks if it is allowed to fill in existing form or signature fields Every PDF consuming applications has to adhere this
value!
Returns
See also
Checks if it is allowed to print a high quality version of this document Every PDF consuming applications has to
adhere this value!
Returns
true if you are allowed to print a high quality version of this document
See also
Checks if printing this document is allowed. Every PDF consuming applications has to adhere this value!
Returns
See also
See also
Encrypt
Specify the list of encryption algorithms that should be used by PoDoFo when loading a PDF document.
This can be used to disable for example AES encryption/decryption which is unstable in certain cases.
See also
GetEnabledEncryptionAlgorithms
IsEncryptionEnabled
#include <PdfEncrypt.h>
Inheritance diagram for PoDoFo::PdfEncryptAESBase:
PoDoFo::PdfEncryptAESBase
PoDoFo::PdfEncryptAESV2
Protected Attributes
• AESCryptoEngine ∗ m_aes
AES encryptor.
A pure virtual class that is used to encrypt a PDF file (AES-128/256) This class is the base for classes that implement
algorithms based on AES
Client code is working only with PdfEncrypt class and knows nothing about PdfEncrypt∗, it is created through
CreatePdfEncrypt factory method
#include <PdfEncrypt.h>
Inheritance diagram for PoDoFo::PdfEncryptAESV2:
PoDoFo::PdfEncryptAESBase
PoDoFo::PdfEncryptAESV2
10.33.2.1 virtual bool PoDoFo::PdfEncryptAESV2::Authenticate ( const std::string & password, const PdfString &
documentId ) [virtual]
Returns
Implements PoDoFo::PdfEncrypt.
Create a PdfInputStream that decrypts all data read from it using the current settings of the PdfEncrypt object.
Warning: Currently only RC4 based encryption is supported using output streams!
Parameters
pInputStream the created PdfInputStream reads all decrypted data to this input stream.
Returns
Implements PoDoFo::PdfEncrypt.
Create a PdfOutputStream that encrypts all data written to it using the current settings of the PdfEncrypt object.
Warning: Currently only RC4 based encryption is supported using output streams!
Parameters
pOutputStream the created PdfOutputStream writes all encrypted data to this output stream.
Returns
Implements PoDoFo::PdfEncrypt.
Generate encryption key from user and owner passwords and protection key
Parameters
documentId the documentId of the current document
Implements PoDoFo::PdfEncrypt.
#include <PdfEncrypt.h>
Inherits PoDoFo::PdfEncryptMD5Base.
A class that is used to encrypt a PDF file (RC4 40-bit and 128-bit)
Client code is working only with PdfEncrypt class and knows nothing about PdfEncryptRC4, it is created through
CreatePdfEncrypt factory method
10.34.2.1 virtual bool PoDoFo::PdfEncryptRC4::Authenticate ( const std::string & password, const PdfString & documentId )
[virtual]
Returns
Implements PoDoFo::PdfEncrypt.
Create a PdfInputStream that decrypts all data read from it using the current settings of the PdfEncrypt object.
Warning: Currently only RC4 based encryption is supported using output streams!
Parameters
pInputStream the created PdfInputStream reads all decrypted data to this input stream.
Returns
Implements PoDoFo::PdfEncrypt.
Create a PdfOutputStream that encrypts all data written to it using the current settings of the PdfEncrypt object.
Warning: Currently only RC4 based encryption is supported using output streams!
Parameters
pOutputStream the created PdfOutputStream writes all encrypted data to this output stream.
Returns
Implements PoDoFo::PdfEncrypt.
Generate encryption key from user and owner passwords and protection key
Parameters
documentId the documentId of the current document
Implements PoDoFo::PdfEncrypt.
#include <PdfEncrypt.h>
Inherited by PoDoFo::PdfEncryptMD5Base.
• void RC4 (const unsigned char ∗key, int keylen, const unsigned char ∗textin, pdf_long textlen, unsigned char
∗textout, pdf_long textoutlen)
AES encryption.
Protected Attributes
• RC4CryptoEngine ∗ m_rc4
AES encryptor.
A pure virtual class that is used to encrypt a PDF file (RC4-40..128) This class is the base for classes that implement
algorithms based on RC4
Client code is working only with PdfEncrypt class and knows nothing about PdfEncrypt∗, it is created through
CreatePdfEncrypt factory method
#include <PdfError.h>
• PdfError ()
• PdfError (const EPdfError &eCode, const char ∗pszFile=NULL, int line=0, const char ∗pszInformation=NULL)
The error handling class of PoDoFo lib. Whenever a function encounters an error a PdfError object is returned.
A PdfError with Error() == ErrOk means successfull execution.
This class provides also meaningfull error descriptions.
10.36.2.1 PoDoFo::PdfError::PdfError ( )
10.36.2.2 PoDoFo::PdfError::PdfError ( const EPdfError & eCode, const char ∗ pszFile = NULL, int line = 0, const char ∗
pszInformation = NULL )
Parameters
eCode the error code of this object
pszFile the file in which the error has occured. Use the compiler macro FILE to initialize the field.
line the line in which the error has occured. Use the compiler macro LINE to initialize the field.
pszInformation additional information on this error which mayy be formatted like printf
Copy constructor
Parameters
rhs copy the contents of rhs into this object
10.36.3.1 void PoDoFo::PdfError::AddToCallstack ( const char ∗ pszFile = NULL, int line = 0, const char ∗ pszInformation =
NULL ) [inline]
Add callstack information to an error object. Always call this function if you get an error object but do not handle the
error but throw it again.
Parameters
pszFile the filename of the source file causing the error or NULL. Typically you will use the gcc macro
FILE here.
line the line of source causing the error or 0. Typically you will use the gcc macro LINE here.
pszInformation additional information on the error. e.g. how to fix the error. This string is intended to be
shown to the user.
Log a message to the logging system defined for PoDoFo for debugging
Parameters
pszMsg the message to be logged
Parameters
bEnable enable (true) or disable (false)
Returns
the error message or NULL if no error message for the specified error code is available.
Returns
the name or NULL if no name for the specified error code is available.
Returns
the callstack
Returns
Returns
true if an error code was set and false if the error code is ePdfError_ErrOk
10.36.3.12 void PoDoFo::PdfError::LogMessage ( ELogSeverity eLogSeverity, const char ∗ pszMsg, ... ) [static]
Parameters
eLogSeverity the severity of the log message
pszMsg the message to be logged
10.36.3.13 void PoDoFo::PdfError::LogMessage ( ELogSeverity eLogSeverity, const wchar_t ∗ pszMsg, ... ) [static]
Returns
Returns
Assignment operator
Parameters
rhs another PdfError object
Returns
this object
Parameters
eCode a EPdfError code
Returns
this object
Returns
Returns
10.36.3.21 void PoDoFo::PdfError::SetError ( const EPdfError & eCode, const char ∗ pszFile = NULL, int line = 0, const
char ∗ pszInformation = NULL ) [inline]
Parameters
pszInformation additional information on the error. e.g. how to fix the error. This string is intended to be
shown to the user.
Returns
Returns
#include <PdfFunction.h>
Inheritance diagram for PoDoFo::PdfExponentialFunction:
PoDoFo::PdfElement
PoDoFo::PdfFunction
PoDoFo::PdfExponentialFunction
• PdfExponentialFunction (const PdfArray &rDomain, const PdfArray &rC0, const PdfArray &rC1, double d←-
Exponent, PdfVecObjects ∗pParent)
• PdfExponentialFunction (const PdfArray &rDomain, const PdfArray &rC0, const PdfArray &rC1, double d←-
Exponent, PdfDocument ∗pParent)
10.37.2.1 PoDoFo::PdfExponentialFunction::PdfExponentialFunction ( const PdfArray & rDomain, const PdfArray & rC0,
const PdfArray & rC1, double dExponent, PdfVecObjects ∗ pParent )
10.37.2.2 PoDoFo::PdfExponentialFunction::PdfExponentialFunction ( const PdfArray & rDomain, const PdfArray & rC0,
const PdfArray & rC1, double dExponent, PdfDocument ∗ pParent )
#include <PdfExtension.h>
PdfExtension is a simple class that describes a vendor-specific extension to the official specifications.
#include <PdfExtGState.h>
Inheritance diagram for PoDoFo::PdfExtGState:
PoDoFo::PdfElement
PoDoFo::PdfExtGState
This class wraps the ExtGState object used in the Resource Dictionary of a Content-supporting element (page,
Pattern, etc.) The main usage is for transparency, but it also support a variety of prepress features.
Create a new PdfExtGState object which will introduce itself automatically to every page object it is used on.
Parameters
pParent parent vector of objects
Create a new PdfExtGState object which will introduce itself automatically to every page object it is used on.
Parameters
Returns the identifier of this ExtGState how it is known in the pages resource dictionary.
Returns
#include <PdfInputStream.h>
Inheritance diagram for PoDoFo::PdfFileInputStream:
PoDoFo::PdfInputStream
PoDoFo::PdfFileInputStream
Returns
Returns
Returns
the number of bytes read, -1 if an error ocurred and zero if no more bytes are available for reading.
Implements PoDoFo::PdfInputStream.
#include <PdfOutputStream.h>
Inheritance diagram for PoDoFo::PdfFileOutputStream:
PoDoFo::PdfOutputStream
PoDoFo::PdfFileOutputStream
Close the PdfOutputStream. This method may throw exceptions and has to be called before the descructor to end
writing.
No more data may be written to the output device after calling close.
Implements PoDoFo::PdfOutputStream.
Returns
Implements PoDoFo::PdfOutputStream.
#include <PdfFileSpec.h>
Inheritance diagram for PoDoFo::PdfFileSpec:
PoDoFo::PdfElement
PoDoFo::PdfFileSpec
• PdfFileSpec (const char ∗pszFilename, const unsigned char ∗data, ptrdiff_t size, PdfVecObjects ∗pParent,
bool bStripPath=false)
• const PdfString & GetFilename (bool canUnicode) const
A file specification is used in the PDF file to referr to another file. The other file can be a file outside of the PDF or
can be embedded into the PDF file itself.
10.42.2.1 PoDoFo::PdfFileSpec::PdfFileSpec ( const char ∗ pszFilename, const unsigned char ∗ data, ptrdiff_t size,
PdfVecObjects ∗ pParent, bool bStripPath = false )
Embeds the file in memory from "data" buffer under "pszFileName" fie name.
Returns
the filename of this file specification. if no general name is available it will try the Unix, Mac and DOS keys too.
#include <PdfFileStream.h>
Inheritance diagram for PoDoFo::PdfFileStream:
PoDoFo::PdfStream
PoDoFo::PdfFileStream
A PDF stream can be appended to any PdfObject and can contain arbitrary data.
Most of the time it will contain either drawing commands to draw onto a page or binary data like a font or an image.
A PdfFileStream writes all data directly to an output device without keeping it in memory. PdfFileStream is used
automatically when creating PDF files using PdfImmediateWriter.
See also
PdfVecObjects
PdfStream
PdfMemoryStream
PdfFileStream
Create a new PdfFileStream object which has a parent PdfObject. The stream will be deleted along with the parent.
This constructor will be called by PdfObject::Stream() for you.
Parameters
pParent parent object
pDevice output device
Parameters
pszString a buffer
lLen length of the buffer
See also
BeginAppend
Append
EndAppend
Implements PoDoFo::PdfStream.
Begin appending data to this stream. Clears the current stream contents.
Parameters
vecFilters use this filters to encode any data written to the stream.
Implements PoDoFo::PdfStream.
Get a malloced buffer of the current stream. No filters will be applied to the buffer, so if the stream is Flate com-
pressed the compressed copy will be returned.
The caller has to podofo_free() the buffer.
This is currently not implemented for PdfFileStreams and will raise an ePdfError_InternalLogic exception
Parameters
pBuffer pointer to the buffer address (output parameter)
lLen pointer to the buffer length (output parameter)
Implements PoDoFo::PdfStream.
Implements PoDoFo::PdfStream.
Returns
Implements PoDoFo::PdfStream.
Returns
Implements PoDoFo::PdfStream.
Get the streams length with all filters applied (eg the compressed length of a Flate compressed stream).
Returns
Implements PoDoFo::PdfStream.
Set an encryption object which is used to encrypt all data written to this stream.
Parameters
pEncrypt an encryption object or NULL if no encryption should be done
Implements PoDoFo::PdfStream.
#include <PdfFilter.h>
Inheritance diagram for PoDoFo::PdfFilter:
PoDoFo::PdfFilter
• PdfFilter ()
• virtual ∼PdfFilter ()
• virtual bool CanEncode () const =0
• void Encode (const char ∗pInBuffer, pdf_long lInLen, char ∗∗ppOutBuffer, pdf_long ∗plOutLen) const
• void BeginEncode (PdfOutputStream ∗pOutput)
• void EncodeBlock (const char ∗pBuffer, pdf_long lLen)
• void EndEncode ()
• virtual bool CanDecode () const =0
• void Decode (const char ∗pInBuffer, pdf_long lInLen, char ∗∗ppOutBuffer, pdf_long ∗plOutLen, const Pdf←-
Dictionary ∗pDecodeParms=NULL) const
• void BeginDecode (PdfOutputStream ∗pOutput, const PdfDictionary ∗pDecodeParms=NULL)
• void DecodeBlock (const char ∗pBuffer, pdf_long lLen)
• void EndDecode ()
• virtual EPdfFilter GetType () const =0
10.44.2.1 PoDoFo::PdfFilter::PdfFilter ( )
Parameters
pOutput decoded data will be written to this stream
pDecodeParms a dictionary containing additional information for decoding
Call DecodeBlock() to decode blocks of data and use EndDecode() to finish the decoding process.
See also
DecodeBlock
EndDecode
See also
BeginDecode
Call EncodeBlock() to encode blocks of data and use EndEncode() to finish the encoding process.
See also
EncodeBlock
EndEncode
See also
BeginEncode
Returns
Returns
10.44.3.7 void PoDoFo::PdfFilter::Decode ( const char ∗ pInBuffer, pdf_long lInLen, char ∗∗ ppOutBuffer, pdf_long ∗
plOutLen, const PdfDictionary ∗ pDecodeParms = NULL ) const
Decodes a buffer using a filter. The buffer will podofo_malloc()'d and has to be podofo_free()'d by the caller.
Parameters
pInBuffer input buffer
lInLen length of the input buffer
ppOutBuffer receives pointer to the buffer of the decoded data
plOutLen pointer to where to write the output buffer's length
pDecodeParms optional pointer to a decode-parameters dictionary containing additional information to de-
code the data. This pointer must be NULL if no decode-parameters dictionary is available.
Decode a block of data and write it to the PdfOutputStream specified by BeginDecode(). Ownership of the block is
not taken and remains with the caller.
The filter implementation need not immediately process the buffer, and might internally buffer some or all of it.
However, if it does this the buffer's contents will be copied, so it is guaranteed to be safe to free the passed buffer
after this call returns.
This method is a wrapper around DecodeBlockImpl().
BeginDecode() must be called before this function.
Parameters
pBuffer pointer to a buffer with data to encode
lLen length of data to encode.
See also
BeginDecode
EndDecode
10.44.3.9 virtual void PoDoFo::PdfFilter::DecodeBlockImpl ( const char ∗ pBuffer, pdf_long lLen ) [protected],
[pure virtual]
See also
DecodeBlock
10.44.3.10 void PoDoFo::PdfFilter::Encode ( const char ∗ pInBuffer, pdf_long lInLen, char ∗∗ ppOutBuffer, pdf_long ∗
plOutLen ) const
Encodes a buffer using a filter. The buffer will podofo_malloc()'d and has to be podofo_free()'d by the caller.
This function uses BeginEncode()/EncodeBlock()/EndEncode() internally, so it's not safe to use when progressive
encoding is in progress.
Parameters
pInBuffer input buffer
lInLen length of the input buffer
ppOutBuffer receives pointer to the buffer of the encoded data
plOutLen pointer to where to write the output buffer's length
Encode a block of data and write it to the PdfOutputStream specified by BeginEncode(). Ownership of the block is
not taken and remains with the caller.
The filter implementation need not immediately process the buffer, and might internally buffer some or all of it.
However, if it does this the buffer's contents will be copied, so it is guaranteed to be safe to free the passed buffer
after this call returns.
This method is a wrapper around EncodeBlockImpl().
BeginEncode() must be called before this function.
Parameters
pBuffer pointer to a buffer with data to encode
lLen length of data to encode.
See also
BeginEncode
EndEncode
10.44.3.12 virtual void PoDoFo::PdfFilter::EncodeBlockImpl ( const char ∗ pBuffer, pdf_long lLen ) [protected],
[pure virtual]
See also
EncodeBlock
See also
BeginDecode
DecodeBlock
See also
EndDecode
See also
BeginEncode
EncodeBlock
See also
EndEncode
Indicate that the filter has failed, and will be non-functional until BeginEncode() or BeginDecode() is next called. Call
this instead of EndEncode() or EndDecode if something went wrong. It clears the stream output but otherwise does
nothing.
After this method is called further calls to EncodeBlock(), DecodeBlock(), EndDecode() and EndEncode() before
the next BeginEncode() or BeginDecode() are guaranteed to throw without calling their virtual implementations.
Returns
PoDoFo::PdfOutputStream
PoDoFo::PdfFilteredDecodeStream
Close the PdfOutputStream. This method may throw exceptions and has to be called before the descructor to end
writing.
No more data may be written to the output device after calling close.
Implements PoDoFo::PdfOutputStream.
10.45.3.2 virtual pdf_long PoDoFo::PdfFilteredDecodeStream::Write ( const char ∗ pBuffer, pdf_long lLen ) [inline],
[virtual]
Implements PoDoFo::PdfOutputStream.
PoDoFo::PdfOutputStream
PoDoFo::PdfFilteredEncodeStream
Close the PdfOutputStream. This method may throw exceptions and has to be called before the descructor to end
writing.
No more data may be written to the output device after calling close.
Implements PoDoFo::PdfOutputStream.
10.46.3.2 virtual pdf_long PoDoFo::PdfFilteredEncodeStream::Write ( const char ∗ pBuffer, pdf_long lLen ) [inline],
[virtual]
Implements PoDoFo::PdfOutputStream.
#include <PdfFilter.h>
A factory to create a filter object for a filter type (as GetType() gives) from the EPdfFilter enum. All filters should be
created using this factory.
Returns
a new PdfFilter allocated using new, or NULL if no filter is available for this type.
Create a PdfOutputStream that applies a list of filters on all data written to it.
Parameters
filters a list of filters
pStream write all data to this PdfOutputStream after it has been decoded.
pDictionary pointer to a dictionary that might contain additional parameters for stream decoding. This
method will look for a key named DecodeParms in this dictionary and pass the information
found in that dictionary to the filters.
Returns
See also
PdfFilterFactory::CreateFilterList
Create a PdfOutputStream that applies a list of filters on all data written to it.
Parameters
filters a list of filters
pStream write all data to this PdfOutputStream after it has been encoded
Returns
See also
PdfFilterFactory::CreateFilterList
The passed PdfObject has to be a dictionary with a Filters key, a (possibly empty) array of filter names or a filter
name.
Parameters
pObject must define a filter or list of filters (can be empty, although then you should use TVecFilters'
default)
Returns
a list of filters
Returns
Returns
#include <PdfFiltersPrivate.h>
Inheritance diagram for PoDoFo::PdfFlateFilter:
PoDoFo::PdfFilter
PoDoFo::PdfFlateFilter
See also
BeginDecode
See also
EncodeBlockImpl
EndEncodeImpl
PdfFilter::BeginEncode
Returns
Implements PoDoFo::PdfFilter.
Returns
Implements PoDoFo::PdfFilter.
See also
DecodeBlock
Implements PoDoFo::PdfFilter.
See also
BeginEncodeImpl
EndEncodeImpl
Implements PoDoFo::PdfFilter.
See also
EndDecode
See also
BeginEncodeImpl
EncodeBlockImpl
Returns
Implements PoDoFo::PdfFilter.
#include <PdfFont.h>
Inheritance diagram for PoDoFo::PdfFont:
PoDoFo::PdfElement
PoDoFo::PdfFont
PoDoFo::PdfFontCID PoDoFo::PdfFontSimple
Before you can draw text on a PDF document, you have to create a font object first. You can reuse this font object
as often as you want.
Use PdfDocument::CreateFont to create a new font object. It will choose a correct subclass using PdfFontFactory.
This is only an abstract base class which is implemented for different font formats.
Create a new PdfFont object which will introduce itself automatically to every page object it is used on.
The font has a default font size of 12.0pt.
Parameters
pMetrics pointer to a font metrics object. The font in the PDF file will match this fontmetrics object. The
metrics object is deleted along with the font.
pEncoding the encoding of this font. The font will take ownership of this object depending on pEncoding-
>IsAutoDelete()
pParent parent of the font object
Reimplemented in PoDoFo::PdfFontType1.
10.49.3.2 void PoDoFo::PdfFont::AddUsedSubsettingGlyphs ( const PdfString & sText, long lStringLen ) [virtual]
See also
IsSubsetting
Embeds pending subset-font into PDF page Only call if IsSubsetting() returns true. Might throw an exception
otherwise.
See also
IsSubsetting
Returns
Returns
a PdfEncoding object.
Returns
Returns a handle to the fontmetrics object of this font. This can be used for size calculations of text strings when
drawn using this font.
Returns
Returns a handle to the fontmetrics object of this font. This can be used for size calculations of text strings when
drawn using this font.
Returns
Returns
Returns
Returns the identifier of this font how it is known in the pages resource dictionary.
Returns
Returns
Returns
See also
IsItalic
IsUnderlined
Returns
See also
IsBold
IsUnderlined
Returns
Returns
Returns
See also
IsBold
IsItalic
See also
IsBold
This can be called by PdfFontFactory to tell this font object that it belongs to a bold font.
Reimplemented in PoDoFo::PdfFontCID.
Parameters
fCharSpace character spacing in percent
Set the horizontal scaling of the font for compressing (< 100) and expanding (>100)
Parameters
fScale scaling in percent
See also
IsItalc
This can be called by PdfFontFactory to tell this font object that it belongs to an italic font.
Reimplemented in PoDoFo::PdfFontCID.
Parameters
fWordSpace word spacing in PDF units
Write a PdfString to a PdfStream in a format so that it can be used with this font. This is used by PdfPainter::Draw←-
Text to display a text string. The following PDF operator will be Tj
Parameters
rsString a unicode or ansi string which will be displayed
pStream the string will be appended to pStream without any leading or following whitespaces.
#include <PdfFontCache.h>
Public Types
See also
PdfDocument
Enumerator
10.50.3.3 PoDoFo::PdfFontCache::∼PdfFontCache ( )
Empty the internal font cache. This should be done when ever a new document is created or openened.
Get a font with specific id from the cache. If the font does not yet exist, copy from existing type1-font and set id.
Parameters
pFont an existing font
pszSuffix Suffix to add to font-id
Returns
Get a font from the cache. If the font does not yet exist, add it to the cache. This font is created from an existing
object.
Parameters
pObject a PdfObject that is a font
Returns
Get a font from the cache. If the font does not yet exist, add it to the cache.
Parameters
pszFontName a valid fontname
bBold if true search for a bold font
bItalic if true search for an italic font
bSymbolCharset whether to use symbol charset, rather than unicode charset
bEmbedd if true a font for embedding into PDF will be created
eFontCreation←- special flag to specify how fonts should be created
Flags
pEncoding the encoding of the font. The font will not take ownership of this object.
pszFileName optional path to a valid font file
Returns
10.50.4.6 PdfFont ∗ PoDoFo::PdfFontCache::GetFont ( FT_Face face, bool bSymbolCharset, bool bEmbedd, const
PdfEncoding ∗ const pEncoding = PdfEncodingFactory::GlobalWinAnsiEncodingInstance() )
Get a font from the cache. If the font does not yet exist, add it to the cache.
Parameters
Returns
Returns
Get a fontsubset from the cache. If the font does not yet exist, add it to the cache.
Parameters
pszFontName a valid fontname
bBold if true search for a bold font
bItalic if true search for an italic font
bSymbolCharset whether to use symbol charset, rather than unicode charset
pEncoding the encoding of the font. All characters of the encoding will be included in this subset. The
font will not take ownership of this object.
pszFileName optional path to a valid font file
Returns
Set wrapper for the fontconfig library. Useful to avoid initializing Fontconfig multiple times.
This setter can be called until first use of Fontconfig as the library is initialized at first use.
#include <PdfFontCID.h>
Inheritance diagram for PoDoFo::PdfFontCID:
PoDoFo::PdfElement
PoDoFo::PdfFont
PoDoFo::PdfFontCID
• PdfFontCID (PdfFontMetrics ∗pMetrics, const PdfEncoding ∗const pEncoding, PdfVecObjects ∗pParent, bool
bEmbed, bool bSubset)
• PdfFontCID (PdfFontMetrics ∗pMetrics, const PdfEncoding ∗const pEncoding, PdfObject ∗pObject, bool b←-
Embed)
• virtual void EmbedFont ()
• virtual void EmbedSubsetFont ()
• virtual void AddUsedSubsettingGlyphs (const PdfString &sText, long lStringLen)
Parameters
pMetrics pointer to a font metrics object. The font in the PDF file will match this fontmetrics object. The
metrics object is deleted along with the font.
pEncoding the encoding of this font. The font will take ownership of this object depending on pEncoding-
>IsAutoDelete()
pObject an existing PdfObject
bEmbed specifies the embedding of font
See also
IsSubsetting
Embeds pending subset-font into PDF page Only call if IsSubsetting() returns true. Might throw an exception
otherwise.
See also
IsSubsetting
Parameters
bEmbed if true embed the font data into the PDF file.
bSubset specifies the subsetting of the font; forces bEmbed to false, if set
See also
IsBold
This can be called by PdfFontFactory to tell this font object that it belongs to a bold font.
Reimplemented from PoDoFo::PdfFont.
See also
IsItalc
This can be called by PdfFontFactory to tell this font object that it belongs to an italic font.
Reimplemented from PoDoFo::PdfFont.
#include <PdfFontConfigWrapper.h>
• PdfFontConfigWrapper ()
• PdfFontConfigWrapper (const PdfFontConfigWrapper &rhs)
• void ∗ GetFontConfig ()
10.52.2.1 PoDoFo::PdfFontConfigWrapper::PdfFontConfigWrapper ( )
Get access to the internal fontconfig handle. Accesses to this handle have to be synchronized using a mutex!
See also
GetFontConfigMutex
Returns
#include <PdfFontFactory.h>
• static PdfFont ∗ CreateFontObject (PdfFontMetrics ∗pMetrics, int nFlags, const PdfEncoding ∗pEncoding,
PdfVecObjects ∗pParent)
• static PdfFont ∗ CreateFont (FT_Library ∗pLibrary, PdfObject ∗pObject)
• static PdfFont ∗ CreateBase14Font (const char ∗pszFontName, EPdfFontFlags eFlags, const PdfEncoding
∗const pEncoding, PdfVecObjects ∗pParent)
• static EPdfFontType GetFontType (const char ∗pszFilename)
This is a factory class which knows which implementation of PdfFont is required for a certain font type with certain
features (like encoding).
Creates a new base-14 font object (of class PdfFontType1Base14) if the font name (has to include variant) is one of
the base 14 fonts. The font name is to be given as specified (with an ASCII hyphen).
Parameters
pszFontName ASCII C string (zero-terminated) of the font name
eFlags one flag for font variant (Bold, Italic or BoldItalic)
pEncoding an encoding compatible with the font
pParent a vector of PDF objects to be the font object's owner
Returns
Returns
#include <PdfFontMetrics.h>
Inherited by PoDoFo::PdfFontMetricsBase14, PoDoFo::PdfFontMetricsFreetype, and PoDoFo::PdfFontMetrics←-
Object.
• virtual void GetWidthArray (PdfVariant &var, unsigned int nFirst, unsigned int nLast, const PdfEncoding ∗p←-
Encoding=NULL) const =0
Retrieve the width of the given character in PDF units in the current font
Parameters
c character
Returns
Retrieve the width of the given character in 1/1000th mm in the current font
Parameters
c character
Returns
Try to detect the internal fonttype from the file extension of a fontfile.
Parameters
pszFilename must be the filename of a font file
Returns
font type
Get the ascent of this font in PDF units for the current font size.
Returns
See also
GetPdfAscent
10.54.2.5 virtual void PoDoFo::PdfFontMetrics::GetBoundingBox ( PdfArray & array ) const [pure virtual]
Create the bounding box array as required by the PDF reference so that it can be written directly to a PDF file.
Parameters
array write the bounding box to this array.
Get the descent of this font in PDF units for the current font size. This value is usually negative!
Returns
See also
GetPdfDescent
Returns
Returns
Get a pointer to the actual font data - if it was loaded from memory.
Returns
Get the length of the actual font data - if it was loaded from memory.
Returns
Returns
the postscript name of the font or NULL string if no postscript name is available.
Returns
Returns
Returns
Returns
the glyhph id for the character or 0 if the glyph was not found.
Returns
Parameters
pszGlyphname name of the glyph
Returns
Get the italic angle of this font. Used to build the font dictionay
Returns
Returns
Returns
Get the ascent of this font Used to build the font dictionay
Returns
See also
GetAscent
Get the descent of this font Used to build the font dictionay
Returns
See also
GetDescent
Return the position of the strikeout for the current font size in PDF units
Returns
Return the position of the strikeout for the current font size in 1/1000th mm
Returns
Get the width of the strikeout for the current font size in PDF units
Returns
Get the width of the strikeout for the current font size in 1/1000th mm
Returns
Returns
NULL or a 6 uppercase letter and "+" sign prefix used for font subsets
Return the position of the underline for the current font size in PDF units
Returns
Return the position of the underline for the current font size in 1/1000th mm
Returns
Get the width of the underline for the current font size in PDF units
Returns
Get the width of the underline for the current font size in 1/1000th mm
Returns
Get the weight of this font. Used to build the font dictionay
Returns
10.54.2.33 virtual void PoDoFo::PdfFontMetrics::GetWidthArray ( PdfVariant & var, unsigned int nFirst, unsigned int nLast,
const PdfEncoding ∗ pEncoding = NULL ) const [pure virtual]
Create a width array for this font which is a required part of every font dictionary.
Parameters
var the final width array is written to this PdfVariant
nFirst first character to be in the array
nLast last character code to be in the array
pEncoding encoding for correct character widths. If not passed default (latin1) encoding is used
Returns
Symbol fonts do need special treatment in a few cases. Use this method to check if the current font is a symbol font.
Symbold fonts are detected by checking if they use FT_ENCODING_MS_SYMBOL as internal encoding.
Returns
Parameters
fCharSpace character spacing in percent
Set the horizontal scaling of the font for compressing (< 100) and expanding (>100) This is typically called from
PdfFont for you.
Parameters
fScale scaling in percent
Set the font size of this metrics object for width and height calculations. This is typically called from PdfFont for you.
Parameters
fSize font size in points
Retrieve the width of a given text string in PDF units when drawn with the current font
Parameters
rsString a PdfString from which the width shall be calculated
Returns
Retrieve the width of a given text string in PDF units when drawn with the current font
Parameters
pszText a text string of which the width should be calculated
nLength if != 0 only the width of the nLength first characters is calculated
Returns
10.54.2.43 double PoDoFo::PdfFontMetrics::StringWidth ( const pdf_utf16be ∗ pszText, unsigned int nLength = 0 ) const
Retrieve the width of a given text string in PDF units when drawn with the current font
Parameters
pszText a text string of which the width should be calculated
nLength if != 0 only the width of the nLength first characters is calculated
Returns
10.54.2.44 double PoDoFo::PdfFontMetrics::StringWidth ( const wchar_t ∗ pszText, unsigned int nLength = 0 ) const
Retrieve the width of a given text string in PDF units when drawn with the current font
Parameters
pszText a text string of which the width should be calculated
nLength if != 0 only the width of the nLength first characters is calculated
Returns
10.54.2.45 unsigned long PoDoFo::PdfFontMetrics::StringWidthMM ( const char ∗ pszText, unsigned int nLength = 0 ) const
[inline]
Retrieve the width of a given text string in 1/1000th mm when drawn with the current font
Parameters
pszText a text string of which the width should be calculated
nLength if != 0 only the width of the nLength first characters is calculated
Returns
10.54.2.46 unsigned long PoDoFo::PdfFontMetrics::StringWidthMM ( const pdf_utf16be ∗ pszText, unsigned int nLength = 0 )
const [inline]
Retrieve the width of a given text string in 1/1000th mm when drawn with the current font
Parameters
pszText a text string of which the width should be calculated
nLength if != 0 only the width of the nLength first characters is calculated
Returns
10.54.2.47 unsigned long PoDoFo::PdfFontMetrics::StringWidthMM ( const wchar_t ∗ pszText, unsigned int nLength = 0 )
const [inline]
Retrieve the width of a given text string in 1/1000th mm when drawn with the current font
Parameters
pszText a text string of which the width should be calculated
nLength if != 0 only the width of the nLength first characters is calculated
Returns
Retrieve the width of the given character in PDF units in the current font
Parameters
c character
Returns
#include <PdfFontSimple.h>
Inheritance diagram for PoDoFo::PdfFontSimple:
PoDoFo::PdfElement
PoDoFo::PdfFont
PoDoFo::PdfFontSimple
This is a common base class for simple fonts like truetype or type1 fonts.
Create a new PdfFont object which will introduce itself automatically to every page object it is used on.
The font has a default font size of 12.0pt.
Parameters
pMetrics pointer to a font metrics object. The font in the PDF file will match this fontmetrics object. The
metrics object is deleted along with the font.
pEncoding the encoding of this font. The font will take ownership of this object depending on pEncoding-
>IsAutoDelete()
pParent parent of the font object
Parameters
pDescriptor font descriptor object
10.55.3.3 void PoDoFo::PdfFontSimple::Init ( bool bEmbed, const PdfName & rsSubType ) [protected]
#include <PdfFontTrueType.h>
Inheritance diagram for PoDoFo::PdfFontTrueType:
PoDoFo::PdfElement
PoDoFo::PdfFont
PoDoFo::PdfFontSimple
PoDoFo::PdfFontTrueType
A PdfFont implementation that can be used to embedd truetype fonts into a PDF file or to draw with truetype fonts.
TrueType fonts are always embedded as suggested in the PDF reference.
Parameters
pMetrics pointer to a font metrics object. The font in the PDF file will match this fontmetrics object. The
metrics object is deleted along with the font.
pEncoding the encoding of this font. The font will take ownership of this object depending on pEncoding-
>IsAutoDelete()
pParent parent of the font object
bEmbed if true the font will get embedded.
#include <PdfFontTTFSubset.h>
Public Types
This class is able to build a new TTF font with only certain glyphs from an existing font.
Enumerator
eFontFileType_Unknown Unknown.
Create a new PdfFontTTFSubset from an existing TTF font file using an input device.
Parameters
pDevice a PdfInputDevice
pMetrics font metrics object for this font
eType the type of the font
nFaceIndex index of the face inside of the font
#include <PdfFontType1.h>
Inheritance diagram for PoDoFo::PdfFontType1:
PoDoFo::PdfElement
PoDoFo::PdfFont
PoDoFo::PdfFontSimple
PoDoFo::PdfFontType1
A PdfFont implementation that can be used to embedd type1 fonts into a PDF file or to draw with type1 fonts.
Parameters
pMetrics pointer to a font metrics object. The font in the PDF file will match this fontmetrics object. The
metrics object is deleted along with the font.
pEncoding the encoding of this font. The font will take ownership of this object depending on pEncoding-
>IsAutoDelete()
pObject an existing PdfObject
Implements PoDoFo::PdfFontSimple.
#include <PdfFontType1Base14.h>
Inheritance diagram for PoDoFo::PdfFontType1Base14:
PoDoFo::PdfElement
PoDoFo::PdfFont
PoDoFo::PdfFontSimple
PoDoFo::PdfFontType1Base14
A PdfFont implementation that can be used draw with base14 type1 fonts into a PDF file.
Parameters
pMetrics pointer to a font metrics object. The font in the PDF file will match this fontmetrics object. The
metrics object is deleted along with the font.
pEncoding the encoding of this font. The font will take ownership of this object depending on pEncoding-
>IsAutoDelete()
pObject an existing PdfObject
Implements PoDoFo::PdfFontSimple.
#include <PdfFontType3.h>
Inheritance diagram for PoDoFo::PdfFontType3:
PoDoFo::PdfElement
PoDoFo::PdfFont
PoDoFo::PdfFontSimple
PoDoFo::PdfFontType3
A PdfFont implementation that can be used to embedd type3 fonts into a PDF file or to draw with type3 fonts.
Type3 fonts are always embedded.
#include <PdfFunction.h>
Inheritance diagram for PoDoFo::PdfFunction:
PoDoFo::PdfElement
PoDoFo::PdfFunction
This class defines a PdfFunction. A function can be used in various ways in a PDF file. Examples are device
dependent rasterization for high quality printing or color transformation functions for certain colorspaces.
#include <PdfShadingPattern.h>
Inheritance diagram for PoDoFo::PdfFunctionBaseShadingPattern:
PoDoFo::PdfElement
PoDoFo::PdfShadingPattern
PoDoFo::PdfFunctionBaseShadingPattern
• PdfFunctionBaseShadingPattern (const PdfColor &rLL, const PdfColor &rUL, const PdfColor &rLR, const
PdfColor &rUR, const PdfArray &rMatrix, PdfVecObjects ∗pParent)
• PdfFunctionBaseShadingPattern (const PdfColor &rLL, const PdfColor &rUL, const PdfColor &rLR, const
PdfColor &rUR, const PdfArray &rMatrix, PdfDocument ∗pParent)
#include <PdfFiltersPrivate.h>
Inheritance diagram for PoDoFo::PdfHexFilter:
PoDoFo::PdfFilter
PoDoFo::PdfHexFilter
See also
BeginDecode
Returns
Implements PoDoFo::PdfFilter.
Returns
Implements PoDoFo::PdfFilter.
See also
DecodeBlock
Implements PoDoFo::PdfFilter.
See also
BeginEncodeImpl
EndEncodeImpl
Implements PoDoFo::PdfFilter.
See also
EndDecode
Returns
Implements PoDoFo::PdfFilter.
#include <PdfIdentityEncoding.h>
Inheritance diagram for PoDoFo::PdfIdentityEncoding:
PoDoFo::PdfEncoding
PoDoFo::PdfIdentityEncoding
PdfIdentityEncoding is a two-byte encoding which can be used with TrueType fonts to represent all characters
present in a font. If the font contains all unicode glyphs, PdfIdentityEncoding will support all unicode characters.
Add this encoding object to a dictionary usually be adding an /Encoding key in font dictionaries.
Parameters
rDictionary add the encoding to this dictionary
Implements PoDoFo::PdfEncoding.
Parameters
rString an unicode PdfString.
pFont the font for which this string is converted
Returns
Returns
an unicode PdfString.
Get the unicode character code for this encoding at the position nIndex. nIndex is a position between GetFirstChar()
and GetLastChar()
Parameters
nIndex character code at position index
Returns
See also
GetFirstChar
GetLastChar
Get a unique ID for this encoding which can used for comparisons!
Returns
Implements PoDoFo::PdfEncoding.
Returns
Implements PoDoFo::PdfEncoding.
Returns
Implements PoDoFo::PdfEncoding.
#include <PdfImage.h>
Inheritance diagram for PoDoFo::PdfImage:
PoDoFo::PdfElement PoDoFo::PdfCanvas
PoDoFo::PdfXObject
PoDoFo::PdfImage
A PdfImage object is needed when ever you want to embedd an image file into a PDF document. The PdfImage
object is embedded once and can be drawn as often as you want on any page in the document using PdfPainter
See also
GetImageReference
PdfPainter::DrawImage
SetImageData
Returns
Returns
Returns
Set an color/chroma-key mask on an image. The masked color will not be painted, i.e. masked as being transparent.
Parameters
r red RGB value of color that should be masked
g green RGB value of color that should be masked
b blue RGB value of color that should be masked
threshold colors are masked that are in the range [(r-threshold, r+threshold),(g-threshold,
g+threshold),(b-threshold, b+threshold)]
Set the color space of this image. The default value is ePdfColorSpace_DeviceRGB.
Parameters
eColorSpace one of ePdfColorSpace_DeviceGray, ePdfColorSpace_DeviceRGB and ePdfColorSpace_←-
DeviceCMYK, ePdfColorSpace_Indexed
indexedData this parameter is required only for ePdfColorSpace_Indexed and it contains string with one
number and then color palette, like "/DeviceRGB 15 <000000 00FF00...>" or the string array
can be a resource name.
See also
10.65.3.8 void PoDoFo::PdfImage::SetImageData ( unsigned int nWidth, unsigned int nHeight, unsigned int
nBitsPerComponent, PdfInputStream ∗ pStream )
See also
SetImageData
10.65.3.9 void PoDoFo::PdfImage::SetImageData ( unsigned int nWidth, unsigned int nHeight, unsigned int
nBitsPerComponent, PdfInputStream ∗ pStream, const TVecFilters & vecFilters )
10.65.3.10 void PoDoFo::PdfImage::SetImageDataRaw ( unsigned int nWidth, unsigned int nHeight, unsigned int
nBitsPerComponent, PdfInputStream ∗ pStream )
Set the actual image data from an input stream. The data has to be encoded already and an appropriate filters key
entry has to be set manually before!
Parameters
nWidth width of the image in pixels
nHeight height of the image in pixels
nBitsPer←- bits per color component of the image (depends on the image colorspace you have set but is
Component 8 in most cases)
pStream stream supplieding raw image data
See also
Apply an interpolation to the image if the source resolution is lower than the resolution of the output device. Default
is false.
Parameters
bValue whether the image should be interpolated
#include <PdfImmediateWriter.h>
Inheritance diagram for PoDoFo::PdfImmediateWriter:
PoDoFo::PdfImmediateWriter
Create a new PdfWriter that writes objects with streams immediately to a PdfOutputDevice
This has the advantage that large documents can be created without having to keep the whole document in memory.
Parameters
pDevice all stream streams are immediately written to this output device while the document is cre-
ated.
pVecObjects a vector of objects containing the objects which are written to disk
pTrailer the trailer object
eVersion the PDF version of the document to write. The PDF version can only be set in the constructor
as it is the first item written to the document on disk.
pEncrypt pointer to an encryption object or NULL. If not NULL the PdfEncrypt object will be copied and
used to encrypt the created document.
eWriteMode additional options for writing the pdf
Get the PDF version of the document The PDF version can only be set in the constructor as it is the first item written
to the document on disk
Returns
Returns
#include <PdfInfo.h>
Inheritance diagram for PoDoFo::PdfInfo:
PoDoFo::PdfElement
PoDoFo::PdfInfo
Public Types
This class provides access to the documents info dictionary, which provides information about the PDF document.
Enumerator
ePdfInfoInitial_WriteCreationTime Write the creation time (current time). Default for new documents.
ePdfInfoInitial_WriteModificationTime Write the modification time (current time). Default for loaded docu-
ments.
ePdfInfoInitial_WriteProducer Write producer key. Default for new documents.
10.67.3.3 PoDoFo::PdfInfo::∼PdfInfo ( )
Destructor
Returns
the author
Returns
creation date
Returns
the creator
Returns
the keywords
Returns
modification date
Returns
the producer
Returns
the subject
Returns
the title
Returns
the title
Parameters
sAuthor author
Set the creator of the document. Typically the name of the application using the library.
Parameters
sCreator creator
10.67.4.12 void PoDoFo::PdfInfo::SetCustomKey ( const PdfName & sName, const PdfString & sValue )
sTitle title
#include <PdfInputDevice.h>
This class provides an Input device which operates either on a file, a buffer in memory or any arbitrary std::istream
This class is suitable for inheritance to provide input devices of your own for PoDoFo. Just overide the required
virtual methods.
Parameters
pszFilename path to a file that will be opened and all data is read from this file.
Construct a new PdfInputDevice that reads all data from a memory buffer. The buffer will not be owned by this
object - it is COPIED.
Parameters
pBuffer a buffer in memory
lLen the length of the buffer in memory
CAN NOT Construct a new PdfInputDevice without an input source. However subclasses may well need to do just
that.
Returns
Set the stream error state. By default, clears badbit, eofbit and failbit.
Close the input device. No further operations may be performed on this device after calling this function.
Returns
Returns
Returns
True if the stream is seekable. Subclasses can control this value with SetIsSeekable(bool) .
Peek at next char in stream. /returns the next char in the stream
Returns
the number of bytes that have been read. If reading was successfull the number of read bytes is equal to lLen.
Get the current position in file. /returns the current position in the file
#include <PdfInputStream.h>
Inheritance diagram for PoDoFo::PdfInputStream:
PoDoFo::PdfInputStream
10.69.2.1 virtual pdf_long PoDoFo::PdfInputStream::Read ( char ∗ pBuffer, pdf_long lLen, pdf_long ∗ pTotalLeft = 0 )
[pure virtual]
Returns
the number of bytes read, -1 if an error ocurred and zero if no more bytes are available for reading.
#include <PdfEncoding.h>
Inheritance diagram for PoDoFo::PdfIso88592Encoding:
PoDoFo::PdfEncoding
PoDoFo::PdfSimpleEncoding
PoDoFo::PdfWinAnsiEncoding
PoDoFo::PdfIso88592Encoding
• PdfIso88592Encoding ()
ISO-8859-2 encoding
Gets a table of 256 short values which are the big endian unicode code points that are assigned to the 256 values
of this encoding.
This table is used internally to convert an encoded string of this encoding to and from unicode.
Returns
#include <PdfField.h>
Inheritance diagram for PoDoFo::PdfListBox:
PoDoFo::PdfListField
PoDoFo::PdfListBox
A list box
10.71.2.2 PoDoFo::PdfListBox::PdfListBox ( PdfPage ∗ pPage, const PdfRect & rRect, PdfAcroForm ∗ pParent )
10.71.2.3 PoDoFo::PdfListBox::PdfListBox ( PdfPage ∗ pPage, const PdfRect & rRect, PdfDocument ∗ pDoc )
10.71.2.4 PoDoFo::PdfListBox::PdfListBox ( PdfPage ∗ pPage, const PdfRect & rRect, PdfStreamedDocument ∗ pDoc
)
#include <PdfField.h>
Inheritance diagram for PoDoFo::PdfListField:
PoDoFo::PdfListField
PoDoFo::PdfComboBox PoDoFo::PdfListBox
A list of items in a PDF file. You cannot create this object directly, use PdfComboBox or PdfListBox instead.
See also
PdfComboBox
PdfListBox
10.72.2.2 PoDoFo::PdfListField::PdfListField ( EPdfField eField, PdfPage ∗ pPage, const PdfRect & rRect, PdfAcroForm
∗ pParent ) [protected]
10.72.2.3 PoDoFo::PdfListField::PdfListField ( EPdfField eField, PdfPage ∗ pPage, const PdfRect & rRect,
PdfDocument ∗ pDoc ) [protected]
10.72.2.4 PoDoFo::PdfListField::PdfListField ( EPdfField eField, PdfPage ∗ pPage, const PdfRect & rRect,
PdfStreamedDocument ∗ pDoc ) [protected]
Parameters
nIndex index of the item
Returns
Returns
Parameters
nIndex index of the item
Returns
the display text of the item or if it has no display text its value is returned. This call is equivalent to GetItem()
in this case
See also
GetItem
Returns
10.72.3.5 void PoDoFo::PdfListField::InsertItem ( const PdfString & rsValue, const PdfString & rsDisplayName =
PdfString::StringNull )
Returns
Returns
Returns
Returns
Parameters
nIndex index of the item to remove
Sets wether multiple items can be selected by the user in the list.
Parameters
bMulti if true multiselect will be enabled
Enable or disable sorting of items. The sorting does not happen in acrobat reader but whenever adding items using
PoDoFo or another PDF editing application.
Parameters
bSorted enable/disable sorting
#include <PdfFiltersPrivate.h>
Inheritance diagram for PoDoFo::PdfLZWFilter:
PoDoFo::PdfFilter
PoDoFo::PdfLZWFilter
See also
BeginDecode
See also
EncodeBlockImpl
EndEncodeImpl
PdfFilter::BeginEncode
Returns
Implements PoDoFo::PdfFilter.
Returns
Implements PoDoFo::PdfFilter.
See also
DecodeBlock
Implements PoDoFo::PdfFilter.
See also
BeginEncodeImpl
EndEncodeImpl
Implements PoDoFo::PdfFilter.
See also
EndDecode
See also
BeginEncodeImpl
EncodeBlockImpl
Returns
Implements PoDoFo::PdfFilter.
#include <PdfEncoding.h>
Inheritance diagram for PoDoFo::PdfMacRomanEncoding:
PoDoFo::PdfEncoding
PoDoFo::PdfSimpleEncoding
PoDoFo::PdfMacRomanEncoding
• PdfMacRomanEncoding ()
Do not allocate this class yourself, as allocations might be expensive. Try using PdfFont::MacRomanEncoding.
See also
PdfFont::MacRomanEncoding
Gets a table of 256 short values which are the big endian unicode code points that are assigned to the 256 values
of this encoding.
This table is used internally to convert an encoded string of this encoding to and from unicode.
Returns
Implements PoDoFo::PdfSimpleEncoding.
#include <PdfMemDocument.h>
Inheritance diagram for PoDoFo::PdfMemDocument:
PoDoFo::PdfDocument
PoDoFo::PdfMemDocument
• PdfMemDocument ()
• PdfMemDocument (bool bOnlyTrailer)
• PdfMemDocument (const char ∗pszFilename)
• virtual ∼PdfMemDocument ()
• void Load (const char ∗pszFilename)
• void Load (const char ∗pBuffer, long lLen)
• void Load (const PdfRefCountedInputDevice &rDevice)
• bool IsLoaded (void) const
• void Write (const char ∗pszFilename)
• void Write (PdfOutputDevice ∗pDevice)
• void SetWriteMode (EPdfWriteMode eWriteMode)
• virtual EPdfWriteMode GetWriteMode () const
• void SetPdfVersion (EPdfVersion eVersion)
• EPdfVersion GetPdfVersion () const
• void AddPdfExtension (const char ∗ns, pdf_int64 level)
• bool HasPdfExtension (const char ∗ns, pdf_int64 level) const
• void RemovePdfExtension (const char ∗ns, pdf_int64 level)
• std::vector< PdfExtension > GetPdfExtensions () const
PdfMemDocument is the core class for reading and manipulating PDF files and writing them back to disk.
PdfMemDocument was designed to allow easy access to the object structur of a PDF file.
PdfMemDocument should be used whenever you want to change the object structure of a PDF file.
When you are only creating PDF files, please use PdfStreamedDocument which is usually faster for creating PDFs.
See also
PdfDocument
PdfStreamedDocument
PdfParser
PdfWriter
10.75.2.1 PoDoFo::PdfMemDocument::PdfMemDocument ( )
This might throw a PdfError( ePdfError_InvalidPassword ) exception if a password is required to read this PDF. Call
SetPassword with the correct password in this case.
See also
SetPassword
Deletes one or more pages from this document It does NOT remove any PdfObjects from memory - just the refer-
ence from the pages tree. If you want to delete resources of this page, you have to delete them yourself, but the
resources might be used by other pages, too.
Parameters
inFirstPage the first page number to delete (0-based)
inNumPages the number of pages to delete
Returns
this document
10.75.3.3 void PoDoFo::PdfMemDocument::FreeObjectMemory ( const PdfReference & rRef, bool bForce = false )
Tries to free all memory allocated by the given PdfObject (variables and streams) and reads it from disk again if it is
requested another time.
This will only work if load on demand is used. Other- wise any call to this method will be ignored. Load on demand
is currently always enabled when using PdfMemDocument. If the object is dirty if will not be free'd.
Parameters
rRef free all memory allocated by the object with this reference.
bForce if true the object will be free'd even if IsDirty() returns true. So you will loose any changes
made to this object.
Tries to free all memory allocated by the given PdfObject (variables and streams) and reads it from disk again if it is
requested another time.
This will only work if load on demand is used. Other- wise any call to this method will be ignored. Load on demand
is currently always enabled when using PdfMemDocument. If the object is dirty if will not be free'd.
Parameters
pObj free object from memory
bForce if true the object will be free'd even if IsDirty() returns true. So you will loose any changes
made to this object.
See also
IsDirty
Returns
Returns
Returns
the parsers encryption object or NULL if the read PDF file was not encrypted
Returns
Returns
PdfFont∗ a pointer to a new PdfFont object. The returned object is owned by the PdfDocument.
Get access to the RFC 3066 natural language id for the document (ISO 32000-1:2008 14.9.2.1)
Returns
Returns
Returns
Returns
Returns
Get a reference to the sorted internal objects vector. This is an overloaded function for your convinience.
Returns
Return the list of all vendor-specific extensions to the current PDF version.
Parameters
ns namespace of the extension
level level of the extension
Returns
Implements PoDoFo::PdfDocument.
Returns
Get the trailer dictionary which can be written unmodified to a pdf file.
Returns
Implements PoDoFo::PdfDocument.
Checks whether the documents is tagged to imlpement a vendor-specific extension to the current PDF version.
Parameters
ns namespace of the extension
level level of the extension
Internal method to load all objects from a PdfParser object. The objects will be removed from the parser and are
now owned by the PdfMemDocument.
10.75.3.23 const PdfMemDocument & PoDoFo::PdfMemDocument::InsertPages ( const PdfMemDocument & rDoc, int
inFirstPage, int inNumPages )
Returns
this document
Checks if it is allowed to extract text and graphics to support users with disabillities Every PDF consuming applica-
tions has to adhere this value!
Returns
true if you are allowed to extract text and graphics to support users with disabillities
See also
Implements PoDoFo::PdfDocument.
Checks if text and graphics extraction is allowed. Every PDF consuming applications has to adhere this value!
Returns
true if you are allowed to extract text and graphics from this document
See also
Implements PoDoFo::PdfDocument.
Checks if it is allowed to insert, create, rotate, delete pages or add bookmarks Every PDF consuming applications
has to adhere this value!
Returns
true if you are allowed to insert, create, rotate, delete pages or add bookmarks
See also
Implements PoDoFo::PdfDocument.
Checks if modifiying this document (besides annotations, form fields or changing pages) is allowed. Every PDF
consuming applications has to adhere this value!
Returns
See also
Implements PoDoFo::PdfDocument.
Checks if it is allowed to add or modify annotations or form fields Every PDF consuming applications has to adhere
this value!
Returns
See also
Implements PoDoFo::PdfDocument.
Checks if it is allowed to fill in existing form or signature fields Every PDF consuming applications has to adhere this
value!
Returns
See also
Implements PoDoFo::PdfDocument.
Checks if it is allowed to print a high quality version of this document Every PDF consuming applications has to
adhere this value!
Returns
true if you are allowed to print a high quality version of this document
See also
Implements PoDoFo::PdfDocument.
Returns
Implements PoDoFo::PdfDocument.
Checks if printing this document is allowed. Every PDF consuming applications has to adhere this value!
Returns
See also
Implements PoDoFo::PdfDocument.
This might throw a PdfError( ePdfError_InvalidPassword ) exception if a password is required to read this PDF. Call
SetPassword with the correct password in this case.
See also
SetPassword
Parameters
pBuffer a memory area containing the PDF data
lLen length of the buffer
This might throw a PdfError( ePdfError_InvalidPassword ) exception if a password is required to read this PDF. Call
SetPassword with the correct password in this case.
See also
SetPassword
This might throw a PdfError( ePdfError_InvalidPassword ) exception if a password is required to read this PDF. Call
SetPassword with the correct password in this case.
See also
SetPassword
eKeyLength the length of the encryption key ranging from 40 to 256 bits (only used if eAlgorithm >=
ePdfEncryptAlgorithm_RC4V2)
See also
PdfEncrypt
If you try to open an encrypted PDF file, which requires a password to open, PoDoFo will throw a PdfError( ePdf←-
Error_InvalidPassword ) exception.
If you got such an exception, you have to set a password which should be used for opening the PDF.
The usual way will be to ask the user for the password and set the password using this method.
PdfParser will immediately continue to read the PDF file.
Parameters
sPassword a user or owner password which can be used to open an encrypted PDF file If the password
is invalid, a PdfError( ePdfError_InvalidPassword ) exception is thrown!
Set the PDF Version of the document. Has to be called before Write() to have an effect.
Parameters
eVersion version of the pdf document
See also
Write
This is an overloaded member function for your convinience. TODO: We will get problems here on linux, if we write
to the same filename we read the document from. Because the PdfParserObjects will read there streams data from
the file while we are writing it. The problem is that the stream data won't exist at this time as we truncated the file
already to zero length by opening it writeable.
TODO: We will get problems here on linux, if we write to the same filename we read the document from. Because
the PdfParserObjects will read there streams data from the file while we are writing it. The problem is that the
stream data won't exist at this time as we truncated the file already to zero length by opening it writeable.
#include <PdfInputStream.h>
Inheritance diagram for PoDoFo::PdfMemoryInputStream:
PoDoFo::PdfInputStream
PoDoFo::PdfMemoryInputStream
Parameters
pBuffer the data will be stored into this buffer
lLen the size of the buffer and number of bytes that will be read
Returns
the number of bytes read, -1 if an error ocurred and zero if no more bytes are available for reading.
Implements PoDoFo::PdfInputStream.
#include <PdfOutputStream.h>
Inheritance diagram for PoDoFo::PdfMemoryOutputStream:
PoDoFo::PdfOutputStream
PoDoFo::PdfMemoryOutputStream
An output stream that writes data to a memory buffer If the buffer is to small, it will be enlarged automatically.
DS: TODO: remove in favour of PdfBufferOutputStream.
Parameters
pBuffer handle to the buffer
lLen length of the buffer
Close the PdfOutputStream. This method may throw exceptions and has to be called before the descructor to end
writing.
No more data may be written to the output device after calling close.
Implements PoDoFo::PdfOutputStream.
Returns
Returns
The internal buffer is now owned by the caller and will not be deleted by PdfMemoryOutputStream. Further calls to
Write() are not allowed.
The caller has to free() the returned malloc()'ed buffer!
Returns
Implements PoDoFo::PdfOutputStream.
#include <PdfMemStream.h>
Inheritance diagram for PoDoFo::PdfMemStream:
PoDoFo::PdfStream
PoDoFo::PdfMemStream
A PDF stream can be appended to any PdfObject and can contain abitrary data.
A PDF memory stream is held completely in memory.
Most of the time it will contain either drawing commands to draw onto a page or binary data like a font or an image.
A PdfMemStream is implicitly shared and can therefore be copied very quickly.
Create a new PdfStream object which has a parent PdfObject. The stream will be deleted along with the parent.
This constructor will be called by PdfObject::Stream() for you.
Parameters
pParent parent object
Parameters
rhs the object to clone
See also
BeginAppend
Append
EndAppend
Implements PoDoFo::PdfStream.
Begin appending data to this stream. Clears the current stream contents.
Parameters
vecFilters use this filters to encode any data written to the stream.
Implements PoDoFo::PdfStream.
This function compresses any currently set stream using the FlateDecode(ZIP) algorithm. JPEG compressed
streams will not be compressed again using this function. Entries to the filter dictionary will be added if neces-
sary.
Get a read-only handle to the current stream data. The data will not be filtered before being returned, so (eg) calling
Get() on a Flate compressed stream will return a pointer to the Flate-compressed buffer.
Warning
Do not retain pointers to the stream's internal buffer, as it may be reallocated with any non-const operation.
Returns
Get a malloced buffer of the current stream. No filters will be applied to the buffer, so if the stream is Flate com-
pressed the compressed copy will be returned.
The caller has to podofo_free() the buffer.
Parameters
pBuffer pointer to where the buffer's address will be stored
lLen pointer to the buffer length (output parameter)
Implements PoDoFo::PdfStream.
Implements PoDoFo::PdfStream.
Returns
Implements PoDoFo::PdfStream.
Returns
Implements PoDoFo::PdfStream.
Get the stream's length. The length is that of the internal stream buffer, so (eg) for a Flate-compressed stream it will
be the length of the compressed data.
Returns
See also
Get()
Implements PoDoFo::PdfStream.
Returns
Implements PoDoFo::PdfStream.
#include <PdfMutexImpl_win32.h>
• PdfMutexImpl ()
• void Lock ()
• bool TryLock ()
• void UnLock ()
• void Lock ()
• bool TryLock ()
• void UnLock ()
• PdfMutexImpl ()
• void Lock ()
• bool TryLock ()
• void UnLock ()
A platform independent non-reentrant mutex, no-op implementation. This version is used if PoDoFo is built without
threading support.
PdfMutex is NOT part of PoDoFo's public API.
A platform independent reentrant mutex, pthread implementation.
PdfMutex is NOT part of PoDoFo's public API.
This is the pthread implementation, which is entirely inline.
A platform independent reentrant mutex, win32 implementation.
Returns
Returns
Returns
#include <PdfMutexWrapper.h>
A wrapper around PdfMutex. The mutex is locked in the constructor and unlocked in the destructor.
In debug builds all exceptions thrown by the mutex implementation are caught and logged before being rethrown.
Note that PdfMutexWrapper is not part of PoDoFo's public API.
Lock a mutex.
Parameters
rMutex the mutex to be locked.
#include <PdfName.h>
Inheritance diagram for PoDoFo::PdfName:
PoDoFo::PdfDataType
PoDoFo::PdfName
• PdfName ()
• PdfName (const std::string &sName)
• PdfName (const char ∗pszName)
• PdfName (const char ∗pszName, long lLen)
• std::string GetEscapedName () const
• PdfName (const PdfName &rhs)
• void Write (PdfOutputDevice ∗pDevice, EPdfWriteMode eWriteMode, const PdfEncrypt ∗pEncrypt=NULL)
const
• PODOFO_NOTHROW const std::string & GetName () const
• PODOFO_NOTHROW size_t GetLength () const
• PODOFO_NOTHROW const PdfName & operator= (const PdfName &rhs)
• PODOFO_NOTHROW bool operator== (const PdfName &rhs) const
• bool operator== (const char ∗rhs) const
• PODOFO_NOTHROW bool operator== (const std::string &rhs) const
• PODOFO_NOTHROW bool operator!= (const PdfName &rhs) const
• bool operator!= (const char ∗rhs) const
• PODOFO_NOTHROW bool operator< (const PdfName &rhs) const
This class represents a PdfName. Whenever a key is required you have to use a PdfName object.
PdfName are required as keys in PdfObject and PdfVariant objects.
PdfName may have a maximum length of 127 characters.
See also
PdfObject
PdfVariant
Create a new PdfName object from a string containing an escaped name string without the leading / .
Parameters
sName A string containing the escaped name
Returns
A new PdfName
Create a new PdfName object from a string containing an escaped name string without the leading / .
Parameters
pszName A string containing the escaped name
ilength length of the escaped string data. If a length of 0 is passed, the string data is expected to be
a zero terminated string.
Returns
A new PdfName
Returns
There is no corresponding GetEscapedLength(), since generating the return value is somewhat expensive.
Returns
Returns
the unescaped value of this name object without the leading slash
Returns
Returns
Returns
10.81.3.9 const PdfName & PoDoFo::PdfName::operator= ( const PdfName & rhs ) [inline]
Returns
Returns
Returns
Write the name to an output device in PDF format. This is an overloaded member function.
Parameters
pDevice write the object to this device
eWriteMode additional options for writing this object
pEncrypt an encryption object which is used to encrypt this object or NULL to not encrypt this object
Implements PoDoFo::PdfDataType.
10.82.2.1 PoDoFo::PdfNamedColor::PdfNamedColor ( const char ∗ pszName, const PdfColor & rColor ) [inline]
Copy constructor
Class destructor.
Returns
Returns
Returns
true if the passed string is smaller than the name of this color object.
Compare this color object to a PdfNamedColor comparing only the name. The comparison is case insensitive!
Returns
true if the passed string is smaller than the name of this color object.
Returns
#include <PdfObject.h>
Inheritance diagram for PoDoFo::PdfObject:
PoDoFo::PdfVariant
PoDoFo::PdfObject
PoDoFo::PdfParserObject
PoDoFo::PdfXRefStreamParserObject
• PdfObject ()
• PdfObject (const PdfReference &rRef, const char ∗pszType)
• PdfObject (const PdfReference &rRef, const PdfVariant &rVariant)
• PdfObject (const PdfVariant &var)
• PdfObject (bool b)
• PdfObject (pdf_int64 l)
• PdfObject (double d)
• PdfObject (const PdfString &rsString)
• PdfObject (const PdfName &rName)
• PdfObject (const PdfReference &rRef)
• PdfObject (const PdfArray &tList)
• PdfObject (const PdfDictionary &rDict)
• PdfObject (const PdfObject &rhs)
• PdfObject ∗ GetIndirectKey (const PdfName &key) const
• PdfObject ∗ MustGetIndirectKey (const PdfName &key) const
• void WriteObject (PdfOutputDevice ∗pDevice, EPdfWriteMode eWriteMode, PdfEncrypt ∗pEncrypt, const
PdfName &keyStop=PdfName::KeyNull) const
• pdf_long GetObjectLength (EPdfWriteMode eWriteMode)
• const PdfReference & Reference () const
• PdfStream ∗ GetStream ()
• const PdfStream ∗ GetStream () const
• bool HasStream () const
• PODOFO_NOTHROW bool operator< (const PdfObject &rhs) const
• PODOFO_NOTHROW bool operator== (const PdfObject &rhs) const
• void SetOwner (PdfVecObjects ∗pVecObjects)
• PdfVecObjects ∗ GetOwner () const
• const PdfObject & operator= (const PdfObject &rhs)
• void FlateCompressStream ()
• pdf_long GetByteOffset (const char ∗pszKey, EPdfWriteMode eWriteMode)
• void DelayedStreamLoad () const
• void EnableDelayedStreamLoading ()
• virtual void DelayedStreamLoadImpl ()
• PdfStream ∗ GetStream_NoDL ()
See also
WriteObject()
10.83.2.1 PoDoFo::PdfObject::PdfObject ( )
Create a PDF object with object and generation number -1 and the value of being an empty PdfDictionary.
10.83.2.3 PoDoFo::PdfObject::PdfObject ( const PdfReference & rRef, const PdfVariant & rVariant )
Create a PDF object with object and generation number -1 and the value of the passed variant.
Parameters
var the value of the object
Construct a PdfObject with object and generation number -1 and a bool as value.
Parameters
b the boolean value of this PdfObject
Construct a PdfObject with object and generation number -1 and a pdf_int64 as value.
Parameters
l the pdf_int64 value of this PdfObject
Construct a PdfObject with object and generation number -1 and a double as value.
Parameters
d the double value of this PdfObject
Construct a PdfObject with object and generation number -1 and a PdfString as value.
Parameters
rsString the string value of this PdfObject
Construct a PdfObject with object and generation number -1 and a PdfName as value.
Parameters
rName the value of this PdfObject
Construct a PdfObject with object and generation number -1 and a PdfReference as value.
Parameters
rRef the value of the this PdfObject
Construct a PdfObject with object and generation number -1 and a PdfArray as value.
Parameters
tList the value of the this PdfObject
Construct a PdfObject with object and generation number -1 and a PdfDictionary as value.
Parameters
rDict the value of the this PdfObject
Creates a copy of an existing PdfObject All assosiated objects and streams will be copied along with the PdfObject
Parameters
rhs PdfObject to clone
Dynamically load this object and any associated stream from a PDF file by calling the virtual method Delayed←-
StreamLoadImpl if the stream is not already loaded. Will call DelayedLoad() first if it is required.
Call graph:
DelayedStreamLoad —> DelayedLoad() –> DelayedLoadImpl() | –> DelayedStreamLoadImpl()
For objects complete created in memory this function does nothing.
Load the stream of the object if it has one and if delayed loading is enabled.
You should override this to control deferred stream loading in your subclass.
Never call this method directly; use DelayedStreamLoad() instead.
Reimplemented in PoDoFo::PdfParserObject.
Flag any stream associated with the object as incompletely loaded, so that DelayedStreamLoad() will be called
when needed.
All constructors initialize a PdfObject with delayed loading of streams disabled . If you want delayed loading of
streams you must ask for it. If you do so, call this method early in your ctor and be sure to override Delayed←-
StreamLoadImpl()
Note that it is quite possible to have a PdfObject that requires a delayed-load of its stream but does an immediate
load of the PdfVariant base. If you want to delay loading of that too, make sure to call EnableDelayedLoading().
This function compresses any currently set stream using the FlateDecode algorithm. JPEG compressed streams
will not be compressed again using this function. Entries to the filter dictionary will be added if necessary.
Calculate the byte offset of the key pszKey from the start of the object if the object was written to disk at the moment
of calling this function.
This function is very calculation intensive!
Parameters
pszKey key to calculate the byte offset
eWriteMode additional options for writing the PDF
Returns
Get the keys value out of the dictionary. If the key is a reference, the reference is resolved and the object pointed to
by the reference is returned.
Parameters
key look for the key named key in the dictionary
Returns
the found value or NULL if the value is not in the dictionary or if this object is no dictionary
Get the length of the object in bytes if it was written to disk now.
Parameters
eWriteMode additional options for writing the object
Returns
Returns
Get a handle to a PDF stream object If the PDF object does not have a stream, one will be created.
Returns
a PdfStream object
See also
IsDirty
Get a handle to a const PDF stream object If the PDF object does not have a stream, null is returned
Returns
Same as GetStream() but won't trigger a delayed load, so it's safe for use while a delayed load is in progress.
This will set the dirty flag of this object.
See also
IsDirty
Returns
MustGetIndirectKey() wraps GetIndirectKey to throw on null return. This makes it MUCH more readable to look up
deep chains of linked keys with the cost that it's not easy to tell at which point a missing key/object was encountered.
Returns
Exceptions
PdfError(ePdfError_No←- .
Object)
This operator is required for sorting a list of PdfObjects. It compares the objectnumber. If objectnumbers are equal,
the generation number is compared.
Creates a copy of an existing PdfObject All assosiated objects and streams will be copied along with the PdfObject
Parameters
rhs PdfObject to clone
Returns
Comperasion operator. Compares two PDF object only based on their object and generation number
Returns
Set the owner of this object, i.e. the PdfVecObjects to which this object belongs.
Parameters
pVecObjects a vector of pdf objects
#include <PdfObjectStreamParserObject.h>
A utility class for PdfParser that can parse an object stream object.
It is mainly here to make PdfParser more modular.
Create a new PdfObjectStreamParserObject from an existing PdfParserObject. The PdfParserObject will be re-
moved and deleted. All objects from the object stream will be read into memory.
Parameters
pParser PdfParserObject for an object stream
pVecObjects add loaded objecs to this vector of objects
rBuffer use this allocated buffer for caching
pEncrypt encryption object used to decrypt streams
#include <PdfOutlines.h>
Inheritance diagram for PoDoFo::PdfOutlineItem:
PoDoFo::PdfElement
PoDoFo::PdfOutlineItem
PoDoFo::PdfOutlines
A PDF outline item has an title and a destination. It is an element in the documents outline which shows its
hierarchical structure.
See also
PdfDocument
PdfOutlines
PdfDestination
10.85.2.2 PoDoFo::PdfOutlineItem::PdfOutlineItem ( const PdfString & sTitle, const PdfDestination & rDest,
PdfOutlineItem ∗ pParentOutline, PdfVecObjects ∗ pParent ) [protected]
10.85.2.3 PoDoFo::PdfOutlineItem::PdfOutlineItem ( const PdfString & sTitle, const PdfAction & rAction,
PdfOutlineItem ∗ pParentOutline, PdfVecObjects ∗ pParent ) [protected]
10.85.3.1 PdfOutlineItem ∗ PoDoFo::PdfOutlineItem::CreateChild ( const PdfString & sTitle, const PdfDestination &
rDest )
10.85.3.2 PdfOutlineItem ∗ PoDoFo::PdfOutlineItem::CreateNext ( const PdfString & sTitle, const PdfDestination &
rDest )
Create a PdfOutlineItem that is on the same level and follows the current item.
Parameters
sTitle title of this item
rDest destination of this item
10.85.3.3 PdfOutlineItem ∗ PoDoFo::PdfOutlineItem::CreateNext ( const PdfString & sTitle, const PdfAction & rAction )
Create a PdfOutlineItem that is on the same level and follows the current item.
Parameters
sTitle title of this item
rAction action of this item
Deletes this outline item and all its children from the outline hierarchy and removes all objects from the list of
PdfObjects All pointers to this item will be invalid after this function call.
Returns
Returns
Parameters
pDoc a PdfDocument owning this annotation. This is required to resolve names and pages.
Returns
Returns
the parent item of this item or NULL if it is the top level outlines dictionary
Get the color of the title of this item. Supported since PDF 1.4.
Returns
See also
SetTextColor
Get the color of the title of this item. Supported since PDF 1.4.
Returns
See also
SetTextColor
Get the color of the title of this item. Supported since PDF 1.4.
Returns
See also
SetTextColor
Returns
Returns
Returns
Returns
the next item or NULL if this is the last on the current level
Returns
the previous item or NULL if this is the first on the current level
Parameters
rDest the destination
Set the color of the title of this item. This property is supported since PDF 1.4.
Parameters
r red color component
g green color component
b blue color component
Set the text format of the title. Supported since PDF 1.4.
Parameters
eFormat the formatting options for the title
#include <PdfOutlines.h>
Inheritance diagram for PoDoFo::PdfOutlines:
PoDoFo::PdfElement
PoDoFo::PdfOutlineItem
PoDoFo::PdfOutlines
See also
PdfDocument
#include <PdfOutputDevice.h>
Inheritance diagram for PoDoFo::PdfOutputDevice:
PoDoFo::PdfOutputDevice
PoDoFo::PdfSignOutputDevice
• PdfOutputDevice ()
This class provides an output device which operates either on a file or on a buffer in memory. Additionally it can
count the bytes written to the device.
This class is suitable for inheritance to provide output devices of your own for PoDoFo. Just overide the required
virtual methods.
10.87.2.1 PoDoFo::PdfOutputDevice::PdfOutputDevice ( )
Construct a new PdfOutputDevice that does not write any data. Only the length of the data is counted.
Construct a new PdfOutputDevice that writes all data to a memory buffer. The buffer will not be owned by this object
and has to be allocated before.
Parameters
pBuffer a buffer in memory
lLen the length of the buffer in memory
Parameters
pOutStream write to this std::ostream
Construct a new PdfOutputDevice that writes all data to a PdfRefCountedBuffer. This output device has the advan-
tage that the PdfRefCountedBuffer will resize itself if more memory is needed to hold all data.
Parameters
pOutBuffer write to this PdfRefCountedBuffer
See also
PdfRefCountedBuffer
Flush the output files buffer to disk if this devices operates on a disk.
Reimplemented in PoDoFo::PdfSignOutputDevice.
Returns
See also
Init
Reimplemented in PoDoFo::PdfSignOutputDevice.
See also
Write
Reimplemented in PoDoFo::PdfSignOutputDevice.
10.87.3.4 void PoDoFo::PdfOutputDevice::PrintV ( const char ∗ pszFormat, long lBytes, va_list argptr ) [virtual]
See also
Write
Determine the length of a format string in bytes when written using PrintV
Parameters
pszFormat format string
args variable argument list
Returns
length in bytes
See also
PrintV
Returns
Reimplemented in PoDoFo::PdfSignOutputDevice.
Parameters
offset from the beginning of the file
Reimplemented in PoDoFo::PdfSignOutputDevice.
Returns
Reimplemented in PoDoFo::PdfSignOutputDevice.
Write data to the buffer. Use this call instead of Print if you want to write binary data to the PdfOutputDevice.
Parameters
pBuffer a pointer to the data buffer
lLen write lLen bytes of pBuffer to the PdfOutputDevice
See also
Reimplemented in PoDoFo::PdfSignOutputDevice.
#include <PdfOutputStream.h>
Inheritance diagram for PoDoFo::PdfOutputStream:
PoDoFo::PdfOutputStream
Close the PdfOutputStream. This method may throw exceptions and has to be called before the descructor to end
writing.
No more data may be written to the output device after calling close.
Implemented in PoDoFo::PdfBufferOutputStream, PoDoFo::PdfDeviceOutputStream, PoDoFo::PdfFiltered←-
DecodeStream, PoDoFo::PdfMemoryOutputStream, PoDoFo::PdfFilteredEncodeStream, and PoDoFo::PdfFile←-
OutputStream.
10.88.2.2 virtual pdf_long PoDoFo::PdfOutputStream::Write ( const char ∗ pBuffer, pdf_long lLen ) [pure virtual]
Returns
#include <PdfPage.h>
Inheritance diagram for PoDoFo::PdfPage:
PoDoFo::PdfElement PoDoFo::PdfCanvas
PoDoFo::PdfPage
PdfPage is one page in the pdf document. It is possible to draw on a page using a PdfPainter object. Every
document needs at least one page.
10.89.2.3 PoDoFo::PdfPage::PdfPage ( PdfObject ∗ pObject, const std::deque< PdfObject ∗ > & listOfParents )
Parameters
pObject an existing PdfObject
listOfParents a list of PdfObjects that are parents of this page and can be queried for inherited attributes.
The last object in the list is the most direct parent of this page.
Returns
Creates a PdfRect with the page size as values which is needed to create a PdfPage object from an enum which
are defined for a few standard page sizes.
Parameters
ePageSize the page size you want
bLandscape create a landscape pagesize instead of portrait (by exchanging width and height)
Returns
See also
GetNumAnnots
Delete the annotation object with reference ref from this page.
Parameters
ref the reference of an annotation object of this page.
See also
GetNumAnnots
Returns
See also
GetNumAnnots
Returns
Get the current BleedBox (extra area for printing purposes) in PDF units.
Returns
Get access to the contents object of this page. If you want to draw onto the page, you have to add drawing
commands to the stream of the Contents object.
Returns
a contents object
Implements PoDoFo::PdfCanvas.
Get access an object that you can use to ADD drawing to. If you want to draw onto the page, you have to add
drawing commands to the stream of the Contents object.
Returns
a contents object
Implements PoDoFo::PdfCanvas.
Returns
See also
GetNumFields
Returns
a PdfField
See also
GetNumFields
Returns
a constP dfField
10.89.3.13 PdfObject ∗ PoDoFo::PdfPage::GetFromResources ( const PdfName & rType, const PdfName & rKey )
Get an element from the pages resources dictionary, using a type (category) and a key.
Parameters
rType the type of resource to fetch (e.g. /Font, or /XObject)
rKey the key of the resource
Returns
10.89.3.14 const PdfObject ∗ PoDoFo::PdfPage::GetInheritedKey ( const PdfName & rName ) const [inline]
Method for getting a value that can be inherited Possible names that can be inherited according to the PDF specifi-
cation are: Resources, MediaBox, CropBox and Rotate
Returns
Returns
Get the number of annotations associated with this page \ returns int number of annotations
Returns
Page number inside of the document. The first page has the number 1, the last page has the number PdfPages←-
Tree:GetTotalNumberOfPages()
Returns
See also
PdfPagesTree:GetTotalNumberOfPages()
Returns
Implements PoDoFo::PdfCanvas.
Get access to the resources object of this page. This is most likely an internal object.
Returns
a resources object
Implements PoDoFo::PdfCanvas.
Returns
Returns
Returns
Returns
Parameters
iRotation Rotation to set to the page. Valid value are 0, 90, 180, 270.
#include <PdfPagesTree.h>
Inheritance diagram for PoDoFo::PdfPagesTree:
PoDoFo::PdfElement
PoDoFo::PdfPagesTree
Class for managing the tree of Pages in a PDF document Don't use this class directly. Use PdfDocument instead.
See also
PdfDocument
Clear internal cache of PdfPage objects. All references to PdfPage object will become invalid when calling this
method. All PdfPages will be deleted.
You normally will never have to call this method. It is only useful if one modified the page nodes of the pagestree
manually.
Creates a new page object and inserts it into the internal page tree. The returned page is owned by the pages tree
and will get deleted along with it!
Parameters
rSize a PdfRect specifying the size of the page (i.e the /MediaBox key) in PDF units
Returns
Creates several new page objects and inserts them into the internal page tree. The new pages are owned by the
pages tree and will get deleted along with it! Note: this function will attach all new pages onto the same page node
which can cause the tree to be unbalanced if
Parameters
vecSizes a vector of PdfRect specifying the size of each of the pages to create (i.e the /MediaBox key)
in PDF units
Delete the specified page object from the internal pages tree. It does NOT remove any PdfObjects from memory -
just the reference from the tree
Parameters
inPageNumber the page number (0-based) to be removed
The PdfPage object refering to this page will be deleted by this call! Empty page nodes will also be deleted.
See also
PdfMemDocument::DeletePages
Return a PdfPage for the specified Page index The returned page is owned by the pages tree and deleted along
with it.
Parameters
nIndex page index, 0-based
Returns
Return a PdfPage for the specified Page reference. The returned page is owned by the pages tree and deleted
along with it.
Parameters
ref the reference of the pages object
Returns
Returns
number of pages
Inserts an existing page object into the internal page tree. after the specified page number
Parameters
nAfterPageIndex an integer specifying after what page
• may be one of the special values from EPdfPageInsertionPoint. Pages are 0 based.
Inserts an existing page object into the internal page tree. after the specified page number
Parameters
nAfterPageIndex an integer specifying after what page
• may be one of the special values from EPdfPageInsertionPoint. Pages are 0 based.
pPage a PdfPage to be inserted, the PdfPage will not get owned by the PdfPagesTree
Creates a new page object and inserts it at index atIndex. The returned page is owned by the pages tree and will
get deleted along with it!
Parameters
rSize a PdfRect specifying the size of the page (i.e the /MediaBox key) in PDF units
atIndex index where to insert the new page (0-based)
Returns
10.90.3.11 void PoDoFo::PdfPagesTree::InsertPages ( int nAfterPageIndex, const std::vector< PdfObject ∗ > & vecPages )
Inserts a vector of page objects at once into the internal page tree after the specified page index (zero based index)
Parameters
nAfterPageIndex a zero based integer index specifying after what page to insert
#include <PdfPagesTreeCache.h>
See also
PdfCachedPagesTree
Add several PdfPage objects to the cache, replacing any existing at the given index
Parameters
nIndex zero based index of where the first page will be placed
vecPages vector of the page objects to add
Parameters
nIndex index of the page
Return a PdfPage for the specified Page index The returned page is owned by the pages tree and deleted along
with it.
Parameters
nIndex page index, 0-based
Returns
A page was inserted into the pagestree, therefore the cache has to be updated
Parameters
nAfterPageIndex zero based index of the page we are inserting after
Insert several pages into the pagestree, after the given index therefore the cache has to be updated
Parameters
nAfterPageIndex zero based index of the page we are inserting after
#include <PdfPainter.h>
Inheritance diagram for PoDoFo::PdfPainter:
PoDoFo::PdfPainter
PoDoFo::PdfPainterMM
• PdfPainter ()
• void ConvertRectToBezier (double dX, double dY, double dWidth, double dHeight, double pdPointX[ ], double
pdPointY[ ])
• virtual void AddToPageResources (const PdfName &rIdentifier, const PdfReference &rRef, const PdfName
&rName)
• void SetCurrentStrokingColor ()
• PdfString ExpandTabs (const PdfString &rsString, pdf_long lLen) const
Protected Attributes
• PdfStream ∗ m_pCanvas
• PdfCanvas ∗ m_pPage
• PdfFont ∗ m_pFont
• unsigned short m_nTabWidth
• PdfColor m_curColor
• bool m_isTextOpen
• std::ostringstream m_oss
• std::ostringstream m_curPath
This class provides an easy to use painter object which allows you to draw on a PDF page object.
During all drawing operations, you are still able to access the stream of the object you are drawing on directly.
All functions that take coordinates expect these to be in PDF User Units. Keep in mind that PDF has its coordinate
system origin at the bottom left corner.
10.92.2.1 PoDoFo::PdfPainter::PdfPainter ( )
Draw a string on a page. You have to call BeginText before the first call of this function and EndText after the last
call.
If you want more simpler text output and do not need the advanced text position features of MoveTextPos use
DrawText which is easier.
Parameters
sText the text string which should be printed
See also
SetFont()
MoveTextPos()
EndText()
Draw a string on a page. You have to call BeginText before the first call of this function and EndText after the last
call.
If you want more simpler text output and do not need the advanced text position features of MoveTextPos use
DrawText which is easier.
Parameters
sText the text string which should be printed
lStringLen draw only lLen characters of pszText
See also
SetFont()
MoveTextPos()
EndText()
10.92.3.3 void PoDoFo::PdfPainter::AddToPageResources ( const PdfName & rIdentifier, const PdfReference & rRef,
const PdfName & rName ) [protected], [virtual]
Register an object in the resource dictionary of this page so that it can be used for any following drawing operations.
Parameters
rIdentifier identifier of this object, e.g. /Ft0
rRef reference to the object you want to register
rName register under this key in the resource dictionary
10.92.3.4 void PoDoFo::PdfPainter::ArcTo ( double dX, double dY, double dRadiusX, double dRadiusY, double dRotation,
bool bLarge, bool bSweep )
Append a Arc to the current path Matches the SVG 'A' operator.
Parameters
dX x coordinate of the start point
dY y coordinate of the start point
dRadiusX x coordinate of the end point, which is the new current point
dRadiusY y coordinate of the end point, which is the new current point
dRotation degree of rotation in radians
bLarge large or small portion of the arc
bSweep sweep?
Begin drawing multiple text strings on a page using a given font object. You have to call SetFont before calling this
function.
If you want more simpler text output and do not need the advanced text position features of MoveTextPos use
DrawText which is easier.
Parameters
dX the x coordinate
dY the y coordinate
See also
SetFont()
AddText()
MoveTextPos()
EndText()
Clip the current path. Matches the PDF 'W' operator. This function is useful to construct an own path for drawing or
clipping.
Parameters
useEvenOdd←- select even-odd rule instead of nonzero winding number rule
Rule
Closes the current path by drawing a line from the current point to the starting point of the path. Matches the PDF
'h' operator. This function is useful to construct an own path for drawing or clipping.
10.92.3.10 void PoDoFo::PdfPainter::ConvertRectToBezier ( double dX, double dY, double dWidth, double dHeight, double
pdPointX[ ], double pdPointY[ ] ) [protected]
Coverts a rectangle to an array of points which can be used to draw an ellipse using 4 bezier curves.
The arrays plPointX and plPointY need space for at least 12 longs to be stored.
Parameters
dX x position of the bounding rectangle
dY y position of the bounding rectangle
dWidth width of the bounding rectangle
dHeight height of the bounding rectangle
pdPointX pointer to an array were the x coordinates of the resulting points will be stored
pdPointY pointer to an array were the y coordinates of the resulting points will be stored
10.92.3.11 void PoDoFo::PdfPainter::CubicBezierTo ( double dX1, double dY1, double dX2, double dY2, double dX3, double
dY3 )
Append a cubic bezier curve to the current path Matches the PDF 'c' operator.
Parameters
dX1 x coordinate of the first control point
dY1 y coordinate of the first control point
dX2 x coordinate of the second control point
dY2 y coordinate of the second control point
dX3 x coordinate of the end point, which is the new current point
dY3 y coordinate of the end point, which is the new current point
10.92.3.12 void PoDoFo::PdfPainter::DrawGlyph ( PdfMemDocument ∗ pDocument, double dX, double dY, const char ∗
pszGlyphname )
See also
SetFont()
10.92.3.13 void PoDoFo::PdfPainter::DrawImage ( double dX, double dY, PdfImage ∗ pObject, double dScaleX = 1.0,
double dScaleY = 1.0 )
Parameters
dX the x coordinate (bottom left position of the image)
dY the y coordinate (bottom position of the image)
pObject an PdfXObject
dScaleX option scaling factor in x direction
dScaleY option scaling factor in y direction
10.92.3.14 void PoDoFo::PdfPainter::DrawLine ( double dStartX, double dStartY, double dEndX, double dEndY )
10.92.3.15 void PoDoFo::PdfPainter::DrawMultiLineText ( double dX, double dY, double dWidth, double dHeight, const
PdfString & rsText, EPdfAlignment eAlignment = ePdfAlignment_Left, EPdfVerticalAlignment
eVertical = ePdfVerticalAlignment_Top, bool bClip = true )
Draw multiline text into a rectangle doing automatic wordwrapping. The current font is used and SetFont has to be
called at least once before using this function
Parameters
dX the x coordinate of the text area (left)
dY the y coordinate of the text area (bottom)
dWidth width of the text area
dHeight height of the text area
rsText the text which should be drawn
eAlignment alignment of the individual text lines in the given bounding box
eVertical vertical alignment of the text in the given bounding box
bClip set the clipping rectangle to the given rRect, otherwise no clipping is performed
10.92.3.16 void PoDoFo::PdfPainter::DrawMultiLineText ( const PdfRect & rRect, const PdfString & rsText,
EPdfAlignment eAlignment = ePdfAlignment_Left, EPdfVerticalAlignment eVertical =
ePdfVerticalAlignment_Top, bool bClip = true ) [inline]
Draw multiline text into a rectangle doing automatic wordwrapping. The current font is used and SetFont has to be
called at least once before using this function
Parameters
rRect bounding rectangle of the text
rsText the text which should be drawn
eAlignment alignment of the individual text lines in the given bounding box
eVertical vertical alignment of the text in the given bounding box
bClip set the clipping rectangle to the given rRect, otherwise no clipping is performed
10.92.3.17 void PoDoFo::PdfPainter::DrawText ( double dX, double dY, const PdfString & sText )
Draw a single-line text string on a page using a given font object. You have to call SetFont before calling this function.
Parameters
dX the x coordinate
dY the y coordinate
sText the text string which should be printed
See also
SetFont()
10.92.3.18 void PoDoFo::PdfPainter::DrawText ( double dX, double dY, const PdfString & sText, long lLen )
Draw a single-line text string on a page using a given font object. You have to call SetFont before calling this function.
Parameters
dX the x coordinate
dY the y coordinate
sText the text string which should be printed (is not allowed to be NULL!)
lLen draw only lLen characters of pszText
See also
SetFont()
10.92.3.19 void PoDoFo::PdfPainter::DrawTextAligned ( double dX, double dY, double dWidth, const PdfString & rsText,
EPdfAlignment eAlignment )
10.92.3.20 void PoDoFo::PdfPainter::DrawXObject ( double dX, double dY, PdfXObject ∗ pObject, double dScaleX = 1.0,
double dScaleY = 1.0 )
See also
DrawImage
10.92.3.21 void PoDoFo::PdfPainter::Ellipse ( double dX, double dY, double dWidth, double dHeight )
Parameters
dX x coordinate of the ellipse (left coordinate)
dY y coordinate of the ellipse (top coordinate)
dWidth width of the ellipse
dHeight absolute height of the ellipse
End current pathm without filling or stroking it. Matches the PDF 'n' operator.
See also
BeginText()
AddText()
MoveTextPos()
10.92.3.24 PdfString PoDoFo::PdfPainter::ExpandTabs ( const PdfString & rsString, pdf_long lLen ) const
[protected]
Returns
See also
SetTabWidth
Fill the current path. Matches the PDF 'f' operator. This function is useful to construct an own path for drawing or
clipping.
Parameters
useEvenOdd←- select even-odd rule instead of nonzero winding number rule
Rule
Fill then stroke the current path. Matches the PDF 'B' operator.
Parameters
useEvenOdd←- select even-odd rule instead of nonzero winding number rule
Rule
Return the current page canvas stream that is set on the painter.
Returns
the current page canvas stream of the painter or NULL if none is set
Get current path string stream. Stroke/Fill commands clear current path.
Returns
Returns
10.92.3.31 std::vector< PdfString > PoDoFo::PdfPainter::GetMultiLineTextAsLines ( double dWidth, const PdfString &
rsText )
Gets the text divided into individual lines, using the current font and clipping rectangle.
Parameters
dWidth width of the text area
rsText the text which should be drawn
Returns
Returns
how many decimal places will be written out for any floating point value
Returns
See also
DrawText
TabWidth
Append a horizontal line to the current path Matches the SVG 'H' operator
Parameters
dX x coordinate to draw the line to
Append a line segment to the current path. Matches the PDF 'l' operator. This function is useful to construct an own
path for drawing or clipping.
Parameters
dX x position
dY y position
Move position for text drawing on a page. You have to call BeginText before calling this function
If you want more simpler text output and do not need the advanced text position features of MoveTextPos use
DrawText which is easier.
Parameters
dX the x offset relative to pos of BeginText or last MoveTextPos
dY the y offset relative to pos of BeginText or last MoveTextPos
See also
BeginText()
AddText()
EndText()
Begin a new path. Matches the PDF 'm' operator. This function is useful to construct an own path for drawing or
clipping.
Parameters
dX x position
dY y position
10.92.3.40 void PoDoFo::PdfPainter::QuadCurveTo ( double dX1, double dY1, double dX3, double dY3 )
Append a quadratic bezier curve to the current path Matches the SVG 'Q' operator.
Parameters
dX1 x coordinate of the first control point
dY1 y coordinate of the first control point
dX3 x coordinate of the end point, which is the new current point
dY3 y coordinate of the end point, which is the new current point
10.92.3.41 void PoDoFo::PdfPainter::Rectangle ( double dX, double dY, double dWidth, double dHeight, double dRoundX =
0.0, double dRoundY = 0.0 )
10.92.3.42 void PoDoFo::PdfPainter::Rectangle ( const PdfRect & rRect, double dRoundX = 0.0, double dRoundY = 0.0 )
[inline]
Parameters
rRect the rectangle area
dRoundX rounding factor, x direction
dRoundY rounding factor, y direction
See also
DrawRect
Restore the current graphics settings from the graphics stack. Operator 'Q' in PDF. This call has to be balanced with
a corresponding call to Save()!
See also
Save
Save the current graphics settings onto the graphics stack. Operator 'q' in PDF. This call has to be balanced with a
corresponding call to Restore()!
See also
Restore
10.92.3.45 void PoDoFo::PdfPainter::SetClipRect ( double dX, double dY, double dWidth, double dHeight )
Set the color for all following non-stroking operations in rgb colorspace. This operation used the 'rg' PDF operator.
This color is also used when drawing text.
Parameters
r red value in the range 0.0 - 1.0
g green value in the range 0.0 - 1.0
b blue value in the range 0.0 - 1.0
Set the color for all following non-stroking operations in cmyk colorspace. This operation used the 'k' PDF operator.
Parameters
c cyan value in the range 0.0 - 1.0
m magenta value in the range 0.0 - 1.0
y yellow value in the range 0.0 - 1.0
k black value in the range 0.0 - 1.0
Sets the color that was last set by the user as the current stroking color. You should always enclose this function by
Save() and Restore()
See also
Save()
Restore()
See also
DrawText
Set the color for all following non-stroking operations in grayscale colorspace. This operation used the 'g' PDF
operator.
Parameters
g gray scale value in the range 0.0 - 1.0
Set the page on which the painter should draw. The painter will draw of course on the pages contents object.
Calls FinishPage() on the last page if it was not yet called.
Parameters
pPage a PdfCanvas object (most likely a PdfPage or PdfXObject).
See also
PdfPage
PdfXObject
FinishPage()
GetPage()
Parameters
intent the specific intent to set
Set the shading pattern for all following non-stroking operations. This operation uses the 'scn' PDF operator.
Parameters
rPattern a shading pattern
10.92.3.61 void PoDoFo::PdfPainter::SetStrokeStyle ( EPdfStrokeStyle eStyle, const char ∗ pszCustom = NULL, bool
inverted = false, double scale = 1.0, bool subtractJoinCap = false )
Set the color for all following stroking operations in rgb colorspace. This operation used the 'RG' PDF operator.
Parameters
r red value in the range 0.0 - 1.0
g green value in the range 0.0 - 1.0
b blue value in the range 0.0 - 1.0
Set the color for all following stroking operations in cmyk colorspace. This operation used the 'K' PDF operator.
Parameters
c cyan value in the range 0.0 - 1.0
m magenta value in the range 0.0 - 1.0
y yellow value in the range 0.0 - 1.0
k black value in the range 0.0 - 1.0
Set the color for all following stroking operations in grayscale colorspace. This operation used the 'G' PDF operator.
Parameters
g gray scale value in the range 0.0 - 1.0
Set the shading pattern for all following stroking operations. This operation uses the 'SCN' PDF operator.
Parameters
rPattern a shading pattern
Set the tiling pattern for all following stroking operations. This operation uses the 'SCN' PDF operator.
Parameters
rPattern a tiling pattern
Set the tiling pattern for all following stroking operations by pattern name, Use when it's already in resources. This
operation uses the 'SCN' PDF operator.
Parameters
rPatternName a tiling pattern name
Set the tab width for the DrawText operation. Every tab '\t' is replaced with nTabWidth spaces before drawing text.
Default is a value of 4
Parameters
nTabWidth replace every tabulator by this much spaces
See also
DrawText
TabWidth
Parameters
mode What text rendering mode to use.
Set the tiling pattern for all following non-stroking operations. This operation uses the 'scn' PDF operator.
Parameters
rPattern a tiling pattern
Set the tiling pattern for all following non-stroking operations by pattern name. Use when it's already in resources.
This operation uses the 'scn' PDF operator.
Parameters
rPattern a tiling pattern
Set the transformation matrix for the current coordinate system See the operator 'cm' in PDF.
The six parameters are a standard 3x3 transformation matrix where the 3 left parameters are 0 0 1.
Parameters
a scale in x direction
b rotation
c rotation
d scale in y direction
e translate in x direction
f translate in y direction
See also
Save()
Restore()
10.92.3.75 void PoDoFo::PdfPainter::SmoothCurveTo ( double dX2, double dY2, double dX3, double dY3 )
Append a smooth bezier curve to the current path Matches the SVG 'S' operator.
Parameters
dX2 x coordinate of the second control point
dY2 y coordinate of the second control point
dX3 x coordinate of the end point, which is the new current point
dY3 y coordinate of the end point, which is the new current point
Append a smooth quadratic bezier curve to the current path Matches the SVG 'T' operator.
Parameters
dX3 x coordinate of the end point, which is the new current point
dY3 y coordinate of the end point, which is the new current point
Stroke the current path. Matches the PDF 'S' operator. This function is useful to construct an own path for drawing
or clipping.
Append a vertical line to the current path Matches the SVG 'V' operator
Parameters
dY y coordinate to draw the line to
current path
Is between BT and ET
Every tab '\t' is replaced with m_nTabWidth spaces before drawing text. Default is a value of 4
All drawing operations work on this stream. This object may not be NULL. If it is NULL any function accessing it
should return ERROR_PDF_INVALID_HANDLE
The page object is needed so that fonts etc. can be added to the page resource dictionary as appropriate.
#include <PdfPainterMM.h>
Inheritance diagram for PoDoFo::PdfPainterMM:
PoDoFo::PdfPainter
PoDoFo::PdfPainterMM
• PdfPainterMM ()
• void SetStrokeWidthMM (long lWidth)
• void DrawLineMM (long lStartX, long lStartY, long lEndX, long lEndY)
• void RectangleMM (long lX, long lY, long lWidth, long lHeight)
• void EllipseMM (long lX, long lY, long lWidth, long lHeight)
• void DrawTextMM (long lX, long lY, const PdfString &sText)
• void DrawTextMM (long lX, long lY, const PdfString &sText, long lLen)
• void DrawImageMM (long lX, long lY, PdfImage ∗pObject, double dScaleX=1.0, double dScaleY=1.0)
• void DrawXObjectMM (long lX, long lY, PdfXObject ∗pObject, double dScaleX=1.0, double dScaleY=1.0)
• void LineToMM (long lX, long lY)
• void MoveToMM (long lX, long lY)
This class provides an easy to use painter object which allows you to draw on a PDF page object.
During all drawing operations, you are still able to access the stream of the object you are drawing on directly.
This painter takes all coordinates in 1/1000th mm instead of PDF units.
Developer note: we use ownership rather than inheritance here, so as to use the same methods names a PdfPainter
AND avoid compiler confusion on picking the right one.
See also
PdfPainter
10.93.3.1 void PoDoFo::PdfPainterMM::DrawImageMM ( long lX, long lY, PdfImage ∗ pObject, double dScaleX = 1.0,
double dScaleY = 1.0 ) [inline]
Parameters
lX the x coordinate (bottom left position of the image)
lY the y coordinate (bottom position of the image)
pObject an PdfXObject
dScaleX option scaling factor in x direction
dScaleY option scaling factor in y direction
10.93.3.2 void PoDoFo::PdfPainterMM::DrawLineMM ( long lStartX, long lStartY, long lEndX, long lEndY ) [inline]
10.93.3.3 void PoDoFo::PdfPainterMM::DrawTextMM ( long lX, long lY, const PdfString & sText ) [inline]
Draw a text string on a page using a given font object. You have to call SetFont before calling this function.
Parameters
lX the x coordinate
lY the y coordinate
sText the text string which should be printed
See also
PdfPainter::SetFont()
10.93.3.4 void PoDoFo::PdfPainterMM::DrawTextMM ( long lX, long lY, const PdfString & sText, long lLen ) [inline]
Draw a text string on a page using a given font object. You have to call SetFont before calling this function.
Parameters
lX the x coordinate
lY the y coordinate
sText the text string which should be printed (is not allowed to be NULL!)
lLen draw only lLen characters of pszText
See also
PdfPainter::SetFont()
10.93.3.5 void PoDoFo::PdfPainterMM::DrawXObjectMM ( long lX, long lY, PdfXObject ∗ pObject, double dScaleX = 1.0,
double dScaleY = 1.0 ) [inline]
Parameters
lX the x coordinate (bottom left position of the XObject)
lY the y coordinate (bottom position of the XObject)
pObject an PdfXObject
dScaleX option scaling factor in x direction
dScaleY option scaling factor in y direction
10.93.3.6 void PoDoFo::PdfPainterMM::EllipseMM ( long lX, long lY, long lWidth, long lHeight ) [inline]
Append a line segment to the current path. Matches the PDF 'l' operator. This function is useful to construct an own
path for drawing or clipping.
Parameters
lX x position
lY y position
Begin a new path. Matches the PDF 'm' operator. This function is useful to construct an own path for drawing or
clipping.
Parameters
lX x position
lY y position
10.93.3.9 void PoDoFo::PdfPainterMM::RectangleMM ( long lX, long lY, long lWidth, long lHeight ) [inline]
Parameters
lWidth in 1/1000th mm
#include <PdfParser.h>
Inheritance diagram for PoDoFo::PdfParser:
PoDoFo::PdfTokenizer
PoDoFo::PdfParser
PdfParser reads a PDF file into memory. The file can be modified in memory and written back using the PdfWriter
class. Most PDF features are supported
Create a new PdfParser object You have to open a PDF file using ParseFile later.
Parameters
pVecObjects vector to write the parsed PdfObjects to
See also
ParseFile
Create a new PdfParser object and open a PDF file and parse it into memory.
Parameters
pVecObjects vector to write the parsed PdfObjects to
pszFilename filename of the file which is going to be parsed
bLoadOn←- If true all objects will be read from the file at the time they are accessed first. If false all objects
Demand will be read immediately. This is faster if you do not need the complete PDF file in memory.
This might throw a PdfError( ePdfError_InvalidPassword ) exception if a password is required to read this PDF. Call
SetPassword() with the correct password in this case.
See also
SetPassword
10.94.2.3 PoDoFo::PdfParser::PdfParser ( PdfVecObjects ∗ pVecObjects, const char ∗ pBuffer, long lLen, bool
bLoadOnDemand = true )
Create a new PdfParser object and open a PDF file and parse it into memory.
Parameters
pVecObjects vector to write the parsed PdfObjects to
pBuffer buffer containing a PDF file in memory
lLen length of the buffer containing the PDF file
bLoadOn←- If true all objects will be read from the file at the time they are accessed first. If false all objects
Demand will be read immediately. This is faster if you do not need the complete PDF file in memory.
This might throw a PdfError( ePdfError_InvalidPassword ) exception if a password is required to read this PDF. Call
SetPassword() with the correct password in this case.
See also
SetPassword
Create a new PdfParser object and open a PDF file and parse it into memory.
Parameters
pVecObjects vector to write the parsed PdfObjects to
rDevice read from this PdfRefCountedInputDevice
bLoadOn←- If true all objects will be read from the file at the time they are accessed first. If false all objects
Demand will be read immediately. This is faster if you do not need the complete PDF file in memory.
This might throw a PdfError( ePdfError_InvalidPassword ) exception if a password is required to read this PDF. Call
SetPassword() with the correct password in this case.
See also
SetPassword
Checks for the existence of the %EOF marker at the end of the file. When strict mode is off it will also attempt to
setup the parser to ignore any garbage after the last %EOF marker. Simply raises an error if there is a problem with
the marker.
10.94.3.2 void PoDoFo::PdfParser::FindToken ( const char ∗ pszToken, const long lRange ) [protected]
Searches backwards from the end of the file and tries to find a token. The current file is positioned right after the
token.
Parameters
pszToken a token to find
lRange range in bytes in which to search begining at the end of the file
10.94.3.3 void PoDoFo::PdfParser::FindToken2 ( const char ∗ pszToken, const long lRange, size_t searchEnd )
[protected]
Searches backwards from the specified position of the file and tries to find a token. The current file is positioned
right after the token.
Parameters
pszToken a token to find
lRange range in bytes in which to search begining at the specified position of the file
searchEnd specifies position
Returns
the parsers encryption object or NULL if the read PDF file was not encrypted
Returns
Returns
Returns
Returns
true if this PdfParser loads all objects on demand at the time they are accessed for the first time. The default
is to load all object immediately. In this case false is returned.
Returns
Retrieve the number of incremental updates that have been applied to the last parsed PDF file.
0 means no update has been applied.
Returns
Returns
Returns
Returns
Get the trailer dictionary which can be written unmodified to a pdf file.
Checks wether this pdf is linearized or not. Initializes the linearization directory on sucess.
Returns
Checks the magic number at the start of the pdf file and sets the m_ePdfVersion member to the correct version of
the pdf file.
Returns
Returns
See also
SetStringParsing
Merge the information of this trailer object in the parsers main trailer object.
Parameters
pTrailer take the keys to merge from this dictionary.
This might throw a PdfError( ePdfError_InvalidPassword ) exception if a password is required to read this PDF. Call
SetPassword() with the correct password in this case.
See also
SetPassword
10.94.3.21 void PoDoFo::PdfParser::ParseFile ( const char ∗ pBuffer, long lLen, bool bLoadOnDemand = true )
This might throw a PdfError( ePdfError_InvalidPassword ) exception if a password is required to read this PDF. Call
SetPassword() with the correct password in this case.
See also
SetPassword
Parameters
rDevice the input device to read from
bLoadOn←- If true all objects will be read from the file at the time they are accessed first. If false all objects
Demand will be read immediately. This is faster if you do not need the complete PDF file in memory.
This might throw a PdfError( ePdfError_InvalidPassword ) exception if a password is required to read this PDF. Call
SetPassword() with the correct password in this case.
See also
SetPassword
Quick method to detect secured PDF files, i.e. a PDF with an /Encrypt key in the trailer directory.
Returns
Reads the xref sections and the trailers of the file in the correct order in the memory and takes care for linearized
pdf files.
Read the object with index nIndex from the object stream nObjNo and push it on the objects vector m_vecOffsets.
All objects are read from this stream and the stream object is free'd from memory. Further calls who try to read from
the same stream simply do nothing.
Parameters
nObjNo object number of the stream object
nIndex index of the object which should be parsed
Reads all objects from the pdf into memory from the offsets listed in m_vecOffsets.
If required an encryption object is setup first.
The actual reading happens in ReadObjectsInternal() either if no encryption is required or a correct encryption
object was initialized from SetPassword.
Reads all objects from the pdf into memory from the offsets listed in m_vecOffsets.
Requires a correctly setup PdfEncrypt object with correct password.
This method is called from ReadObjects or SetPassword.
See also
ReadObjects
SetPassword
Looks for a startxref entry at the current file position and saves its byteoffset to pXRefOffset.
Parameters
pXRefOffset store the byte offset of the xref section into this variable.
Reads the xref table from a pdf file. If there is no xref table, ReadXRefStreamContents() is called.
Parameters
lOffset read the table from this offset
bPositionAtEnd if true the xref table is not read, but the file stream is positioned directly after the table, which
allows reading a following trailer dictionary.
Specify if the parser should ignore broken objects, i.e. XRef entries that do not point to valid objects.
Default is to not ignore broken objects and throw an exception if one is found.
Parameters
bBroken if true broken objects will be ignored
Specify the maximum number of objects the parser should read. An exception is thrown if document contains more
objects than this. Use to avoid problems with very large documents with millions of objects, which use 500MB of
working set and spend 15 mins in Load() before throwing an out of memory exception.
Parameters
nMaxObjects set max number of objects
If you try to open an encrypted PDF file, which requires a password to open, PoDoFo will throw a PdfError( ePdf←-
Error_InvalidPassword ) exception.
If you got such an exception, you have to set a password which should be used for opening the PDF.
The usual way will be to ask the user for the password and set the password using this method.
PdfParser will immediately continue to read the PDF file.
Parameters
sPassword a user or owner password which can be used to open an encrypted PDF file If the password
is invalid, a PdfError( ePdfError_InvalidPassword ) exception is thrown!
Gives the encryption object from the parser. The internal handle will be set to NULL and the ownership of the object
is given to the caller.
Only call this if you need access to the encryption object before deleting the parser.
Returns
the parser's encryption object, or NULL if the read PDF file was not encrypted.
#include <PdfParserObject.h>
Inheritance diagram for PoDoFo::PdfParserObject:
PoDoFo::PdfVariant
PoDoFo::PdfObject PoDoFo::PdfTokenizer
PoDoFo::PdfParserObject
PoDoFo::PdfXRefStreamParserObject
A PdfParserObject constructs a PdfObject from a PDF file. Parsing starts always at the current file position.
Parse the object data from the given file handle starting at the current position.
Parameters
pCreator pointer to a PdfVecObjects to resolve object references
rDevice an open reference counted input device which is positioned in front of the object which is
going to be parsed.
rBuffer buffer to use for parsing to avoid reallocations
lOffset the position in the device from which the object shall be read if lOffset = -1, the object will be
read from the current position in the file.
Parse the object data for an internal object. You have to call ParseDictionaryKeys as next function call.
The following two parameters are used to avoid allocation of a new buffer in PdfSimpleParser.
Warning
Parameters
rBuffer buffer to use for parsing to avoid reallocations
Load all data of the object if load object on demand is enabled. Reimplemented from PdfVariant. Do not call this
directly, use DelayedLoad().
Reimplemented from PoDoFo::PdfVariant.
Load the stream of the object if it has one and if loading on demand is enabled. Reimplemented from PdfObject.
Do not call this directly, use DelayedStreamLoad().
Reimplemented from PoDoFo::PdfObject.
Tries to free all memory allocated by this PdfObject (variables and streams) and reads it from disk again if it is
requested another time.
This will only work if load on demand is used. If the object is dirty if will not be free'd.
Parameters
bForce if true the object will be free'd even if IsDirty() returns true. So you will loose any changes
made to this object.
See also
IsLoadOnDemand
IsDirty
Returns if this object has a stream object appended. which has to be parsed.
Returns
Returns
true if this PdfParser loads all objects at the time they are accessed for the first time. The default is to load all
object immediately. In this case false is returned.
Parse the object data from the given file handle If delayed loading is enabled, only the object and generation number
is read now and everything else is read later.
Parameters
pEncrypt an encryption dictionary which is used to decrypt strings and streams during parsing or N←-
ULL if the PDF file was not encrypted
bIsTrailer wether this is a trailer dictionary or not. trailer dictionaries do not have a object number etc.
Starts reading at the file position m_lStreamOffset and interprets all bytes as contents of the objects stream. It is
assumed that the dictionary has a valid /Length key already.
Called from DelayedStreamLoadImpl(). Do not call directly.
Sets wether this object shall be loaded on demand when it's data is accessed for the first time.
Parameters
bDelayed if true the object is loaded delayed.
Set the object number of this object. It is almost never necessary to use this call. It is only included for usage in the
PdfParser.
Parameters
nObjNo the new object number of this object
This structur contains all necessary values for a FlateDecode and LZWDecode Predictor. These values are normally
stored in the /DecodeParams key of a PDF dictionary.
#include <PdfField.h>
Inherits PoDoFo::PdfButton.
A push button is a button which has no state and value but can toggle actions.
10.97.2.2 PoDoFo::PdfPushButton::PdfPushButton ( PdfPage ∗ pPage, const PdfRect & rRect, PdfAcroForm ∗ pParent )
10.97.2.3 PoDoFo::PdfPushButton::PdfPushButton ( PdfPage ∗ pPage, const PdfRect & rRect, PdfDocument ∗ pDoc )
Returns
Returns
Set the alternate caption of this button which is displayed when the button is pressed.
Parameters
rsText the caption
Set the rollover caption of this button which is displayed when the cursor enters the field without the mouse button
being pressed
Parameters
rsText the caption
#include <PdfShadingPattern.h>
Inheritance diagram for PoDoFo::PdfRadialShadingPattern:
PoDoFo::PdfElement
PoDoFo::PdfShadingPattern
PoDoFo::PdfRadialShadingPattern
• PdfRadialShadingPattern (double dX0, double dY0, double dR0, double dX1, double dY1, double dR1, const
PdfColor &rStart, const PdfColor &rEnd, PdfVecObjects ∗pParent)
• PdfRadialShadingPattern (double dX0, double dY0, double dR0, double dX1, double dY1, double dR1, const
PdfColor &rStart, const PdfColor &rEnd, PdfDocument ∗pParent)
10.98.2.1 PoDoFo::PdfRadialShadingPattern::PdfRadialShadingPattern ( double dX0, double dY0, double dR0, double dX1,
double dY1, double dR1, const PdfColor & rStart, const PdfColor & rEnd, PdfVecObjects ∗ pParent )
Parameters
dX0 the inner circles x coordinate
dY0 the inner circles y coordinate
dR0 the inner circles radius
dX1 the outer circles x coordinate
dY1 the outer circles y coordinate
dR1 the outer circles radius
rStart the starting color
rEnd the ending color
pParent the parent
10.98.2.2 PoDoFo::PdfRadialShadingPattern::PdfRadialShadingPattern ( double dX0, double dY0, double dR0, double dX1,
double dY1, double dR1, const PdfColor & rStart, const PdfColor & rEnd, PdfDocument ∗ pParent )
#include <PdfRect.h>
• PdfRect ()
• PdfRect (double left, double bottom, double width, double height)
• PdfRect (const PdfArray &inArray)
• PdfRect (const PdfRect &rhs)
• void ToVariant (PdfVariant &var) const
• std::string ToString () const
• void FromArray (const PdfArray &inArray)
• void Intersect (const PdfRect &rRect)
• double GetBottom () const
• void SetBottom (double dBottom)
• double GetLeft () const
• void SetLeft (double lLeft)
• double GetWidth () const
• void SetWidth (double lWidth)
• double GetHeight () const
• void SetHeight (double lHeight)
10.99.2.1 PoDoFo::PdfRect::PdfRect ( )
10.99.2.2 PoDoFo::PdfRect::PdfRect ( double left, double bottom, double width, double height )
Create a rectangle with a given size and position All values are in PDF units NOTE: since PDF is bottom-left origined,
we pass the bottom instead of the top
Copy constructor
Assigns the values of this PdfRect from the 4 values in the array
Parameters
inArray the array to load the values from
Returns
bottom
Returns
Returns
Returns
Parameters
lWidth in PDF units
Returns
Converts the rectangle into an array based on PDF units and adds the array into an variant.
Parameters
var the variant to store the Rect
#include <PdfRefCountedBuffer.h>
• PdfRefCountedBuffer ()
• PdfRefCountedBuffer (char ∗pBuffer, size_t lSize)
• PdfRefCountedBuffer (size_t lSize)
• PdfRefCountedBuffer (const PdfRefCountedBuffer &rhs)
• ∼PdfRefCountedBuffer ()
• char ∗ GetBuffer () const
• size_t GetSize () const
• void Resize (size_t lSize)
• const PdfRefCountedBuffer & operator= (const PdfRefCountedBuffer &rhs)
• void SetTakePossesion (bool bTakePossession)
• bool TakePossesion () const
• bool operator== (const PdfRefCountedBuffer &rhs) const
• bool operator< (const PdfRefCountedBuffer &rhs) const
• bool operator> (const PdfRefCountedBuffer &rhs) const
A reference counted buffer object which is deleted as soon as the last object having access to it is delteted.
The attached memory object can be resized.
Created an empty reference counted buffer The buffer will be initialize to NULL
Created an reference counted buffer and use an exiting buffer The buffer will be owned by this object.
Parameters
pBuffer a pointer to an allocated buffer
lSize size of the allocated buffer
See also
SetTakePossesion
Decrease the reference count and delete the buffer if this is the last owner
Returns
the buffer
Returns
Compare to buffers.
Parameters
rhs compare to this buffer
Returns
Returns
Compare to buffers.
Parameters
rhs compare to this buffer
Returns
Compare to buffers.
Parameters
rhs compare to this buffer
Returns
If the PdfRefCountedBuffer has no possesion on its buffer, it won't delete the buffer. By default the buffer is owned
and deleted by the PdfRefCountedBuffer object.
Parameters
bTake←- if false the buffer will not be deleted.
Possession
Returns
true if the buffer is owned by the PdfRefCountedBuffer and is deleted along with it.
#include <PdfRefCountedInputDevice.h>
• PdfRefCountedInputDevice ()
• PdfRefCountedInputDevice (const char ∗pszFilename, const char ∗pszMode)
• PdfRefCountedInputDevice (const char ∗pBuffer, size_t lLen)
• PdfRefCountedInputDevice (PdfInputDevice ∗pDevice)
• PdfRefCountedInputDevice (const PdfRefCountedInputDevice &rhs)
• ∼PdfRefCountedInputDevice ()
• PODOFO_NOTHROW PdfInputDevice ∗ Device () const
• const PdfRefCountedInputDevice & operator= (const PdfRefCountedInputDevice &rhs)
A reference counted input device object which is closed as soon as the last object having access to it is deleted.
10.101.2.1 PoDoFo::PdfRefCountedInputDevice::PdfRefCountedInputDevice ( )
Created an empty reference counted input device object The input device will be initialize to NULL
Create a new PdfRefCountedInputDevice which reads from a file. The file is opened using fopen()
Parameters
pszFilename a filename to be passed to fopen
pszMode a mode string that can be passed to fopen
Parameters
pBuffer pointer to the buffer
lLen length of the buffer
10.101.2.6 PoDoFo::PdfRefCountedInputDevice::∼PdfRefCountedInputDevice ( )
Decrease the reference count and close the file if this is the last owner
Returns
Returns
#include <PdfReference.h>
Inheritance diagram for PoDoFo::PdfReference:
PoDoFo::PdfDataType
PoDoFo::PdfReference
• PdfReference ()
• PdfReference (const pdf_objnum nObjectNo, const pdf_gennum nGenerationNo)
• PdfReference (const PdfReference &rhs)
• const std::string ToString () const
• PODOFO_NOTHROW const PdfReference & operator= (const PdfReference &rhs)
• void Write (PdfOutputDevice ∗pDevice, EPdfWriteMode eWriteMode, const PdfEncrypt ∗pEncrypt=NULL)
const
• PODOFO_NOTHROW bool operator== (const PdfReference &rhs) const
• PODOFO_NOTHROW bool operator!= (const PdfReference &rhs) const
• PODOFO_NOTHROW bool operator< (const PdfReference &rhs) const
• PODOFO_NOTHROW void SetObjectNumber (pdf_objnum o)
• PODOFO_NOTHROW pdf_objnum ObjectNumber () const
• PODOFO_NOTHROW void SetGenerationNumber (const pdf_gennum g)
• PODOFO_NOTHROW pdf_gennum GenerationNumber () const
• PODOFO_NOTHROW bool IsIndirect () const
A reference is a pointer to a object in the PDF file of the form "4 0 R", where 4 is the object number and 0 is the
generation number. Every object in the PDF file can be identified this way.
This class is a indirect reference in a PDF file.
Parameters
rhs the object to copy
Returns
Returns
Returns
Returns
Returns
10.102.3.6 const PdfReference & PoDoFo::PdfReference::operator= ( const PdfReference & rhs ) [inline]
Parameters
rhs the object to copy
Returns
Returns
See also
PdfVariant::ToString
Write the complete variant to an output device. This is an overloaded member function.
Parameters
pDevice write the object to this device
eWriteMode additional options for writing this object
pEncrypt an encryption object which is used to encrypt this object or NULL to not encrypt this object
Implements PoDoFo::PdfDataType.
#include <PdfFiltersPrivate.h>
Inheritance diagram for PoDoFo::PdfRLEFilter:
PoDoFo::PdfFilter
PoDoFo::PdfRLEFilter
See also
BeginDecode
See also
BeginEncode
Returns
Implements PoDoFo::PdfFilter.
Returns
Implements PoDoFo::PdfFilter.
See also
DecodeBlock
Implements PoDoFo::PdfFilter.
See also
BeginEncodeImpl
EndEncodeImpl
Implements PoDoFo::PdfFilter.
See also
BeginEncodeImpl
EncodeBlockImpl
Returns
Implements PoDoFo::PdfFilter.
#include <PdfFunction.h>
Inheritance diagram for PoDoFo::PdfSampledFunction:
PoDoFo::PdfElement
PoDoFo::PdfFunction
PoDoFo::PdfSampledFunction
• PdfSampledFunction (const PdfArray &rDomain, const PdfArray &rRange, const PdfFunction::Sample &rlst←-
Samples, PdfVecObjects ∗pParent)
• PdfSampledFunction (const PdfArray &rDomain, const PdfArray &rRange, const PdfFunction::Sample &rlst←-
Samples, PdfDocument ∗pParent)
10.104.2.1 PoDoFo::PdfSampledFunction::PdfSampledFunction ( const PdfArray & rDomain, const PdfArray & rRange,
const PdfFunction::Sample & rlstSamples, PdfVecObjects ∗ pParent )
Parameters
rDomain this array describes the input parameters of this PdfFunction. If this function has m input
parameters, this array has to contain 2∗m numbers where each number describes either the
lower or upper boundary of the input range.
rRange this array describes the output parameters of this PdfFunction. If this function has n input
parameters, this array has to contain 2∗n numbers where each number describes either the
lower or upper boundary of the output range.
rlstSamples a list of bytes which are used to build up this function sample data
pParent parent vector of objects
10.104.2.2 PoDoFo::PdfSampledFunction::PdfSampledFunction ( const PdfArray & rDomain, const PdfArray & rRange,
const PdfFunction::Sample & rlstSamples, PdfDocument ∗ pParent )
#include <PdfShadingPattern.h>
Inheritance diagram for PoDoFo::PdfShadingPattern:
PoDoFo::PdfElement
PoDoFo::PdfShadingPattern
This class defined a shading pattern which can be used to fill abitrary shapes with a pattern using PdfPainter.
Create a new PdfShadingPattern object which will introduce itself automatically to every page object it is used on.
Parameters
pParent parent vector of objects
eShadingType the type of this shading pattern
Create a new PdfShadingPattern object which will introduce itself automatically to every page object it is used on.
Parameters
pParent parent document
eShadingType the type of this shading pattern
Returns the identifier of this ShadingPattern how it is known in the pages resource dictionary.
Returns
#include <PdfSignatureField.h>
Inherits PoDoFo::PdfField.
Signature field
Parameters
pDocument←- the catalog of current document
Catalog
perm document modification permission
Structure of the PDF file - before signing: <</ByteRange[ 0 1234567890 1234567890 1234567890]/←-
Contents<signatureData> Have to be replaiced with the following structure: <</ByteRange[ 0 count pos
count]/Contents<real signature ...0-padding>
Date of signature
#include <PdfSignOutputDevice.h>
Inheritance diagram for PoDoFo::PdfSignOutputDevice:
PoDoFo::PdfOutputDevice
PoDoFo::PdfSignOutputDevice
Signer class
Class is used to locate place for signature in the stream. Usage:
2. Generate signature
Flush the output files buffer to disk if this devices operates on a disk.
Reimplemented from PoDoFo::PdfOutputDevice.
Returns
See also
Init
Returns
10.107.2.6 virtual void PoDoFo::PdfSignOutputDevice::Print ( const char ∗ pszFormat, ... ) [inline], [virtual]
See also
Write
10.107.2.7 virtual size_t PoDoFo::PdfSignOutputDevice::Read ( char ∗ pBuffer, size_t lLen ) [inline], [virtual]
Returns
Parameters
lSignatureSize Total space reserved for signature
Returns
Write data to the buffer. Use this call instead of Print if you want to write binary data to the PdfOutputDevice.
Parameters
pBuffer a pointer to the data buffer
lLen write lLen bytes of pBuffer to the PdfOutputDevice
See also
#include <PdfEncoding.h>
Inheritance diagram for PoDoFo::PdfSimpleEncoding:
PoDoFo::PdfEncoding
PoDoFo::PdfSimpleEncoding
PoDoFo::PdfIso88592Encoding PoDoFo::PdfWin1250Encoding
Protected Attributes
• Util::PdfMutex ∗ m_mutex
Mutex for the creation of the encoding table.
A common base class for standard PdfEncoding which are known by name.
• PdfDocEncoding (only use this for strings which are not printed in the document. This is for meta data in the
PDF).
• MacRomanEncoding
• WinAnsiEncoding
• MacExpertEncoding
• StandardEncoding
• SymbolEncoding
• ZapfDingbatsEncoding
See also
PdfWinAnsiEncoding
PdfMacRomanEncoding
PdfMacExportEncoding ..
PdfStandardEncoding
PdfSymbolEncoding
PdfZapfDingbatsEncoding
Add this encoding object to a dictionary usually be adding an /Encoding key in font dictionaries.
Parameters
rDictionary add the encoding to this dictionary
Implements PoDoFo::PdfEncoding.
Reimplemented in PoDoFo::PdfWinAnsiEncoding.
Returns
Returns
an unicode PdfString.
Get the unicode character code for this encoding at the position nIndex. nIndex is a position between GetFirstChar()
and GetLastChar()
Parameters
nIndex character code at position index
Returns
See also
GetFirstChar
GetLastChar
Get a unique ID for this encoding which can used for comparisons!
Returns
Implements PoDoFo::PdfEncoding.
Returns
Gets a table of 256 short values which are the big endian unicode code points that are assigned to the 256 values
of this encoding.
This table is used internally to convert an encoded string of this encoding to and from unicode.
Returns
PdfSimpleEncoding subclasses are usuylla not auto-deleted, as they are allocated statically only once.
Returns
See also
PdfFont::WinAnsiEncoding
PdfFont::MacRomanEncoding
Implements PoDoFo::PdfEncoding.
Returns
Implements PoDoFo::PdfEncoding.
#include <PdfTable.h>
Inheritance diagram for PoDoFo::PdfSimpleTableModel:
PoDoFo::PdfTableModel
PoDoFo::PdfSimpleTableModel
• PdfSimpleTableModel ()
• PdfSimpleTableModel (int nCols, int nRows)
• void SetFont (PdfFont ∗pFont)
• void SetAlignment (EPdfAlignment eAlignment)
• void SetAlignment (EPdfVerticalAlignment eAlignment)
• void SetBackgroundColor (const PdfColor &rColor)
• void SetForegroundColor (const PdfColor &rColor)
• void SetBackgroundEnabled (bool bEnable)
• void SetWordWrapEnabled (bool bEnable)
• void SetBorderEnabled (bool bEnable)
• void SetBorderWidth (double dWidth)
• void SetText (int col, int row, const PdfString &rsString)
• virtual PdfString GetText (int col, int row) const
• virtual EPdfAlignment GetAlignment (int col, int row) const
• virtual EPdfVerticalAlignment GetVerticalAlignment (int col, int row) const
• virtual PdfFont ∗ GetFont (int col, int row) const
• virtual bool HasBackgroundColor (int col, int row) const
• virtual PdfColor GetBackgroundColor (int col, int row) const
• virtual PdfColor GetForegroundColor (int col, int row) const
• virtual bool HasWordWrap (int col, int row) const
• virtual bool HasBorders () const
• virtual double GetBorderWidth () const
• virtual PdfColor GetBorderColor (int col, int row) const
• virtual bool HasImage (int col, int row) const
• virtual PdfImage ∗ GetImage (int col, int row) const
10.109.2.1 PoDoFo::PdfSimpleTableModel::PdfSimpleTableModel ( )
See also
SetText
Parameters
col the column of the table cell
row the row of the table cell
Returns
Implements PoDoFo::PdfTableModel.
Parameters
col the column of the table cell
row the row of the table cell
Returns
Implements PoDoFo::PdfTableModel.
10.109.3.3 PdfColor PoDoFo::PdfSimpleTableModel::GetBorderColor ( int col, int row ) const [inline], [virtual]
Parameters
col the column of the table cell
row the row of the table cell
Returns
Implements PoDoFo::PdfTableModel.
Returns
Implements PoDoFo::PdfTableModel.
10.109.3.5 PdfFont ∗ PoDoFo::PdfSimpleTableModel::GetFont ( int col, int row ) const [inline], [virtual]
Parameters
col the column of the table cell
row the row of the table cell
Returns
the font of this table cell or NULL to use the default font
Implements PoDoFo::PdfTableModel.
Parameters
col the column of the table cell
row the row of the table cell
Returns
Implements PoDoFo::PdfTableModel.
10.109.3.7 PdfImage ∗ PoDoFo::PdfSimpleTableModel::GetImage ( int col, int row ) const [inline], [virtual]
Parameters
col the column of the table cell
row the row of the table cell
Returns
the image for the specified cell or NULL if the cell has no image
Implements PoDoFo::PdfTableModel.
10.109.3.8 PdfString PoDoFo::PdfSimpleTableModel::GetText ( int col, int row ) const [inline], [virtual]
Parameters
col the column of the table cell
row the row of the table cell
Returns
Implements PoDoFo::PdfTableModel.
Parameters
col the column of the table cell
row the row of the table cell
Returns
Implements PoDoFo::PdfTableModel.
Parameters
col the column of the table cell
row the row of the table cell
Returns
Implements PoDoFo::PdfTableModel.
Returns
Cell borders are always drawn using the current PdfPainter settings.
Implements PoDoFo::PdfTableModel.
10.109.3.12 bool PoDoFo::PdfSimpleTableModel::HasImage ( int col, int row ) const [inline], [virtual]
Parameters
col the column of the table cell
row the row of the table cell
Returns
Implements PoDoFo::PdfTableModel.
10.109.3.13 bool PoDoFo::PdfSimpleTableModel::HasWordWrap ( int col, int row ) const [inline], [virtual]
Parameters
col the column of the table cell
row the row of the table cell
Returns
Implements PoDoFo::PdfTableModel.
Parameters
eAlignment the horizontal alignment of text in a table cell
Set the font that will be used to draw all table contents.
Parameters
pFont the font for the table contents
Parameters
rColor the foreground color
10.109.3.22 void PoDoFo::PdfSimpleTableModel::SetText ( int col, int row, const PdfString & rsString ) [inline]
#include <PdfEncoding.h>
Inheritance diagram for PoDoFo::PdfStandardEncoding:
PoDoFo::PdfEncoding
PoDoFo::PdfSimpleEncoding
PoDoFo::PdfStandardEncoding
• PdfStandardEncoding ()
Do not allocate this class yourself, as allocations might be expensive. Try using PdfFont::StandardEncoding.
See also
PdfFont::StandardEncoding
Gets a table of 256 short values which are the big endian unicode code points that are assigned to the 256 values
of this encoding.
This table is used internally to convert an encoded string of this encoding to and from unicode.
Returns
Implements PoDoFo::PdfSimpleEncoding.
#include <PdfFunction.h>
Inheritance diagram for PoDoFo::PdfStitchingFunction:
PoDoFo::PdfElement
PoDoFo::PdfFunction
PoDoFo::PdfStitchingFunction
• PdfStitchingFunction (const PdfFunction::List &rlstFunctions, const PdfArray &rDomain, const PdfArray &r←-
Bounds, const PdfArray &rEncode, PdfVecObjects ∗pParent)
• PdfStitchingFunction (const PdfFunction::List &rlstFunctions, const PdfArray &rDomain, const PdfArray &r←-
Bounds, const PdfArray &rEncode, PdfDocument ∗pParent)
This class is a PdfStitchingFunction, i.e. a PdfFunction that combines more than one PdfFunction into one.
It combines several PdfFunctions that take 1 input parameter to a new PdfFunction taking again only 1 input param-
eter.
#include <PdfStream.h>
Inheritance diagram for PoDoFo::PdfStream:
PoDoFo::PdfStream
PoDoFo::PdfFileStream PoDoFo::PdfMemStream
A PDF stream can be appended to any PdfObject and can contain arbitrary data.
Most of the time it will contain either drawing commands to draw onto a page or binary data like a font or an image.
You have to use a concrete implementation of a stream, which can be retrieved from a StreamFactory.
See also
PdfVecObjects
PdfMemoryStream
PdfFileStream
Create a new PdfStream object which has a parent PdfObject. The stream will be deleted along with the parent.
This constructor will be called by PdfObject::Stream() for you.
Parameters
pParent parent object
Parameters
pszString a buffer
lLen length of the buffer
See also
BeginAppend
EndAppend
See also
BeginAppend
EndAppend
See also
BeginAppend
EndAppend
10.112.3.4 virtual void PoDoFo::PdfStream::AppendImpl ( const char ∗ pszString, size_t lLen ) [protected], [pure
virtual]
See also
BeginAppend
Append
EndAppend
See also
Append
EndAppend
10.112.3.6 void PoDoFo::PdfStream::BeginAppend ( const TVecFilters & vecFilters, bool bClearExisting = true, bool
bDeleteFilters = true )
Start appending data to this stream. This method has to be called before any of the append methods.
Use PdfFilterFactory::CreateFilterList() if you want to use the contents of the stream dictionary's existing filter key.
Parameters
vecFilters a list of filters to use when appending data
bClearExisting if true any existing stream contents will be cleared.
bDeleteFilters if true existing filter keys are deleted if an empty list of filters is passed (required for Set←-
RawData())
See also
Append
EndAppend
10.112.3.7 virtual void PoDoFo::PdfStream::BeginAppendImpl ( const TVecFilters & vecFilters ) [protected], [pure
virtual]
Begin appending data to this stream. Clears the current stream contents.
Use PdfFilterFactory::CreateFilterList() if you want to use the contents of the stream dictionary's existing filter key.
Parameters
vecFilters use these filters to encode any data written to the stream.
Finish appending data to this stream. BeginAppend() has to be called before this method.
See also
BeginAppend
Append
10.112.3.10 virtual void PoDoFo::PdfStream::GetCopy ( char ∗∗ pBuffer, pdf_long ∗ lLen ) const [pure virtual]
Get a malloc()'d buffer of the current stream. No filters will be applied to the buffer, so if the stream is Flate-
compressed the compressed copy will be returned.
The caller has to podofo_free() the buffer.
Parameters
pBuffer pointer to the buffer
lLen pointer to the buffer length
Get a malloc()'d buffer of the current stream which has been filtered by all filters as specified in the dictionary's
/Filter key. For example, if the stream is Flate-compressed, the buffer returned from this method will have been
decompressed.
The caller has to podofo_free() the buffer.
Parameters
pBuffer pointer to the buffer
lLen pointer to the buffer length
Returns
Returns
Get the stream's length with all filters applied (e.g. if the stream is Flate-compressed, the length of the compressed
data stream).
Returns
Returns
true if code is between BeginAppend() and EndAppend() at the moment, i.e. it is safe to call EndAppend()
now.
See also
BeginAppend
Append
Returns
10.112.3.19 void PoDoFo::PdfStream::Set ( const char ∗ szBuffer, pdf_long lLen, const TVecFilters & vecFilters )
Parameters
szBuffer buffer containing the stream data
lLen length of the buffer
Set a binary buffer whose contents are read from a PdfInputStream All data will be Flate-encoded.
Parameters
pStream read stream contents from this PdfInputStream
Sets raw data for this stream which is read from an input stream. This method does neither encode nor decode the
read data. The filters of the object are not modified and the data is expected encoded as stated by the /Filters key
in the stream's object.
Parameters
pStream read data from this input stream
lLen read exactly lLen bytes from the input stream, if lLen = -1 read until the end of the input
stream was reached.
#include <PdfStreamedDocument.h>
Inheritance diagram for PoDoFo::PdfStreamedDocument:
PoDoFo::PdfDocument
PoDoFo::PdfStreamedDocument
See also
PdfDocument
PdfMemDocument
Close the document. The PDF file on disk is finished. No other member function of this class maybe called after
calling this function.
Returns
Implements PoDoFo::PdfDocument.
Returns
Implements PoDoFo::PdfDocument.
Checks if it is allowed to extract text and graphics to support users with disabillities Every PDF consuming applica-
tions has to adhere this value!
Returns
true if you are allowed to extract text and graphics to support users with disabillities
See also
Implements PoDoFo::PdfDocument.
Checks if text and graphics extraction is allowed. Every PDF consuming applications has to adhere this value!
Returns
true if you are allowed to extract text and graphics from this document
See also
Implements PoDoFo::PdfDocument.
Checks if it is allowed to insert, create, rotate, delete pages or add bookmarks Every PDF consuming applications
has to adhere this value!
Returns
true if you are allowed to insert, create, rotate, delete pages or add bookmarks
See also
Implements PoDoFo::PdfDocument.
Checks if modifiying this document (besides annotations, form fields or changing pages) is allowed. Every PDF
consuming applications has to adhere this value!
Returns
See also
Implements PoDoFo::PdfDocument.
Checks if it is allowed to add or modify annotations or form fields Every PDF consuming applications has to adhere
this value!
Returns
See also
Implements PoDoFo::PdfDocument.
Checks if it is allowed to fill in existing form or signature fields Every PDF consuming applications has to adhere this
value!
Returns
See also
Implements PoDoFo::PdfDocument.
Checks if it is allowed to print a high quality version of this document Every PDF consuming applications has to
adhere this value!
Returns
true if you are allowed to print a high quality version of this document
See also
Implements PoDoFo::PdfDocument.
Returns
Implements PoDoFo::PdfDocument.
Checks if printing this document is allowed. Every PDF consuming applications has to adhere this value!
Returns
See also
Implements PoDoFo::PdfDocument.
#include <PdfString.h>
Inheritance diagram for PoDoFo::PdfString:
PoDoFo::PdfDataType
PoDoFo::PdfString
• PdfString ()
• PdfString (const std::string &sString, const PdfEncoding ∗const pEncoding=NULL)
• PdfString (const char ∗pszString, const PdfEncoding ∗const pEncoding=NULL)
• PdfString (const wchar_t ∗pszString, pdf_long lLen=-1)
• PdfString (const char ∗pszString, pdf_long lLen, bool bHex=false, const PdfEncoding ∗const pEncoding=N←-
ULL)
• PdfString (const pdf_utf8 ∗pszStringUtf8)
• PdfString (const pdf_utf16be ∗pszStringUtf16)
• PdfString (const pdf_utf8 ∗pszStringUtf8, pdf_long lLen)
• PdfString (const pdf_utf16be ∗pszStringUtf16, pdf_long lLen)
• PdfString (const PdfString &rhs)
• void SetHexData (const char ∗pszHex, pdf_long lLen=-1, PdfEncrypt ∗pEncrypt=NULL)
• bool IsValid () const
• bool IsHex () const
• bool IsUnicode () const
• const char ∗ GetString () const
A string that can be written to a PDF document. If it contains binary data it is automatically converted into a hex
string, otherwise a normal PDF string is written to the document.
PdfStrings representing text are either in PDFDocEncoding (ISO Latin1) encoded or UTF-16BE encoded.
PoDoFo contains methods to convert between these encodings. For convinience conversion to UTF-8 is possible
to. Please not that strings are always stored as UTF-16BE or ISO Latin1 (PdfDocEncoding) in the PDF file.
UTF-16BE strings have to start with the byts 0xFE 0xFF to be recognized by PoDoFo as unicode strings.
PdfStrings is an implicitly shared class. As a reason it is very fast to copy PdfString objects.
The internal string buffer is guaranteed to be always terminated by 2 zeros.
10.114.2.1 PoDoFo::PdfString::PdfString ( )
10.114.2.2 PoDoFo::PdfString::PdfString ( const std::string & sString, const PdfEncoding ∗const pEncoding = NULL )
Construct a new PdfString from a std::string. The input string will be copied. If the first to bytes of the string are
0xFE and 0xFF this string is treated as UTF-16BE encoded unicode string.
Parameters
sString the string to copy
pEncoding the encoding of this string, if it is no unicode string. This is ignored for unicode strings. If
NULL PdfDocEncoding will be used as a default.
10.114.2.3 PoDoFo::PdfString::PdfString ( const char ∗ pszString, const PdfEncoding ∗const pEncoding = NULL )
Construct a new PdfString from a 0 terminated string. The input string will be copied.
Parameters
pszString the string to copy
pEncoding the encoding of this string, if it is no unicode string. This is ignored for unicode strings. If
NULL PdfDocEncoding will be used as a default.
Construct a new PdfString from a 0 terminated string. The input string will be copied.
Parameters
pszString the string to copy
10.114.2.5 PoDoFo::PdfString::PdfString ( const char ∗ pszString, pdf_long lLen, bool bHex = false, const PdfEncoding
∗const pEncoding = NULL )
Construct a new PdfString from a string. The input string will be copied. If the first to bytes of the string are 0xFE
and 0xFF this string is treated as UTF-16BE encoded unicode string.
Parameters
pszString the string to copy
lLen length of the string data to encode
bHex if true the data will be hex encoded during writeout of the string and IsHex() will return true.
pEncoding the encoding of this string, if it is no unicode string. This is ignored for unicode strings. If
NULL PdfDocEncoding will be used as a default.
Parameters
pszStringUtf8 a UTF-8 encoded string.
lLen number of bytes to convert
Returns internal buffer; do not free it, it's owned by the PdfString
Returns
internal buffer; do not free it, it's owned by the PdfString returns a NULL zero size buffer if PdfString::IsValid()
returns false
Returns
the number of characters in the string, returns zero if PdfString::IsValid() returns false
The length of the string data returned by GetString() in bytes not including terminating zeros.
Returns
See also
Returns
the strings contents which is guaranteed to be zero terminated but might also contain 0 bytes in the string.
See also
IsHex
IsUnicode
Length
Returns
the string contents always as UTF8, returns NULL if PdfString::IsValid() returns false
Returns
the strings contents which is guaranteed to be zero terminated but might also contain 0 bytes in the string,
returns NULL if PdfString::IsValid() returns false
See also
IsHex
IsUnicode
Length
The length of the string data returned by GetUnicode() in characters not including the terminating zero
Returns
See also
Returns
See also
GetString() will return the raw string contents (not hex encoded)
PdfStrings are either Latin1 encoded or UTF-16BE encoded unicode strings. This functions returns true if this is a
unicode string object.
Returns
The string is valid if no error in the constructor has occurred. The default constructor PdfString() creates an invalid
string, as do other constructors when passed a NULL char∗ or NULL wchar_t∗. PdfString::StringNull uses the
default constructor so is also invalid. If it is valid it is safe to call all the other member functions.
Returns
Comparison operator
Parameters
rhs compare to this string object
Returns
Parameters
rhs another PdfString to compare
Returns
this object
Returns
this object
Comparison operator
UTF-8 and UTF-16BE encoded strings of the same data compare equal. Whether the string will be written out as
hex is not considered - only the real "text" is tested for equality.
Parameters
rhs compare to this string object
Returns
Returns
this object
10.114.3.16 void PoDoFo::PdfString::SetHexData ( const char ∗ pszHex, pdf_long lLen = -1, PdfEncrypt ∗ pEncrypt =
NULL )
Parameters
pszHex must be hex encoded data.
lLen length of the hex encoded data. if lLen == -1 then strlen( pszHex ) will be used as length of
the hex data. pszHex has to be zero terminated in this case.
pEncrypt if !NULL assume the hex data is encrypted and should be decrypted after hexdecoding
Returns
Implements PoDoFo::PdfDataType.
#include <PdfEncoding.h>
Inheritance diagram for PoDoFo::PdfSymbolEncoding:
PoDoFo::PdfEncoding
PoDoFo::PdfSimpleEncoding
PoDoFo::PdfSymbolEncoding
• PdfSymbolEncoding ()
Do not allocate this class yourself, as allocations might be expensive. Try using PdfFont::SymbolEncoding.
See also
PdfFont::SymbolEncoding
Gets a table of 256 short values which are the big endian unicode code points that are assigned to the 256 values
of this encoding.
This table is used internally to convert an encoded string of this encoding to and from unicode.
Returns
Implements PoDoFo::PdfSimpleEncoding.
#include <PdfTable.h>
Public Types
• void CalculateTableSize (const double dX, const double dY, const PdfCanvas ∗pCanvas, double ∗pdWidths,
double ∗pdHeights, double ∗pdWidth, double ∗pdHeight) const
• void DrawHorizontalBorders (int nRow, double dX, double dY, PdfPainter ∗pPainter, double ∗pdColWidths)
• bool CheckForNewPage (double ∗pdY, double ∗pdCurY, double dRowHeight, PdfPainter ∗pPainter)
See also
SetAutoPageBreak
Parameters
rClipRect this is an output parameter which has to be set to the clipping rectangle of the new page. If
the new page has no clipping rectangle set it to PdfRect( 0, 0, PdfPage::GetPageSize().Get←-
Width(), PdfPage::GetPageSize().GetHeight() )
pCustom pointer to user defined data
10.116.4.1 void PoDoFo::PdfTable::CalculateTableSize ( const double dX, const double dY, const PdfCanvas ∗ pCanvas,
double ∗ pdWidths, double ∗ pdHeights, double ∗ pdWidth, double ∗ pdHeight ) const [protected]
Internal functions that calculates the total table size for a table with the current settings when drawn on a certain
page.
Parameters
dX the X coordinate of top left at which is drawn
dY the Y coordinate of top left at which is drawn
pCanvas the canvas object (usually a page) on which the table will be drawn.
pdWidths pointer to an array with GetCols() doubles where the width for each column will be stored
pdHeights pointer to an array with GetRows() doublesd where the height for each row will be stored
pdWidth pointer to a double where the total width of the table will be stored
pdHeight pointer to a double where the total height of the table will be stored
10.116.4.2 bool PoDoFo::PdfTable::CheckForNewPage ( double ∗ pdY, double ∗ pdCurY, double dRowHeight, PdfPainter ∗
pPainter ) [protected]
Checks if there is enough space on the current page for one row! If necessary a new page is created.
If GetAutoPageBreak is false, this method does nothing.
Parameters
pdY top of the table
pdCurY pointer to the current y position on the page. Might be reset to a new y position.
dRowHeight height of the next row.
pPainter painter used for drawing
Returns
10.116.4.3 void PoDoFo::PdfTable::Draw ( double dX, double dY, PdfPainter ∗ pPainter, const PdfRect & rClipRect =
PdfRect(), double ∗ pdLastX = NULL, double ∗ pdLastY = NULL ) [virtual]
10.116.4.4 void PoDoFo::PdfTable::DrawHorizontalBorders ( int nRow, double dX, double dY, PdfPainter ∗ pPainter, double
∗ pdColWidths ) [protected]
Draw one row of horizontal cell borders using the correct color for each cell.
Parameters
nRow the current row
dX left x coordinate
dY y coordinate
pPainter use this painter object
pdColWidths an array containing all colomun widths
Returns
true if a new page is created automatically if more space is required to draw the table.
See also
SetAutoPageBreak
Returns
10.116.4.7 double PoDoFo::PdfTable::GetHeight ( double dX, double dY, PdfCanvas ∗ pPage ) const [virtual]
Get the width of the table when drawn with the current settings at a certain position.
Parameters
dX x coordinate of top left of the table
dY y coordinate of top left of the table
pPage the page on which the table will be drawn
Returns
Returns
Returns
10.116.4.10 double PoDoFo::PdfTable::GetWidth ( double dX, double dY, PdfCanvas ∗ pPage ) const [virtual]
Get the width of the table when drawn with the current settings at a certain position.
Parameters
dX x coordinate of top left of the table
dY y coordinate of top left of the table
pPage the page on which the table will be drawn
Returns
Automatically create a new page and continue drawing the table on the new page, if there is not enough space on
the current page.
The newly created page will be set as the current page on the painter used to draw and will be created using the
same size as the old page.
Parameters
bPageBreak if true automatically create new pages if required.
callback a callback function that is called to create a new page. Please note: PdfTable cannot create
new pages on its own. You always have to implement a callback which does the new page
creation for the PdfTable.
pCustomData custom data that is passed to the callback
By default this feature is turned off and contents are clipped that do not fit on the current page.
See also
GetAutoPageBreak
By default the column with is calculated automatically from either the table width or if no table width is set from the
width of the page on which the table is drawn.
See also
GetCols()
Set the PdfTableModel that will supply all contents and formatting informations to the table.
Parameters
pModel a PdfTableModel
The model will not be owned by the PdfTable and has to be deleted by the caller.
See also
GetModel
Parameters
dHeight the height of every row
By default the row height is calculated automatically from either the table height or if no table height is set from the
height of the page on which the table is drawn.
See also
GetRows()
This height is used if no row height is set to calculate the height of every row. If this height is not set, the height of
the page on which this table is drawn is used.
This width is used if no column width is set to calculate the width of every column. If this width is not set, the width
of the page on which this table is drawn is used.
#include <PdfTable.h>
Inheritance diagram for PoDoFo::PdfTableModel:
PoDoFo::PdfTableModel
PoDoFo::PdfSimpleTableModel
This is an abstract interface of a model that can provide data and formatting informations to a PdfTable.
You can implement your own PdfTableModel to supply data to a PdfTable. PdfSimpleTableModel is an example of a
simple model.
See also
PdfTable
PdfSimpleTableModel
10.117.2.1 virtual EPdfAlignment PoDoFo::PdfTableModel::GetAlignment ( int col, int row ) const [pure virtual]
Parameters
col the column of the table cell
row the row of the table cell
Returns
Implemented in PoDoFo::PdfSimpleTableModel.
10.117.2.2 virtual PdfColor PoDoFo::PdfTableModel::GetBackgroundColor ( int col, int row ) const [pure virtual]
Parameters
col the column of the table cell
row the row of the table cell
Returns
Implemented in PoDoFo::PdfSimpleTableModel.
10.117.2.3 virtual PdfColor PoDoFo::PdfTableModel::GetBorderColor ( int col, int row ) const [pure virtual]
Parameters
col the column of the table cell
row the row of the table cell
Returns
Implemented in PoDoFo::PdfSimpleTableModel.
Returns
Implemented in PoDoFo::PdfSimpleTableModel.
10.117.2.5 virtual PdfFont∗ PoDoFo::PdfTableModel::GetFont ( int col, int row ) const [pure virtual]
Parameters
col the column of the table cell
row the row of the table cell
Returns
the font of this table cell or NULL to use the default font
Implemented in PoDoFo::PdfSimpleTableModel.
10.117.2.6 virtual PdfColor PoDoFo::PdfTableModel::GetForegroundColor ( int col, int row ) const [pure virtual]
Parameters
col the column of the table cell
row the row of the table cell
Returns
Implemented in PoDoFo::PdfSimpleTableModel.
10.117.2.7 virtual PdfImage∗ PoDoFo::PdfTableModel::GetImage ( int col, int row ) const [pure virtual]
Parameters
col the column of the table cell
row the row of the table cell
Returns
the image for the specified cell or NULL if the cell has no image
Implemented in PoDoFo::PdfSimpleTableModel.
10.117.2.8 virtual PdfString PoDoFo::PdfTableModel::GetText ( int col, int row ) const [pure virtual]
Parameters
col the column of the table cell
row the row of the table cell
Returns
Implemented in PoDoFo::PdfSimpleTableModel.
Parameters
col the column of the table cell
row the row of the table cell
Returns
Implemented in PoDoFo::PdfSimpleTableModel.
10.117.2.10 virtual bool PoDoFo::PdfTableModel::HasBackgroundColor ( int col, int row ) const [pure virtual]
Parameters
col the column of the table cell
row the row of the table cell
Returns
Implemented in PoDoFo::PdfSimpleTableModel.
Returns
Cell borders are always drawn using the current PdfPainter settings.
Implemented in PoDoFo::PdfSimpleTableModel.
10.117.2.12 virtual bool PoDoFo::PdfTableModel::HasImage ( int col, int row ) const [pure virtual]
Parameters
col the column of the table cell
row the row of the table cell
Returns
Implemented in PoDoFo::PdfSimpleTableModel.
10.117.2.13 virtual bool PoDoFo::PdfTableModel::HasWordWrap ( int col, int row ) const [pure virtual]
Parameters
col the column of the table cell
row the row of the table cell
Returns
Implemented in PoDoFo::PdfSimpleTableModel.
#include <PdfField.h>
Inherits PoDoFo::PdfField.
10.118.2.2 PoDoFo::PdfTextField::PdfTextField ( PdfPage ∗ pPage, const PdfRect & rRect, PdfAcroForm ∗ pParent )
10.118.2.3 PoDoFo::PdfTextField::PdfTextField ( PdfPage ∗ pPage, const PdfRect & rRect, PdfDocument ∗ pDoc )
Returns
the max length of this textfield in characters or -1 if no max length was specified
Returns
Returns
true if the text field has a division into equal combs set on it
Returns
Returns
Returns
true if this field is a password field that does not echo entered characters on the screen
Returns
Returns
Returns
See also
SetMaxLen
Create a file selection field. The entered contents are treated as filename to a file whose contents are submitted as
the value of the field.
Parameters
bFile if true the contents are treated as a pathname to a file to submit
Create a multi-line text field that can contains multiple lines of text.
Parameters
bMultiLine if true a multi line field is generated, otherwise the text field can contain only a single line of
text.
Create a password text field that should not echo entered characters visibly to the screen.
Parameters
bPassword if true a password field is created
Parameters
bSpellcheck if true spellchecking will be enabled
#include <PdfTilingPattern.h>
Inheritance diagram for PoDoFo::PdfTilingPattern:
PoDoFo::PdfElement
PoDoFo::PdfTilingPattern
This class defined a tiling pattern which can be used to fill abitrary shapes with a pattern using PdfPainter.
Create a new PdfTilingPattern object, which will introduce itself automatically to every page object it is used on.
Parameters
eTilingType the type of this tiling pattern
strokeR strok color red component
strokeG strok color green component
strokeB strok color blue component
doFill whether tile fills content first, with fill color
fillR fill color red component
fillG fill color green component
fillB fill color blue component
offsetX tile offset on X axis
offsetY tile offset on Y axis
pImage image to use - can be set only if eTilingType is ePdfTilingPatternType_Image
pParent parent vector of objects
\note stroke and fill colors are ignored if eTilingType is ePdfTilingPatternType_Image
\note fill color is ignored if doFill is false
\note pImage is ignored for all but ePdfTilingPatternType_Image eTilingType types, where it
Create a new PdfTilingPattern object, which will introduce itself automatically to every page object it is used on.
Parameters
eTilingType the type of this tiling pattern
strokeR strok color red component
strokeG strok color green component
strokeB strok color blue component
doFill whether tile fills content first, with fill color
fillR fill color red component
fillG fill color green component
fillB fill color blue component
offsetX tile offset on X axis
offsetY tile offset on Y axis
pImage image to use - can be set only if eTilingType is ePdfTilingPatternType_Image
pParent parent document
\note stroke and fill colors are ignored if eTilingType is ePdfTilingPatternType_Image
\note fill color is ignored if doFill is false
\note pImage is ignored for all but ePdfTilingPatternType_Image eTilingType types, where it
Returns the identifier of this TilingPattern how it is known in the pages resource dictionary.
Returns
#include <PdfTokenizer.h>
Inheritance diagram for PoDoFo::PdfTokenizer:
PoDoFo::PdfTokenizer
PoDoFo::PdfXRefStreamParserObject
• void GetNextVariant (const char ∗pszToken, EPdfTokenType eType, PdfVariant &rVariant, PdfEncrypt ∗p←-
Encrypt)
• EPdfDataType DetermineDataType (const char ∗pszToken, EPdfTokenType eType, PdfVariant &rVariant)
• void ReadDictionary (PdfVariant &rVariant, PdfEncrypt ∗pEncrypt)
• void ReadArray (PdfVariant &rVariant, PdfEncrypt ∗pEncrypt)
• void ReadString (PdfVariant &rVariant, PdfEncrypt ∗pEncrypt)
• void ReadHexString (PdfVariant &rVariant, PdfEncrypt ∗pEncrypt)
• void ReadName (PdfVariant &rVariant)
• void QuequeToken (const char ∗pszToken, EPdfTokenType eType)
Determine the possible datatype of a token. Numbers, reals, bools or NULL values are parsed directly by this
function and saved to a variant.
Returns
Get the hex value from a static map of a given hex character (0-9, A-F, a-f).
Parameters
ch hex character
Returns
See also
HEX_NOT_FOUND
Read the next number from the current file position ignoring all comments.
Raises NoNumber exception if the next token is no number, and UnexpectedEOF if no token could be read. No
token is consumed if NoNumber is thrown.
Returns
10.120.2.4 bool PoDoFo::PdfTokenizer::GetNextToken ( const char ∗& pszToken, EPdfTokenType ∗ peType = NULL )
[virtual]
Reads the next token from the current file position ignoring all comments.
Parameters
out pszToken On true return, set to a pointer to the read token (a NULL-terminated C string).
The pointer is to memory owned by PdfTokenizer and must NOT be freed.
The contents are invalidated on the next call to GetNextToken(..) and by the
destruction of the PdfTokenizer. Undefined on false return.
out peType On true return, if not NULL the type of the read token will be stored into this
parameter. Undefined on false return.
Returns
True if a token was read, false if there are no more tokens to read.
See also
GetBuffer
Reimplemented in PoDoFo::PdfContentsTokenizer.
Read the next variant from the current file position ignoring all comments.
Raises an UnexpectedEOF exception if there is no variant left in the file.
Parameters
rVariant write the read variant to this value
pEncrypt an encryption object which is used to decrypt strings during parsing
10.120.2.6 void PoDoFo::PdfTokenizer::GetNextVariant ( const char ∗ pszToken, EPdfTokenType eType, PdfVariant &
rVariant, PdfEncrypt ∗ pEncrypt ) [protected]
Read the next variant from the current file position ignoring all comments.
Raises an exception if there is no variant left in the file.
Parameters
pszToken a token that has already been read
eType type of the passed token
rVariant write the read variant to this value
pEncrypt an encryption object which is used to decrypt strings during parsing
Returns true if the given character is a delimiter according to the pdf reference
Returns
Reads the next token from the current file position ignoring all comments and compare the passed token to the read
token.
If there is no next token available, throws UnexpectedEOF.
Parameters
pszToken a token that is compared to the read token
Returns
True if the passed character is within the generally accepted "printable" ASCII range.
True if the passed character is a regular character according to the PDF reference (Section 3.1.1, Character Set);
ie it is neither a white-space nor a delimeter character.
Returns true if the given character is a whitespace according to the pdf reference
Returns
Add a token to the queue of tokens. GetNextToken() will return all enqueued tokens first before reading new tokens
from the input device.
Parameters
pszToken string of the token
eType type of the token
See also
GetNextToken
Read an array from the input device and store it into a variant.
Parameters
rVariant store the array into this variable
pEncrypt an encryption object which is used to decrypt strings during parsing
Read a dictionary from the input device and store it into a variant.
Parameters
rVariant store the dictionary into this variable
pEncrypt an encryption object which is used to decrypt strings during parsing
Read a hex string from the input device and store it into a variant.
Parameters
rVariant store the hex string into this variable
pEncrypt an encryption object which is used to decrypt strings during parsing
Read a name from the input device and store it into a variant.
Throws UnexpectedEOF if there is nothing to read.
Parameters
rVariant store the name into this variable
Read a string from the input device and store it into a variant.
Parameters
rVariant store the string into this variable
pEncrypt an encryption object which is used to decrypt strings during parsing
#include <PdfShadingPattern.h>
Inheritance diagram for PoDoFo::PdfTriangleShadingPattern:
PoDoFo::PdfElement
PoDoFo::PdfShadingPattern
PoDoFo::PdfTriangleShadingPattern
• PdfTriangleShadingPattern (double dX0, double dY0, const PdfColor &color0, double dX1, double dY1, const
PdfColor &color1, double dX2, double dY2, const PdfColor &color2, PdfVecObjects ∗pParent)
• PdfTriangleShadingPattern (double dX0, double dY0, const PdfColor &color0, double dX1, double dY1, const
PdfColor &color1, double dX2, double dY2, const PdfColor &color2, PdfDocument ∗pParent)
A shading pattern that is a simple triangle shading between three colors. It's a single-triangle simplified variation of
a FreeForm shadding pattern.
#include <PdfTTFWriter.h>
• PdfTTFWriter ()
An internal class which can parse a TrueType font file and write a subset of this TrueType font back to an output
device.
This class is used internally to do font subsetting.
The usual way to use this class is:
PdfTTFWriter writer; writer.Read ( [an input device] ); // read the font from a device writer.Subset ( ); // do the
subsetting writer.Write ( [an output device] ); // write the font back to a device
10.122.2.1 PoDoFo::NonPublic::PdfTTFWriter::PdfTTFWriter ( )
• Big endian
• Required tables: cmap character to glyph mapping CHK glyf glyph data CHK head font header CHK hhea
horizontal header CHK hmtx horizontal metrics CHK loca index to location CHK maxp maximum profile CHK
name naming table CHK post PostScript information OS/2 OS/2 and Windows specific metrics CHK
Write a TTF font from the current internal structures to an output device.
Parameters
pDevice write the font to this device
#include <PdfFontType1.h>
Inherited by PoDoFo::PdfType1EncryptCharstring, and PoDoFo::PdfType1EncryptEexec.
• PdfType1Encrypt ()
• unsigned char Encrypt (unsigned char plain)
• unsigned char Decrypt (unsigned char cipher)
10.123.2.1 PoDoFo::PdfType1Encrypt::PdfType1Encrypt ( )
Decrypts a character
Parameters
cipher the cipher to decrypt.
Returns
decrypted character
Encrypts a character
Parameters
plain the character to encrypt.
Returns
encrypted cipher
#include <PdfVariant.h>
Inheritance diagram for PoDoFo::PdfVariant:
PoDoFo::PdfVariant
PoDoFo::PdfObject
PoDoFo::PdfParserObject
PoDoFo::PdfXRefStreamParserObject
• PdfVariant ()
• PdfVariant (bool b)
• PdfVariant (pdf_int64 l)
• PdfVariant (double d)
• PdfVariant (const PdfString &rsString)
• PdfVariant (const PdfName &rName)
• PdfVariant (const PdfReference &rRef)
• PdfVariant (const PdfArray &tList)
• PdfVariant (const PdfDictionary &rDict)
• PdfVariant (const PdfData &rData)
• PdfVariant (const PdfVariant &rhs)
• bool IsEmpty () const
• void Clear ()
• EPdfDataType GetDataType () const
• const char ∗ GetDataTypeString () const
• bool IsBool () const
• bool IsNumber () const
• bool IsReal () const
• bool IsString () const
• bool IsHexString () const
• bool IsName () const
• bool IsArray () const
• bool IsDictionary () const
• bool IsRawData () const
• bool IsNull () const
• bool IsReference () const
• void Write (PdfOutputDevice ∗pDevice, EPdfWriteMode eWriteMode, const PdfEncrypt ∗pEncrypt=NULL)
const
• virtual void Write (PdfOutputDevice ∗pDevice, EPdfWriteMode eWriteMode, const PdfEncrypt ∗pEncrypt,
const PdfName &keyStop) const
• void ToString (std::string &rsData, EPdfWriteMode eWriteMode=ePdfWriteMode_Clean) const
• void SetBool (bool b)
• bool GetBool () const
• void SetNumber (long l)
• pdf_int64 GetNumber () const
• void SetReal (double d)
• double GetReal () const
• const PdfString & GetString () const
• const PdfName & GetName () const
• const PdfArray & GetArray () const
• PdfArray & GetArray ()
A variant data type which supports all data types supported by the PDF standard. The data can be parsed directly
from a string or set by one of the members. One can also convert the variant back to a string after setting the values.
Warning
All methods not marked otherwise may trigger a deferred load. This means that they are unsafe to call while
a deferred load is already in progress (as recursion will occurr).
10.124.2.1 PoDoFo::PdfVariant::PdfVariant ( )
Parameters
l the value of the number.
Construct a PdfVariant that is a string. The argument string will be escaped where necessary, so it should be
passed in unescaped form.
Parameters
rsString the value of the string
Construct a PdfVariant object with array data. The variant will automatically get the datatype ePdfDataType_Array.
This constructor is the fastest way to create a new PdfVariant that is an array.
Parameters
tList a list of variants
Parameters
rData raw and valid PDF data.
Will throw an exception if called on an immutable object, so this should be called before actually changing a value!
Clear all internal member variables and free the memory they have allocated. Sets the datatype to ePdfDataType←-
_Null
This will reset the dirty flag of this object to be clean.
See also
IsDirty
Dynamically load the contents of this object from a PDF file by calling the virtual method DelayedLoadImpl() if the
object is not already loaded.
For objects complete created in memory and those that do not support deferred loading this function does nothing,
since deferred loading will not be enabled.
Returns true if delayed loading is disabled, or if it is enabled and loading has completed. External callers should
never need to see this, it's an internal state flag only.
Flag the object incompletely loaded. DelayedLoad() will be called when any method that requires more information
than is currently available is loaded.
All constructors initialize a PdfVariant with delayed loading disabled . If you want delayed loading you must ask for
it. If you do so, call this method early in your ctor and be sure to override DelayedLoadImpl().
Returns
a array
Returns
a array
Returns
a PdfArray
Returns
a PdfArray
Returns
Returns
Returns
a human readable string representation of GetDataType() The returned string must not be free'd.
Returns
a PdfDictionary
Returns
a PdfDictionary
Returns
a PdfDictionary
Returns
a PdfDictionary
Returns
Returns
Returns
Returns
Returns
Returns
Returns
a PdfReference
Returns
Returns
Returns
Returns
The dirty flag is set if this variant has been modified after construction.
Usually the dirty flag is also set if you call any non-const member function (e.g. GetDictionary()) as PdfVariant
cannot determine if you actually changed the dictionary or not.
Returns
true if the value is dirty and has been modified since construction
Returns
Returns
Returns
Returns
Returns
Returns
Returns
Returns
Returns
See also
operator==
See also
IsDirty
Test to see if the value contained by this variant is the same as the value of the other variant.
Parameters
b the value as bool.
See also
IsDirty
See also
IsDirty
This is used by PdfImmediateWriter and PdfStreamedDocument so that no keys can be added to an object after
setting stream data on it.
See also
IsDirty
See also
IsDirty
Converts the current object into a string representation which can be written directly to a PDF file on disc.
Parameters
rsData the object string is returned in this object.
eWriteMode additional options for writing to a string
Write the complete variant to an output device. This is an overloaded member function.
Parameters
pDevice write the object to this device
eWriteMode additional options for writing this object
pEncrypt an encryption object which is used to encrypt this object or NULL to not encrypt this object
#include <PdfVecObjects.h>
Classes
• class Observer
• class StreamFactory
• PdfVecObjects ()
• PdfDocument ∗ GetParentDocument () const
• void SetParentDocument (PdfDocument ∗pDocument)
• void SetAutoDelete (bool bAutoDelete)
• bool AutoDelete () const
• void Clear ()
• size_t GetSize () const
• size_t GetObjectCount () const
• PdfObject ∗ GetObject (const PdfReference &ref) const
• size_t GetIndex (const PdfReference &ref) const
• PdfObject ∗ RemoveObject (const PdfReference &ref, bool bMarkAsFree=true)
• PdfObject ∗ RemoveObject (const TIVecObjects &it)
A STL vector of PdfObjects. I.e. a list of PdfObject classes. The PdfParser will read the PdfFile into memory and
create a PdfVecObjects of all dictionaries found in the PDF file.
The PdfWriter class contrary creates a PdfVecObjects internally and writes it to a PDF file later with an appropriate
table of contents.
These class contains also advanced funtions for searching of PdfObject's in a PdfVecObject.
10.125.2.1 PoDoFo::PdfVecObjects::PdfVecObjects ( )
Default constuctor
Parameters
rReference the reference to reuse
Returns
if autodeletion is enabled and all objects will be deleted when the PdfVecObjects is deleted.
Returns
beginning iterator
Returns
beginning iterator
Removes all objects from the vector and resets it to the default state.
If SetAutoDelete is true all objects are deleted. All observers are removed from the vector.
See also
SetAutoDelete
AutoDelete
Deletes all objects that are not references by other objects besides the trailer (which references the root dictionary,
which in turn should reference all other objects).
Parameters
pTrailer trailer object of the PDF
Warning this might be slow!
Creates a new object and inserts it into the vector. This function assigns the next free object number to the Pdf←-
Object.
Parameters
pszType optionall value of the /Type key of the object
Returns
Creates a new object (of type rVariants) and inserts it into the vector. This function assigns the next free object
number to the PdfObject.
Parameters
rVariant value of the PdfObject
Returns
Returns
Returns
Detach an observer.
Parameters
pObserver observer to detach
Returns
ending iterator
Returns
ending iterator
Returns
Returns
Finds the object with the given reference in m_vecOffsets and returns the index to it.
Parameters
ref the object to be found
Returns
Returns
Finds the object with the given reference in m_vecOffsets and returns a pointer to it if it is found.
Parameters
ref the object to be found
Returns
Returns
Get a set with all references of objects that the passed object depends on.
Parameters
pObj the object to calculate all dependencies for
pList write the list of dependencies to this list
Returns
a pointer to a PdfDocument that is the parent of this vector. Might be NULL if the vector has no parent.
Returns
Insert an object into this vector so that the vector remains sorted w.r.t. the ordering based on object and generation
numbers m_bObjectCount will be increased for the object.
Parameters
pObj pointer to the object you want to insert
See also
insert_sorted
10.125.3.29 PdfObject ∗ PoDoFo::PdfVecObjects::RemoveObject ( const PdfReference & ref, bool bMarkAsFree = true )
Remove the object with the given object and generation number from the list of objects. The object is returned if it
was found. Otherwise NULL is returned. The caller has to delete the object by hisself.
Parameters
ref the object to be found
bMarkAsFree if true the removed object reference is marked as free object you will always want to have this
true as invalid PDF files can be generated otherwise
Returns
Remove the object with the iterator it from the vector and return it
Parameters
it the object to remove
Returns
Renumbers all objects according to there current position in the vector. All references remain intact. Warning! This
function is very calculation intensive.
Parameters
pTrailer the trailer object
pNotDelete a list of object which must not be deleted
bDoGarbage←- enable garbage collection, which deletes all objects that are not reachable from the trailer.
Collection This might be slow!
See also
CollectGarbage
Parameters
size reserve space for that much elements in the internal vector
Set the object count so that the object described this reference is contained in the object count.
Parameters
rRef reference of newly added object
Sort the objects in the vector based on their object and generation numbers
#include <PdfEncoding.h>
Inheritance diagram for PoDoFo::PdfWin1250Encoding:
PoDoFo::PdfEncoding
PoDoFo::PdfSimpleEncoding
PoDoFo::PdfWinAnsiEncoding
PoDoFo::PdfWin1250Encoding
• PdfWin1250Encoding ()
WINDOWS-1250 encoding
Gets a table of 256 short values which are the big endian unicode code points that are assigned to the 256 values
of this encoding.
This table is used internally to convert an encoded string of this encoding to and from unicode.
Returns
#include <PdfEncoding.h>
Inheritance diagram for PoDoFo::PdfWinAnsiEncoding:
PoDoFo::PdfEncoding
PoDoFo::PdfSimpleEncoding
PoDoFo::PdfWinAnsiEncoding
PoDoFo::PdfIso88592Encoding PoDoFo::PdfWin1250Encoding
• PdfWinAnsiEncoding ()
The WinAnsi Encoding is the default encoding in PoDoFo for contents on PDF pages.
It is also called CP-1252 encoding. This class may be used as base for derived encodings.
See also
PdfWin1250Encoding
Do not allocate this class yourself, as allocations might be expensive. Try using PdfFont::WinAnsiEncoding.
See also
PdfFont::WinAnsiEncoding
Add this encoding object to a dictionary usually be adding an /Encoding key in font dictionaries.
This method generates array of differences into /Encoding dictionary if called from derived class with different
unicode table.
Parameters
rDictionary add the encoding to this dictionary
Gets a table of 256 short values which are the big endian unicode code points that are assigned to the 256 values
of this encoding.
This table is used internally to convert an encoded string of this encoding to and from unicode.
Returns
Implements PoDoFo::PdfSimpleEncoding.
Reimplemented in PoDoFo::PdfIso88592Encoding, and PoDoFo::PdfWin1250Encoding.
#include <PdfWriter.h>
Inheritance diagram for PoDoFo::PdfWriter:
PoDoFo::PdfWriter
PoDoFo::PdfImmediateWriter
Protected Attributes
• PdfVecObjects ∗ m_vecObjects
• PdfEncrypt ∗ m_pEncrypt
If not NULL encrypt all strings and streams and create an encryption dictionary in the trailer.
• PdfObject ∗ m_pEncryptObj
Used to temporarly store the encryption dictionary.
The PdfWriter class writes a list of PdfObjects as PDF file. The XRef section (which is the required table of contents
for any PDF file) is created automatically.
It does not know about pages but only about PdfObjects.
Most users will want to use PdfDocument.
Create a new pdf file, from an vector of PdfObjects and a trailer object.
Parameters
pVecObjects the vector of objects
pTrailer a valid trailer object
10.128.3.1 void PoDoFo::PdfWriter::CreateFileIdentifier ( PdfString & identifier, const PdfObject ∗ pTrailer ) const
[protected]
Creates a file identifier which is required in several PDF workflows. All values from the files document information
dictionary are used to create a unique MD5 key which is added to the trailer dictionary.
Parameters
identifier write the identifier to this string
pTrailer trailer object
Create a linearization dictionary for the current document and return a pointer to it after inserting it into the vector of
PdfObjects
Returns
10.128.3.3 void PoDoFo::PdfWriter::FillTrailerObject ( PdfObject ∗ pTrailer, pdf_long lSize, bool bPrevEntry, bool
bOnlySizeKey ) const
Calculate the byte offset of the object pObject in the PDF file if the file was written to disk at the moment of calling
this function.
This function is very calculation intensive!
Parameters
pObject object to calculate the byte offset (has to be a child of this PdfWriter)
pulOffset pointer to an unsigned long to save the offset
Returns
Returns
Returns
Returns
Returns
Returns
Enabled linearization for this document. I.e. optimize it for web usage. Default is false.
Parameters
bLinearize if true create a web optimized PDF file
Set the PDF Version of the document. Has to be called before Write() to have an effect.
Parameters
eVersion version of the pdf document
Create a XRef stream which is in some case more compact but requires at least PDF 1.5 Default is false.
Parameters
bStream if true a XRef stream object will be created
See also
Write
Reorder and renumber all object as required for linearized PDF files. This function is very slow.
Parameters
pLinearize linearization dictionary
pHint primary hint stream dictionary
pPage first page to display in the document
ppLast the pointer will be initialized to the last object belonging to the first pageInitialize m_pPages←-
Tree with its correct value Always call this function befre accessing the pages tree.Find de-
pendencies required for creating a linearized PDF of the catalog dictionary.Fill all keys in the
linearization dictionary with their values
pLinearize a linearization dictionary
pHint the hint stream
pPage the first page in the linerarized PDF file
pLast pointer of the last object belonging to the first page
pVecXRefOffset xref table entries for previous entry
#include <PdfXObject.h>
Inheritance diagram for PoDoFo::PdfXObject:
PoDoFo::PdfElement PoDoFo::PdfCanvas
PoDoFo::PdfXObject
PoDoFo::PdfImage
• PdfXObject (const PdfRect &rRect, PdfDocument ∗pParent, const char ∗pszPrefix=NULL, bool bWithout←-
ObjNum=false)
• PdfXObject (const PdfRect &rRect, PdfVecObjects ∗pParent, const char ∗pszPrefix=NULL)
• PdfXObject (const PdfMemDocument &rSourceDoc, int nPage, PdfDocument ∗pParent, const char ∗psz←-
Prefix=NULL, bool bUseTrimBox=false)
• PdfXObject (PdfDocument ∗pDoc, int nPage, const char ∗pszPrefix=NULL, bool bUseTrimBox=false)
• PdfXObject (PdfObject ∗pObject)
• virtual PdfObject ∗ GetContents () const
• virtual PdfObject ∗ GetContentsForAppending () const
• virtual PdfObject ∗ GetResources () const
• virtual const PdfRect GetPageSize () const
• const PdfName & GetIdentifier () const
• const PdfReference & GetObjectReference () const
A XObject is a content stream with several drawing commands and data which can be used throughout a PDF
document.
You can draw on a XObject like you would draw onto a page and can draw this XObject later again using a Pdf←-
Painter.
See also
PdfPainter
10.129.2.1 PoDoFo::PdfXObject::PdfXObject ( const PdfRect & rRect, PdfDocument ∗ pParent, const char ∗ pszPrefix =
NULL, bool bWithoutObjNum = false )
10.129.2.2 PoDoFo::PdfXObject::PdfXObject ( const PdfRect & rRect, PdfVecObjects ∗ pParent, const char ∗ pszPrefix =
NULL )
Parameters
rSourceDoc the document to create the XObject from
nPage the page-number in rDoc to create the XObject from
pParent the parent document of the XObject
pszPrefix optional prefix for XObject-name
bUseTrimBox if true try to use trimbox for size of xobject
10.129.2.4 PoDoFo::PdfXObject::PdfXObject ( PdfDocument ∗ pDoc, int nPage, const char ∗ pszPrefix = NULL, bool
bUseTrimBox = false )
Get access to the contents object of this page. If you want to draw onto the page, you have to add drawing
commands to the stream of the Contents object.
The contents object is a this pointer in this case.
Returns
a contents object
Implements PoDoFo::PdfCanvas.
Get access to the contents object of this page. If you want to draw onto the page, you have to add drawing
commands to the stream of the Contents object.
The contents object is a this pointer in this case.
Returns
a contents object
Implements PoDoFo::PdfCanvas.
Returns
identifier
Get the reference to the XObject in the PDF file without having to access the PdfObject.
This allows to work with XObjects which have been written to disk already.
Returns
Returns
Implements PoDoFo::PdfCanvas.
Get access to the resources object of this page. This is most likely an internal object.
Returns
a resources object
Implements PoDoFo::PdfCanvas.
#include <PdfXRef.h>
Inheritance diagram for PoDoFo::PdfXRef:
PoDoFo::PdfXRef
PoDoFo::PdfXRefStream
• PdfXRef ()
• virtual ∼PdfXRef ()
• void AddObject (const PdfReference &rRef, pdf_uint64 offset, bool bUsed)
• void Write (PdfOutputDevice ∗pDevice)
• pdf_uint32 GetSize () const
• virtual pdf_uint64 GetOffset () const
• void SetFirstEmptyBlock ()
10.130.2.1 PoDoFo::PdfXRef::PdfXRef ( )
10.130.3.1 void PoDoFo::PdfXRef::AddObject ( const PdfReference & rRef, pdf_uint64 offset, bool bUsed )
Add an object to the XRef table. The object should have been written to an output device already.
Parameters
rRef reference of this object
offset the offset where on the device the object was written
bUsed specifies wether this is an used or free object. Set this value to true for all normal objects and
to false for free object references.
Called at the start of writing the XRef table. This method can be overwritten in subclasses to write a general header
for the XRef table.
Parameters
pDevice the output device to which the XRef table should be written.
Reimplemented in PoDoFo::PdfXRefStream.
Called at the end of writing the XRef table. Sub classes can overload this method to finish a XRef table.
Parameters
pDevice the output device to which the XRef table should be written.
Reimplemented in PoDoFo::PdfXRefStream.
Returns
the offset in the file at which the XRef table starts after it was written
Reimplemented in PoDoFo::PdfXRefStream.
Get the size of the XRef table. I.e. the highest object number + 1.
Returns
Begin an XRef subsection. All following calls of WriteXRefEntry belong to this XRef subsection.
Parameters
pDevice the output device to which the XRef table should be written.
Reimplemented in PoDoFo::PdfXRefStream.
Reimplemented in PoDoFo::PdfXRefStream.
#include <PdfXRefStream.h>
Inheritance diagram for PoDoFo::PdfXRefStream:
PoDoFo::PdfXRef
PoDoFo::PdfXRefStream
Creates an XRef table that is a stream object. Requires at least PDF 1.5. XRef streams are more compact than
normal XRef tables.
This is an internal class of PoDoFo used by PdfWriter.
Parameters
pParent a vector of PdfObject is required to create a PdfObject for the XRef
pWriter is needed to fill the trailer directory correctly which is included into the XRef
Called at the start of writing the XRef table. This method can be overwritten in subclasses to write a general header
for the XRef table.
Parameters
pDevice the output device to which the XRef table should be written.
Called at the end of writing the XRef table. Sub classes can overload this method to finish a XRef table.
Parameters
pDevice the output device to which the XRef table should be written.
Returns
the offset in the file at which the XRef table starts after it was written
Begin an XRef subsection. All following calls of WriteXRefEntry belong to this XRef subsection.
Parameters
pDevice the output device to which the XRef table should be written.
nFirst the object number of the first object in this subsection
nCount the number of entries in this subsection
Parameters
pDevice the output device to which the XRef table should be written.
offset the offset of the object
generation the generation number
cMode the mode 'n' for object and 'f' for free objects
objectNumber the object number of the currently written object if cMode = 'n' otherwise undefined
#include <PdfXRefStreamParserObject.h>
Inheritance diagram for PoDoFo::PdfXRefStreamParserObject:
PoDoFo::PdfVariant
PoDoFo::PdfObject PoDoFo::PdfTokenizer
PoDoFo::PdfParserObject
PoDoFo::PdfXRefStreamParserObject
A utility class for PdfParser that can parse an XRef stream object.
It is mainly here to make PdfParser more modular.
Parse the object data from the given file handle starting at the current position.
Parameters
pCreator pointer to a PdfVecObjects to resolve object references
rDevice an open reference counted input device which is positioned in front of the object which is
going to be parsed.
rBuffer buffer to use for parsing to avoid reallocations
pOffsets XRef entries are stored into this array
Returns
Returns
#include <PdfEncoding.h>
Inheritance diagram for PoDoFo::PdfZapfDingbatsEncoding:
PoDoFo::PdfEncoding
PoDoFo::PdfSimpleEncoding
PoDoFo::PdfZapfDingbatsEncoding
• PdfZapfDingbatsEncoding ()
Do not allocate this class yourself, as allocations might be expensive. Try using PdfFont::ZapfDingbats.
See also
PdfFont::ZapfDingbatsEncoding
Gets a table of 256 short values which are the big endian unicode code points that are assigned to the 256 values
of this encoding.
This table is used internally to convert an encoded string of this encoding to and from unicode.
Returns
Implements PoDoFo::PdfSimpleEncoding.
#include <PdfVecObjects.h>
Inheritance diagram for PoDoFo::PdfVecObjects::StreamFactory:
PoDoFo::PdfVecObjects::StreamFactory
PoDoFo::PdfImmediateWriter
Parameters
pParent parent object
Returns
#include <PdfFontCache.h>
Public Attributes
• PdfString m_sFontName
We use PdfString here as it can easily handle unicode on windows.
File Documentation
#include "PdfCompilerCompat.h"
#include <wchar.h>
#include <map>
#include <string>
#include <vector>
#include <set>
#include "PdfError.h"
#include "PdfMemoryManagement.h"
#include "podofoapi.h"
Namespaces
• PoDoFo
Macros
Enumerations
• enum PoDoFo::EPdfVersion {
PoDoFo::ePdfVersion_1_0 = 0, PoDoFo::ePdfVersion_1_1, PoDoFo::ePdfVersion_1_2, PoDoFo::ePdf←-
Version_1_3,
PoDoFo::ePdfVersion_1_4, PoDoFo::ePdfVersion_1_5, PoDoFo::ePdfVersion_1_6, PoDoFo::ePdfVersion←-
_1_7 }
• enum PoDoFo::EPdfWriteMode { PoDoFo::ePdfWriteMode_Compact = 0x01, PoDoFo::ePdfWriteMode_←-
Clean = 0x02 }
• enum PoDoFo::EPdfDataType {
PoDoFo::ePdfDataType_Bool, PoDoFo::ePdfDataType_Number, PoDoFo::ePdfDataType_Real, PoDoFo::e←-
PdfDataType_String,
PoDoFo::ePdfDataType_HexString, PoDoFo::ePdfDataType_Name, PoDoFo::ePdfDataType_Array, PoDo←-
480 File Documentation
Fo::ePdfDataType_Dictionary,
PoDoFo::ePdfDataType_Null, PoDoFo::ePdfDataType_Reference, PoDoFo::ePdfDataType_RawData, Po←-
DoFo::ePdfDataType_Unknown }
• enum PoDoFo::EPdfFilter { PoDoFo::ePdfFilter_ASCIIHexDecode, PoDoFo::ePdfFilter_ASCII85Decode ,
PoDoFo::ePdfFilter_FlateDecode, PoDoFo::ePdfFilter_RunLengthDecode }
• enum PoDoFo::EPdfFontType
• enum PoDoFo::EPdfColorSpace {
PoDoFo::ePdfColorSpace_DeviceGray, PoDoFo::ePdfColorSpace_DeviceRGB, PoDoFo::ePdfColorSpace←-
_DeviceCMYK, PoDoFo::ePdfColorSpace_Separation,
PoDoFo::ePdfColorSpace_CieLab, PoDoFo::ePdfColorSpace_Indexed }
• enum PoDoFo::EPdfTextRenderingMode {
PoDoFo::ePdfTextRenderingMode_Fill = 0, PoDoFo::ePdfTextRenderingMode_Stroke, PoDoFo::ePdfText←-
RenderingMode_FillAndStroke, PoDoFo::ePdfTextRenderingMode_Invisible,
PoDoFo::ePdfTextRenderingMode_FillToClipPath, PoDoFo::ePdfTextRenderingMode_StrokeToClipPath,
PoDoFo::ePdfTextRenderingMode_FillAndStrokeToClipPath, PoDoFo::ePdfTextRenderingMode_ToClipPath
}
• enum PoDoFo::EPdfStrokeStyle
• enum PoDoFo::EPdfTilingPatternType
• enum PoDoFo::EPdfLineCapStyle
• enum PoDoFo::EPdfLineJoinStyle
• enum PoDoFo::EPdfVerticalAlignment
• enum PoDoFo::EPdfAlignment
• enum PoDoFo::EPdfPageSize {
PoDoFo::ePdfPageSize_A0, PoDoFo::ePdfPageSize_A1, PoDoFo::ePdfPageSize_A2, PoDoFo::ePdfPage←-
Size_A3,
PoDoFo::ePdfPageSize_A4, PoDoFo::ePdfPageSize_A5, PoDoFo::ePdfPageSize_A6, PoDoFo::ePdfPage←-
Size_Letter,
PoDoFo::ePdfPageSize_Legal, PoDoFo::ePdfPageSize_Tabloid }
• enum PoDoFo::EPdfPageMode
• enum PoDoFo::EPdfPageLayout
Functions
• template<typename T >
const T PoDoFo::PDF_MAX (const T a, const T b)
• template<typename T >
const T PoDoFo::PDF_MIN (const T a, const T b)
Variables
This file should be included as the FIRST file in every header of PoDoFo lib. It includes all standard files, defines
some useful macros, some datatypes and all important enumeration types. On supporting platforms it will be
precompiled to speed compilation.
PoDoFo version - 24-bit integer representation. Version is 0xMMmmpp where M is major, m is minor and p is patch
eg 0.7.0 is represented as 0x000700 eg 0.7.99 is represented as 0x000763
Note that the PoDoFo version is available in parts as individual 8-bit integer literals in PODOFO_VERSION_MAJOR,
PODOFO_VERSION_MINOR and PODOFO_VERSION_PATCH .
#include "podofoapi.h"
#include <string>
#include <queue>
#include <cstdarg>
Classes
• class PoDoFo::PdfError
Namespaces
• PoDoFo
Macros
Enumerations
• enum PoDoFo::EPdfError {
PoDoFo::ePdfError_ErrOk = 0, PoDoFo::ePdfError_TestFailed, PoDoFo::ePdfError_InvalidHandle, PoDo←-
Fo::ePdfError_FileNotFound,
PoDoFo::ePdfError_InvalidDeviceOperation, PoDoFo::ePdfError_UnexpectedEOF, PoDoFo::ePdfError_←-
OutOfMemory, PoDoFo::ePdfError_ValueOutOfRange,
PoDoFo::ePdfError_InternalLogic, PoDoFo::ePdfError_InvalidEnumValue, PoDoFo::ePdfError_PageNot←-
Found, PoDoFo::ePdfError_NoPdfFile,
PoDoFo::ePdfError_NoXRef, PoDoFo::ePdfError_NoTrailer, PoDoFo::ePdfError_NoNumber, PoDoFo::e←-
PdfError_NoObject,
PoDoFo::ePdfError_NoEOFToken, PoDoFo::ePdfError_InvalidTrailerSize, PoDoFo::ePdfError_Invalid←-
Linearization, PoDoFo::ePdfError_InvalidDataType,
PoDoFo::ePdfError_InvalidXRef, PoDoFo::ePdfError_InvalidXRefStream, PoDoFo::ePdfError_InvalidXRef←-
Type, PoDoFo::ePdfError_InvalidPredictor,
PoDoFo::ePdfError_InvalidStrokeStyle, PoDoFo::ePdfError_InvalidHexString, PoDoFo::ePdfError_Invalid←-
Stream, PoDoFo::ePdfError_InvalidStreamLength,
PoDoFo::ePdfError_InvalidKey, PoDoFo::ePdfError_InvalidName, PoDoFo::ePdfError_InvalidEncryptionDict,
PoDoFo::ePdfError_InvalidPassword,
PoDoFo::ePdfError_InvalidFontFile, PoDoFo::ePdfError_InvalidContentStream, PoDoFo::ePdfError_←-
UnsupportedFilter, PoDoFo::ePdfError_UnsupportedFontFormat,
PoDoFo::ePdfError_ActionAlreadyPresent, PoDoFo::ePdfError_WrongDestinationType, PoDoFo::ePdf←-
Error_MissingEndStream, PoDoFo::ePdfError_Date,
PoDoFo::ePdfError_Flate, PoDoFo::ePdfError_FreeType, PoDoFo::ePdfError_SignatureError, PoDoFo::e←-
PdfError_MutexError,
PoDoFo::ePdfError_UnsupportedImageFormat, PoDoFo::ePdfError_CannotConvertColor, PoDoFo::ePdf←-
Error_NotImplemented, PoDoFo::ePdfError_DestinationAlreadyPresent,
PoDoFo::ePdfError_ChangeOnImmutable, PoDoFo::ePdfError_NotCompiled, PoDoFo::ePdfError_Unknown
= 0xffff }
• enum PoDoFo::ELogSeverity {
PoDoFo::eLogSeverity_Critical, PoDoFo::eLogSeverity_Error, PoDoFo::eLogSeverity_Warning, PoDoFo::e←-
LogSeverity_Information,
PoDoFo::eLogSeverity_Debug, PoDoFo::eLogSeverity_None, PoDoFo::eLogSeverity_Unknown = 0xffff }
Set the value of the variable eCode (which has to exist in the current function) to x and return the eCode.
Set the value of the variable eCode (which has to exist in the current function) to x and return the eCode. Additionally
additional information on the error y is set. y has to be an c-string.
Evaluate ‘x' as a binary predicate and if it is true, raise a logic error with the info string ‘y' .
This macro will be undefined when NDEBUG is set, so it's compiled out for release builds. Use it for expensive or
extremely frequent sanity checking.
We define it then UNDEF it to help out doxygen.
#include "PdfDefines.h"
#include "PdfDefinesPrivate.h"
#include "PdfFilter.h"
#include "PdfRefCountedBuffer.h"
#include <zlib.h>
Classes
• class PoDoFo::PdfHexFilter
• class PoDoFo::PdfAscii85Filter
• class PoDoFo::PdfFlateFilter
• class PoDoFo::PdfRLEFilter
• class PoDoFo::PdfLZWFilter
Namespaces
• PoDoFo
PoDoFo, 31 PoDoFo, 33
ePdfDataType_Array ePdfError_InvalidDataType
PoDoFo, 32 PoDoFo, 33
ePdfDataType_Bool ePdfError_InvalidDeviceOperation
PoDoFo, 31 PoDoFo, 32
ePdfDataType_Dictionary ePdfError_InvalidEncryptionDict
PoDoFo, 32 PoDoFo, 33
ePdfDataType_HexString ePdfError_InvalidEnumValue
PoDoFo, 31 PoDoFo, 32
ePdfDataType_Name ePdfError_InvalidFontFile
PoDoFo, 31 PoDoFo, 33
ePdfDataType_Null ePdfError_InvalidHandle
PoDoFo, 32 PoDoFo, 32
ePdfDataType_Number ePdfError_InvalidHexString
PoDoFo, 31 PoDoFo, 33
ePdfDataType_RawData ePdfError_InvalidKey
PoDoFo, 32 PoDoFo, 33
ePdfDataType_Real ePdfError_InvalidLinearization
PoDoFo, 31 PoDoFo, 32
ePdfDataType_Reference ePdfError_InvalidName
PoDoFo, 32 PoDoFo, 33
ePdfDataType_String ePdfError_InvalidPassword
PoDoFo, 31 PoDoFo, 33
ePdfDataType_Unknown ePdfError_InvalidPredictor
PoDoFo, 32 PoDoFo, 33
EPdfDestinationType ePdfError_InvalidStream
PoDoFo, 32 PoDoFo, 33
EPdfEncryptAlgorithm ePdfError_InvalidStreamLength
PoDoFo::PdfEncrypt, 135 PoDoFo, 33
ePdfEncryptAlgorithm_AESV2 ePdfError_InvalidStrokeStyle
PoDoFo::PdfEncrypt, 135 PoDoFo, 33
ePdfEncryptAlgorithm_RC4V1 ePdfError_InvalidTrailerSize
PoDoFo::PdfEncrypt, 135 PoDoFo, 32
ePdfEncryptAlgorithm_RC4V2 ePdfError_InvalidXRef
PoDoFo::PdfEncrypt, 135 PoDoFo, 33
EPdfError ePdfError_InvalidXRefStream
PoDoFo, 32 PoDoFo, 33
ePdfError_ActionAlreadyPresent ePdfError_InvalidXRefType
PoDoFo, 33 PoDoFo, 33
ePdfError_CannotConvertColor ePdfError_MissingEndStream
PoDoFo, 33 PoDoFo, 33
ePdfError_ChangeOnImmutable ePdfError_MutexError
PoDoFo, 33 PoDoFo, 33
ePdfError_Date ePdfError_NoEOFToken
PoDoFo, 33 PoDoFo, 32
ePdfError_DestinationAlreadyPresent ePdfError_NoNumber
PoDoFo, 33 PoDoFo, 32
ePdfError_ErrOk ePdfError_NoObject
PoDoFo, 32 PoDoFo, 32
ePdfError_FileNotFound ePdfError_NoPdfFile
PoDoFo, 32 PoDoFo, 32
ePdfError_Flate ePdfError_NoTrailer
PoDoFo, 33 PoDoFo, 32
ePdfError_FreeType ePdfError_NoXRef
PoDoFo, 33 PoDoFo, 32
ePdfError_InternalLogic ePdfError_NotCompiled
PoDoFo, 32 PoDoFo, 33
ePdfError_InvalidContentStream ePdfError_NotImplemented
GetDictionary_NoDL GetFontMetrics
PoDoFo::PdfVariant, 437 PoDoFo::PdfFont, 179
GetDifferences GetFontMetrics2
PoDoFo::PdfDifferenceEncoding, 99 PoDoFo::PdfFont, 179
GetDuplicateFontType1 GetFontScale
PoDoFo::PdfFontCache, 184 PoDoFo::PdfFont, 180
GetEnabledEncryptionAlgorithms PoDoFo::PdfFontMetrics, 195
PoDoFo::PdfEncrypt, 138 GetFontSize
GetEncoding PoDoFo::PdfFont, 180
PoDoFo::PdfFont, 179 PoDoFo::PdfFontMetrics, 196
GetEncrypt GetFontSubset
PoDoFo::PdfMemDocument, 244 PoDoFo::PdfFontCache, 187
PoDoFo::PdfParser, 339 GetFontType
GetEncryptAlgorithm PoDoFo::PdfFontFactory, 192
PoDoFo::PdfEncrypt, 138 PoDoFo::PdfFontMetrics, 196
GetEncrypted GetFontname
PoDoFo::PdfMemDocument, 244 PoDoFo::PdfFontMetrics, 195
PoDoFo::PdfParser, 339 GetForegroundColor
PoDoFo::PdfWriter, 459 PoDoFo::PdfSimpleTableModel, 379
GetError PoDoFo::PdfTableModel, 415
PoDoFo::PdfError, 148 GetFreeObjects
GetEscapedName PoDoFo::PdfVecObjects, 448
PoDoFo::PdfName, 267 GetFromResources
GetField PoDoFo::PdfPage, 298
PoDoFo::PdfPage, 296, 298 GetGlyphId
GetFileAttachement PoDoFo::PdfFontMetrics, 196
PoDoFo::PdfAnnotation, 44 GetGlyphWidth
GetFileLength PoDoFo::PdfFontMetrics, 196
PoDoFo::PdfFileInputStream, 157 GetGrayScale
GetFileSize PoDoFo::PdfColor, 69
PoDoFo::PdfParser, 339 GetGreen
GetFilename PoDoFo::PdfColor, 69
PoDoFo::PdfFileSpec, 159 GetHandle
PoDoFo::PdfFontMetrics, 195 PoDoFo::PdfFileInputStream, 157
GetFilteredCopy GetHeight
PoDoFo::PdfStream, 391 PoDoFo::PdfImage, 219
GetFirstChar PoDoFo::PdfRect, 352
PoDoFo::PdfEncoding, 127 PoDoFo::PdfTable, 409
GetFlags GetHexValue
PoDoFo::PdfAnnotation, 44 PoDoFo::PdfTokenizer, 423
GetFont GetID
PoDoFo::PdfFontCache, 186 PoDoFo::PdfDifferenceEncoding, 100
PoDoFo::PdfMemDocument, 245 PoDoFo::PdfEncoding, 127
PoDoFo::PdfPainter, 318 PoDoFo::PdfIdentityEncoding, 217
PoDoFo::PdfSimpleTableModel, 379 PoDoFo::PdfSimpleEncoding, 375
PoDoFo::PdfTableModel, 414 GetIdentifier
GetFontCharSpace PoDoFo::PdfExtGState, 155
PoDoFo::PdfFont, 179 PoDoFo::PdfFont, 180
PoDoFo::PdfFontMetrics, 195 PoDoFo::PdfShadingPattern, 367
GetFontConfig PoDoFo::PdfTilingPattern, 422
PoDoFo::PdfFontConfigWrapper, 191 PoDoFo::PdfXObject, 464
GetFontData GetIgnoreBrokenObjects
PoDoFo::PdfFontMetrics, 195 PoDoFo::PdfParser, 339
GetFontDataLen GetImage
PoDoFo::PdfFontMetrics, 195 PoDoFo::PdfSimpleTableModel, 381
GetFontLibrary PoDoFo::PdfTableModel, 415
PoDoFo::PdfDocument, 112 GetImmutable
PoDoFo::PdfFontCache, 187 PoDoFo::PdfDataType, 80
GetObjectReference GetProcSet
PoDoFo::PdfXObject, 465 PoDoFo::PdfCanvas, 61
GetObjects GetProducer
PoDoFo::PdfDocument, 112 PoDoFo::PdfInfo, 226
PoDoFo::PdfMemDocument, 245, 246 GetQuadPoints
PoDoFo::PdfParser, 340 PoDoFo::PdfAnnotation, 45
GetOffset GetRawData
PoDoFo::PdfXRef, 467 PoDoFo::PdfVariant, 438
PoDoFo::PdfXRefStream, 470 GetReal
GetOpen PoDoFo::PdfVariant, 438
PoDoFo::PdfAnnotation, 45 GetRect
GetOutlines PoDoFo::PdfAnnotation, 45
PoDoFo::PdfDocument, 113 PoDoFo::PdfDestination, 88
GetOwner GetRed
PoDoFo::PdfObject, 277 PoDoFo::PdfColor, 70
GetPage GetReference
PoDoFo::PdfAnnotation, 45 PoDoFo::PdfVariant, 438
PoDoFo::PdfDestination, 86, 88 GetResources
PoDoFo::PdfDocument, 113 PoDoFo::PdfCanvas, 61
PoDoFo::PdfPagesTree, 303 PoDoFo::PdfPage, 299
PoDoFo::PdfPagesTreeCache, 306 PoDoFo::PdfXObject, 465
PoDoFo::PdfPainter, 319 GetRolloverCaption
GetPageCount PoDoFo::PdfPushButton, 349
PoDoFo::PdfDocument, 113 GetRotation
GetPageMode PoDoFo::PdfPage, 299
PoDoFo::PdfDocument, 113 GetRows
GetPageNumber PoDoFo::PdfTable, 411
PoDoFo::PdfPage, 299 GetSelectedItem
GetPageSize PoDoFo::PdfListField, 236
PoDoFo::PdfCanvas, 60 GetSignatureBeacon
PoDoFo::PdfPage, 299 PoDoFo::PdfSignOutputDevice, 370
PoDoFo::PdfXObject, 465 GetSignatureSize
GetPagesTree PoDoFo::PdfSignOutputDevice, 370
PoDoFo::PdfDocument, 113 GetSize
GetParentDocument PoDoFo::PdfArray, 52
PoDoFo::PdfVecObjects, 449 PoDoFo::PdfRefCountedBuffer, 355
GetParentOutline PoDoFo::PdfVecObjects, 449
PoDoFo::PdfOutlineItem, 284 PoDoFo::PdfXRef, 467
GetPdfAscent GetStream
PoDoFo::PdfFontMetrics, 197 PoDoFo::PdfObject, 277
GetPdfDescent GetStream_NoDL
PoDoFo::PdfFontMetrics, 197 PoDoFo::PdfObject, 278
GetPdfExtensions GetStrikeOutPosition
PoDoFo::PdfMemDocument, 246 PoDoFo::PdfFontMetrics, 197
GetPdfVersion GetStrikeOutPositionMM
PoDoFo::PdfDocument, 113 PoDoFo::PdfFontMetrics, 198
PoDoFo::PdfImmediateWriter, 223 GetStrikeoutThickness
PoDoFo::PdfMemDocument, 246 PoDoFo::PdfFontMetrics, 198
PoDoFo::PdfParser, 340 GetStrikeoutThicknessMM
PoDoFo::PdfStreamedDocument, 395 PoDoFo::PdfFontMetrics, 198
PoDoFo::PdfWriter, 459 GetString
GetPdfVersionString PoDoFo::PdfString, 402
PoDoFo::PdfParser, 340 PoDoFo::PdfVariant, 438
PoDoFo::PdfWriter, 460 GetStringIndex
GetPrecision PoDoFo::PdfArray, 52
PoDoFo::PdfPainter, 319 GetStringUtf8
GetPreviousOffset PoDoFo::PdfString, 402
PoDoFo::PdfXRefStreamParserObject, 471 GetStructTreeRoot
PODOFO_RAISE_ERROR_INFO PdfEncoding
PdfError.h, 478 PoDoFo::PdfEncoding, 125
PODOFO_RAISE_LOGIC_IF PdfEncodingDifference
PdfError.h, 478 PoDoFo::PdfEncodingDifference, 128
ParentDestructed PdfError
PoDoFo::PdfVecObjects::Observer, 40 PoDoFo::PdfError, 146, 147
ParseFile PdfError.h, 477
PoDoFo::PdfParser, 341, 342 PODOFO_RAISE_ERROR, 478
PoDoFo::PdfParserObject, 347 PODOFO_RAISE_ERROR_INFO, 478
ParseStream PODOFO_RAISE_LOGIC_IF, 478
PoDoFo::PdfParserObject, 347 PdfExponentialFunction
PdfAction PoDoFo::PdfExponentialFunction, 153
PoDoFo::PdfAction, 41 PdfExtGState
PdfAnnotation PoDoFo::PdfExtGState, 154
PoDoFo::PdfAnnotation, 43 PdfFileInputStream
PdfArray PoDoFo::PdfFileInputStream, 157
PoDoFo::PdfArray, 50 PdfFileOutputStream
PdfAxialShadingPattern PoDoFo::PdfFileOutputStream, 158
PoDoFo::PdfAxialShadingPattern, 57 PdfFileSpec
PdfBufferOutputStream PoDoFo::PdfFileSpec, 159
PoDoFo::PdfBufferOutputStream, 58 PdfFileStream
PdfCheckBox PoDoFo::PdfFileStream, 160
PoDoFo::PdfCheckBox, 61, 62 PdfFilter
PdfColor PoDoFo::PdfFilter, 164
PoDoFo::PdfColor, 64 PdfFilteredDecodeStream
PdfComboBox PoDoFo::PdfFilteredDecodeStream, 170
PoDoFo::PdfComboBox, 73 PdfFilteredEncodeStream
PdfContents PoDoFo::PdfFilteredEncodeStream, 171
PoDoFo::PdfContents, 74 PdfFiltersPrivate.h, 478
PdfContentsTokenizer PdfFont
PoDoFo::PdfContentsTokenizer, 75, 76 PoDoFo::PdfFont, 178
PdfData PdfFontCID
PoDoFo::PdfData, 77, 78 PoDoFo::PdfFontCID, 188
PdfDataType PdfFontCache
PoDoFo::PdfDataType, 79 PoDoFo::PdfFontCache, 184
PdfDate PdfFontConfigWrapper
PoDoFo::PdfDate, 81 PoDoFo::PdfFontConfigWrapper, 191
PdfDefines.h, 475 PdfFontSimple
ePdfBlendMode_Normal, 476 PoDoFo::PdfFontSimple, 203
ePdfRenderingIntent_AbsoluteColorimetric, 476 PdfFontTTFSubset
PODOFO_MAKE_VERSION_REAL, 477 PoDoFo::PdfFontTTFSubset, 206
PODOFO_MAKE_VERSION_STR_REAL, 477 PdfFontTrueType
PdfDestination PoDoFo::PdfFontTrueType, 204, 205
PoDoFo::PdfDestination, 84, 85 PdfFontType1
PdfDeviceInputStream PoDoFo::PdfFontType1, 207, 208
PoDoFo::PdfDeviceInputStream, 89 PdfFontType1Base14
PdfDeviceOutputStream PoDoFo::PdfFontType1Base14, 209
PoDoFo::PdfDeviceOutputStream, 90 PdfFontType3
PdfDictionary PoDoFo::PdfFontType3, 210, 211
PoDoFo::PdfDictionary, 91 PdfFunction
PdfDifferenceEncoding PoDoFo::PdfFunction, 212
PoDoFo::PdfDifferenceEncoding, 96, 97 PdfFunctionBaseShadingPattern
PdfDocEncoding PoDoFo::PdfFunctionBaseShadingPattern, 213
PoDoFo::PdfDocEncoding, 101 PdfIdentityEncoding
PdfDocument PoDoFo::PdfIdentityEncoding, 216
PoDoFo::PdfDocument, 104 PdfImage
PdfElement PoDoFo::PdfImage, 219
PoDoFo::PdfElement, 122 PdfImmediateWriter
BeginDecodeImpl, 54 IsGrayScale, 71
BeginEncodeImpl, 55 IsRGB, 71
CanDecode, 55 IsSeparation, 71
CanEncode, 55 operator!=, 71
DecodeBlockImpl, 55 operator=, 71
EncodeBlockImpl, 55 operator==, 72
EndDecodeImpl, 56 PdfColor, 64
EndEncodeImpl, 56 ToArray, 72
GetType, 56 PoDoFo::PdfComboBox, 72
PoDoFo::PdfAxialShadingPattern, 57 IsEditable, 73
PdfAxialShadingPattern, 57 PdfComboBox, 73
PoDoFo::PdfBufferOutputStream, 58 SetEditable, 73
Close, 58 PoDoFo::PdfContents, 73
GetLength, 58 ∼PdfContents, 74
PdfBufferOutputStream, 58 GetContents, 75
Write, 59 GetContentsForAppending, 75
PoDoFo::PdfCanvas, 59 PdfContents, 74
∼PdfCanvas, 60 PoDoFo::PdfContentsTokenizer, 75
AddColorResource, 60 GetNextToken, 76
AddResource, 60 PdfContentsTokenizer, 75, 76
GetContents, 60 ReadNext, 76
GetContentsForAppending, 60 PoDoFo::PdfData, 77
GetPageSize, 60 data, 78
GetProcSet, 61 operator=, 78
GetResources, 61 PdfData, 77, 78
PoDoFo::PdfCheckBox, 61 Write, 78
IsChecked, 62 PoDoFo::PdfDataType, 79
PdfCheckBox, 61, 62 AssertMutable, 80
SetAppearanceChecked, 62 GetImmutable, 80
SetAppearanceUnchecked, 62 IsDirty, 80
SetChecked, 62 PdfDataType, 79
PoDoFo::PdfColor, 63 SetDirty, 80
∼PdfColor, 64 SetImmutable, 80
BuildColorSpace, 65 Write, 80
ConvertToCMYK, 65 PoDoFo::PdfDate, 81
ConvertToGrayScale, 65 ∼PdfDate, 83
ConvertToRGB, 65 GetTime, 83
FromArray, 66 IsValid, 83
FromString, 66 PdfDate, 81
GetAlternateColorSpace, 66 ToString, 83
GetBlack, 66 PoDoFo::PdfDestination, 83
GetBlue, 67 AddToDictionary, 85
GetCieA, 67 GetArray, 86
GetCieB, 67 GetDValue, 86
GetCieL, 67 GetLeft, 86
GetColorSpace, 68 GetObject, 86
GetColorSpaceForName, 68 GetPage, 86, 88
GetCyan, 68 GetRect, 88
GetDensity, 68 GetTop, 88
GetGrayScale, 69 GetType, 88
GetGreen, 69 GetZoom, 88
GetMagenta, 69 operator=, 88
GetName, 69 PdfDestination, 84, 85
GetNameForColorSpace, 70 PoDoFo::PdfDeviceInputStream, 89
GetRed, 70 PdfDeviceInputStream, 89
GetYellow, 70 Read, 89
IsCMYK, 71 PoDoFo::PdfDeviceOutputStream, 90
IsCieLab, 70 Close, 90
SetUnderlined TypeNameForIndex
PoDoFo::PdfFont, 182 PoDoFo::PdfElement, 123
SetUseFullScreen TypeNameToIndex
PoDoFo::PdfDocument, 120 PoDoFo::PdfElement, 123
SetUseXRefStream
PoDoFo::PdfWriter, 460 UnLock
SetViewerPreference PoDoFo::Util::PdfMutexImpl, 264
PoDoFo::PdfDocument, 120 Uncompress
SetWidth PoDoFo::PdfMemStream, 261
PoDoFo::PdfRect, 353 UnicodeCharWidth
SetWordSpace PoDoFo::PdfFontMetrics, 202
PoDoFo::PdfFont, 182 UnicodeIDToName
PoDoFo::PdfFontMetrics, 200 PoDoFo::PdfDifferenceEncoding, 100
SetWordWrapEnabled
PoDoFo::PdfSimpleTableModel, 385 VerticalLineTo
SetWriteMode PoDoFo::PdfPainter, 332
PoDoFo::PdfMemDocument, 253
PoDoFo::PdfWriter, 461 what
size PoDoFo::PdfError, 152
PoDoFo::PdfArray, 53 Write
SmoothCurveTo PoDoFo::NonPublic::PdfTTFWriter, 430
PoDoFo::PdfPainter, 330 PoDoFo::PdfArray, 54
SmoothQuadCurveTo PoDoFo::PdfBufferOutputStream, 59
PoDoFo::PdfPainter, 332 PoDoFo::PdfData, 78
Sort PoDoFo::PdfDataType, 80
PoDoFo::PdfVecObjects, 453 PoDoFo::PdfDeviceOutputStream, 90
StringWidth PoDoFo::PdfDictionary, 95
PoDoFo::PdfFontMetrics, 200, 201 PoDoFo::PdfFileOutputStream, 158
StringWidthMM PoDoFo::PdfFileStream, 163
PoDoFo::PdfFontMetrics, 201, 202 PoDoFo::PdfFilteredDecodeStream, 170
Stroke PoDoFo::PdfFilteredEncodeStream, 171
PoDoFo::PdfPainter, 332 PoDoFo::PdfMemDocument, 253
Subset PoDoFo::PdfMemStream, 262
PoDoFo::NonPublic::PdfTTFWriter, 430 PoDoFo::PdfMemoryOutputStream, 257
PoDoFo::PdfName, 269
TakeBuffer PoDoFo::PdfOutputDevice, 291
PoDoFo::PdfMemoryOutputStream, 257 PoDoFo::PdfOutputStream, 291, 292
TakeEncrypt PoDoFo::PdfReference, 362
PoDoFo::PdfParser, 345 PoDoFo::PdfSignOutputDevice, 373
TakePossesion PoDoFo::PdfStream, 393
PoDoFo::PdfRefCountedBuffer, 356 PoDoFo::PdfString, 405
Tell PoDoFo::PdfVariant, 443
PoDoFo::PdfInputDevice, 230 PoDoFo::PdfWriter, 461
PoDoFo::PdfOutputDevice, 290 PoDoFo::PdfXRef, 467
PoDoFo::PdfSignOutputDevice, 373 WriteLinearized
ToArray PoDoFo::PdfWriter, 461
PoDoFo::PdfColor, 72 WriteObject
PoDoFo::PdfEncodingDifference, 130 PoDoFo::PdfObject, 279
ToString PoDoFo::PdfVecObjects, 453
PoDoFo::PdfDate, 83 WritePdfHeader
PoDoFo::PdfRect, 353 PoDoFo::PdfWriter, 461
PoDoFo::PdfReference, 362 WritePdfObjects
PoDoFo::PdfVariant, 441 PoDoFo::PdfWriter, 461
ToUnicode WriteStringToStream
PoDoFo::PdfString, 405 PoDoFo::PdfFont, 183
ToVariant WriteSubSection
PoDoFo::PdfRect, 353 PoDoFo::PdfXRef, 467
TryLock PoDoFo::PdfXRefStream, 470
PoDoFo::Util::PdfMutexImpl, 264 WriteToBuffer
PoDoFo::PdfWriter, 461
WriteXRefEntry
PoDoFo::PdfXRef, 467
PoDoFo::PdfXRefStream, 470