5#ifndef PDF_PAGES_COLLECTION_H
6#define PDF_PAGES_COLLECTION_H
10#include "PdfElement.h"
16 class PODOFO_API PdfObjectRelocationMap final
18 friend class PdfXObjectForm;
19 friend class PdfPageCollection;
21 PdfObjectRelocationMap();
25 PdfObjectRelocationMap(
const PdfObjectRelocationMap&) =
delete;
26 PdfObjectRelocationMap& operator=(
const PdfObjectRelocationMap& rhs) =
delete;
29 std::unordered_map<PdfReference, PdfObject*> Map;
54 unsigned GetCount()
const;
62 PdfPage& GetPageAt(
unsigned index);
63 const PdfPage& GetPageAt(
unsigned index)
const;
132 void RemovePageAt(
unsigned atIndex);
138 void FlattenStructure();
141 template <
typename TObject,
typename TListIterator>
146 using difference_type =
void;
148 using pointer =
void;
149 using reference =
void;
150 using iterator_category = std::forward_iterator_tag;
156 Iterator(
const Iterator&) =
default;
157 Iterator& operator=(
const Iterator&) =
default;
158 bool operator==(
const Iterator&
rhs)
const
160 return m_iterator ==
rhs.m_iterator;
162 bool operator!=(
const Iterator&
rhs)
const
164 return m_iterator !=
rhs.m_iterator;
166 Iterator& operator++()
171 Iterator operator++(
int)
177 value_type operator*()
181 value_type operator->()
189 using PageList = std::vector<PdfPage*>;
203 void InsertPageAt(
unsigned atIndex, std::unique_ptr<PdfPage>
page);
212 void insertPageAt(
unsigned atIndex, std::unique_ptr<PdfPage>
page);
This file should be included as the FIRST file in every header of PoDoFo lib.
This class represents a PdfArray Use it for all arrays that are written to a PDF file.
Definition PdfArray.h:76
PdfDocument is the core interface for working with PDF documents.
Definition PdfDocument.h:108
This class represents a PDF indirect Object in memory.
Definition PdfObject.h:31
Class for managing the tree of Pages in a PDF document Don't use this class directly.
Definition PdfPageCollection.h:37
PdfPage is one page in the pdf document.
Definition PdfPage.h:133
A reference is a pointer to a object in the PDF file of the form "4 0 R", where 4 is the object numbe...
Definition PdfReference.h:20
An normalized rectangle defined by position (left-bottom) and size.
Definition Rect.h:17
Convenient type for char array storage and/or buffer with std::string compatibility.
Definition basetypes.h:30
All classes, functions, types and enums of PoDoFo are members of these namespace.
Definition basetypes.h:13
PdfPageSize
Enum holding the supported page sizes by PoDoFo.
Definition PdfDeclarations.h:485
tcb::span< T, Extent > mspan
Mutable span.
Definition span.h:22