5#ifndef PDF_DECLARATIONS_H
6#define PDF_DECLARATIONS_H
17#include <podofo/auxiliary/basedefs.h>
20#include <podofo/auxiliary/baseincludes.h>
22#include <podofo/auxiliary/Version.h>
24#define FORWARD_DECLARE_FCONFIG()\
27 typedef struct _FcConfig FcConfig;\
30#define FORWARD_DECLARE_FREETYPE()\
34 typedef struct FT_FaceRec_* FT_Face;\
107enum class PdfUALevel : uint8_t
137enum class PdfWModeKind : uint8_t
179enum class PdfTokenType : uint8_t
189 DoubleAngleBracketsLeft,
190 DoubleAngleBracketsRight,
209enum class PdfXObjectType : uint8_t
263enum class PdfFontStretch : uint8_t
475 NoCollectGarbage = 8,
512 SkipXRefRecovery = 4,
515enum class PdfAdditionalMetadata : uint8_t
581enum class PdfStandard14FontType : uint8_t
591 HelveticaBoldOblique,
658 ToggleNoView = 0x0100,
659 LockedContents = 0x0200,
693enum class PdfFieldFlags : uint8_t
710enum class PdfResourceType : uint8_t
722enum class PdfKnownNameTree : uint8_t
733 AlternatePresentations,
841 AbsoluteColorimetric,
842 RelativeColorimetric,
871enum class PdfSignatureType : uint8_t
878enum class PdfSignatureEncryption : uint8_t
885enum class PdfHashingAlgorithm : uint8_t
893using PdfFilterList = std::vector<PdfFilterType>;
Convenient type for char array storage and/or buffer with std::string compatibility.
Definition basetypes.h:35
All classes, functions, types and enums of PoDoFo are members of these namespace.
Definition basetypes.h:13
PdfLineJoinStyle
Enum for line join styles when drawing.
Definition PdfDeclarations.h:440
PdfPageLayout
Enum holding the supported of types of "PageLayouts" that define how Acrobat will display the pages i...
Definition PdfDeclarations.h:572
PdfAnnotationType
The type of the annotation.
Definition PdfDeclarations.h:610
PdfPageSize
Enum holding the supported page sizes by PoDoFo.
Definition PdfDeclarations.h:533
PdfPixelFormat
Definition PdfDeclarations.h:373
@ BGRA
This is known to be used in Windows GDI Bitmap.
@ ABGR
This is known to be used in JDK BufferedImage.TYPE_4BYTE_ABGR.
@ RGBA
This is known to be working in Apple CGImage created with rgb colorspace and kCGBitmapByteOrder32Big ...
PdfInfoInitial
Enum to specify the initial information of the info dictionary.
Definition PdfDeclarations.h:419
@ WriteCreationTime
Write the creation time (current time). Default for new documents.
@ WriteModificationTime
Write the modification time (current time). Default for loaded documents.
@ WriteProducer
Write producer key. Default for new documents.
PdfPageMode
Enum holding the supported of types of "PageModes" that define which (if any) of the "panels" are ope...
Definition PdfDeclarations.h:555
PdfGlyphAccess
When accessing a glyph, there may be a difference in the glyph ID to retrieve the widths or to index ...
Definition PdfDeclarations.h:321
@ ReadMetrics
The glyph is accessed in the PDF metrics arrays (/Widths, /W keys)
@ FontProgram
The glyph is accessed in the font program.
PdfBlendMode
List of defined transparency blending modes.
Definition PdfDeclarations.h:851
PdfFontFileType
Definition PdfDeclarations.h:294
@ Type1CFF
Compact Font representation for a Type1 font, as described by Adobe Technical Note #5176 "The Compact...
@ CIDKeyedCFF
A Compact Font representation of a CID keyed font, as described by Adobe Technical Note #5176 "The Co...
@ OpenTypeCFF
OpenType font with a "CFF"/"CFF2" table, as described in ISO/IEC 14496-22.
PdfStrokeStyle
Enum for the different stroke styles that can be set when drawing to a PDF file (mostly for line draw...
Definition PdfDeclarations.h:406
PdfDataType
Every PDF datatype that can occur in a PDF file is referenced by an own enum (e.g.
Definition PdfDeclarations.h:165
@ String
String datatype in PDF file. Strings have the form (Hallo World!) in PDF files.
@ Dictionary
A dictionary associates keys with values. A key can have another dictionary as value.
@ Array
An array of other PDF data types.
@ Name
Name datatype. Names are used as keys in dictionary to reference values.
@ Reference
The reference datatype contains references to PDF objects in the PDF file of the form 4 0 R.
@ Real
Real datatype for floating point numbers.
@ Number
Number datatype for integer values.
@ Null
The null datatype is always null.
@ Bool
Boolean datatype: Accepts the values "true" and "false".
PdfSaveOptions
Definition PdfDeclarations.h:467
@ NoMetadataUpdate
Don't update the trailer "/Info/ModDate" with current time and synchronize XMP metadata "/Catalog/Met...
@ SaveOnSigning
Save the document on a signing operation, instead of performing an incremental update.
@ IgnoreXRefErrors
This curently applies only during singing, and allows to sign documents with broken xref sections.
PdfRenderingIntent
List of defined Rendering intents.
Definition PdfDeclarations.h:839
PdfStringCharset
Definition PdfDeclarations.h:115
@ PdfDocEncoding
UTF-8 string that have characters that are in the whole PdfDocEncoding charset.
@ Ascii
UTF-8 string that have characters that are in both Ascii and PdfDocEncoding charsets.
@ Unicode
UTF-8 string that have characters that are in the whole Unicode charset.
PdfFieldType
The type of PDF field.
Definition PdfDeclarations.h:665
constexpr PdfVersion PdfVersionDefault
The default PDF Version used by new PDF documents in PoDoFo.
Definition PdfDeclarations.h:85
PdfLoadOptions
Definition PdfDeclarations.h:505
@ LoadStreamsEagerly
Skip rebuilding object index on cross reference sections parsing failing.
@ StrictParsing
Load object streams immediately after parsing cross references sections.
PdfHorizontalAlignment
Enum for text alignment.
Definition PdfDeclarations.h:460
@ None
Do not add a default appearrance.
PdfExportFormat
Definition PdfDeclarations.h:239
@ Png
NOTE: Not yet supported.
PdfFontAutoSelectBehavior
Flags to control font creation.
Definition PdfDeclarations.h:329
@ Standard14Alt
Automatically select a Standard14 font if the fontname matches one of them (standard and alternative ...
@ Standard14
Automatically select a Standard14 font if the fontname matches one of them.
PdfAppearanceType
Type of the annotation appearance.
Definition PdfDeclarations.h:704
@ Down
Down appearance; the default is PdfAnnotationAppearance::Normal.
@ Rollover
Rollover appearance; the default is PdfAnnotationAppearance::Normal.
PdfWriteFlags
Specify additional options for writing the PDF.
Definition PdfDeclarations.h:147
@ Clean
Create a PDF that is readable in a text editor, i.e. insert spaces and linebreaks between tokens.
@ NoInlineLiteral
Don't write spaces before literal types (numerical, references, null)
@ PdfAPreserve
Preserve PDFA compliance during writing (NOTE: it does not itself convert the document to PDF/A)
@ SkipDelimiters
Skip delimiters in serialization of strings and outer dictionaries/arrays.
PdfLineCapStyle
Enum for line cap styles when drawing.
Definition PdfDeclarations.h:430
PdfHighlightingMode
The possible highlighting modes for a PdfField.
Definition PdfDeclarations.h:685
@ InvertOutline
Invert the fields border.
@ Invert
Invert the PdfField.
@ Push
Display the fields down appearance (requires an additional appearance stream to be set)
PdfTextExtractFlags
Definition PdfDeclarations.h:197
@ ComputeBoundingBox
NOTE: Currently the bounding is inaccurate.
@ ExtractSubstring
NOTE: Extract the matched substring.
PdfFontCreateFlags
Font init flags.
Definition PdfDeclarations.h:338
@ DontEmbed
Do not embed font data. Not embedding Standard14 fonts implies non CID.
@ DontSubset
Don't subset font data (includes all the font glyphs)
@ PreferNonCID
Prefer non CID, simple fonts (/Type1, /TrueType)
PdfEncodingMapType
Definition PdfDeclarations.h:123
@ Simple
A legacy encoding, such as predefined, Type1 font built-in, or difference.
@ Indeterminate
Indeterminate map type, such as non standard identity encodings.
@ CMap
A proper CMap encoding or pre-defined CMap names.
PdfAnnotationFlags
Flags that control the appearance of a PdfAnnotation.
Definition PdfDeclarations.h:648
PdfFilterType
Every filter that can be used to encode a stream in a PDF file is referenced by an own enum value.
Definition PdfDeclarations.h:224
@ RunLengthDecode
Run length decode data.
@ ASCII85Decode
Converts to and from Ascii85 encoding.
@ ASCIIHexDecode
Converts data from and to hexadecimal. Increases size of the data by a factor of 2!
@ FlateDecode
Compress data using the Flate algorithm of ZLib. This filter is recommended to be used always.
PdfOperator
List of PDF stream content operators.
Definition PdfDeclarations.h:741
PdfFontStyle
Font style flags used during searches.
Definition PdfDeclarations.h:308
PdfTextRenderingMode
Enum for text rendering mode (Tr)
Definition PdfDeclarations.h:390
@ StrokeAddToClipPath
Stroke text and add to path for clipping.
@ AddToClipPath
Add text to path for clipping.
@ Invisible
Neither fill nor stroke text (invisible)
@ FillStroke
Fill, then stroke text.
@ Fill
Default mode, fill text.
@ FillAddToClipPath
Fill text and add to path for clipping.
@ FillStrokeAddToClipPath
Fill, then stroke text and add to path for clipping.
PdfFontType
Enum specifying the type of the font.
Definition PdfDeclarations.h:284
@ CIDCFF
This is a "/CIDFontType0" font.
@ CIDTrueType
This is a "/CIDFontType2" font.
PdfColorSpaceType
Enum for the colorspaces supported by PDF.
Definition PdfDeclarations.h:357
PdfVerticalAlignment
Enum for vertical text alignment.
Definition PdfDeclarations.h:450
PdfFontDescriptorFlags
Enum for the font descriptor flags.
Definition PdfDeclarations.h:250
@ NonSymbolic
Font uses the Standard Latin character set or a subset of it. It does not mean the font uses only tex...
@ Italic
Glyphs have dominant vertical strokes that are slanted.
@ ForceBold
Determine whether bold glyphs shall be painted with extra pixels even.
@ Symbolic
Font contains glyphs outside the Standard Latin character set. It does not mean the font is a symbol ...
@ FixedPitch
Also known as monospaced.
PdfLogSeverity
Used in PoDoFo::LogMessage to specify the log level.
Definition PdfDeclarations.h:55
@ Debug
Debug information.
@ Information
Information message.
PdfPredefinedEncodingType
Definition PdfDeclarations.h:130
@ PredefinedCMap
A predefined CMap, see ISO 32000-2:2020 "9.7.5.2 Predefined CMaps".
@ IdentityCMap
A predefined identity CMap that is either "Identity-H" or "Identity-V".
@ LegacyPredefined
A legacy predefined encoding, such as "WinAnsiEncoding", "MacRomanEncoding" or "MacExpertEncoding".
PdfFontMatchBehaviorFlags
Definition PdfDeclarations.h:346
@ NormalizePattern
Normalize search pattern, removing subset prefixes like "ABCDEF+" and extract flags from it (like ",...
@ SkipMatchPostScriptName
Skip matching postscript font name.
PdfVersion
Enum to identify different versions of the PDF file format.
Definition PdfDeclarations.h:69