aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/qpdf/QPDFPageDocumentHelper.hh16
1 files changed, 16 insertions, 0 deletions
diff --git a/include/qpdf/QPDFPageDocumentHelper.hh b/include/qpdf/QPDFPageDocumentHelper.hh
index 52e03be8..d5446c16 100644
--- a/include/qpdf/QPDFPageDocumentHelper.hh
+++ b/include/qpdf/QPDFPageDocumentHelper.hh
@@ -31,6 +31,8 @@
#include <qpdf/QPDF.hh>
+class QPDFAcroFormDocumentHelper;
+
class QPDFPageDocumentHelper: public QPDFDocumentHelper
{
public:
@@ -84,7 +86,21 @@ class QPDFPageDocumentHelper: public QPDFDocumentHelper
QPDF_DLL
void removePage(QPDFPageObjectHelper page);
+ // For every annotation, integrate the annotation's appearance
+ // stream into the containing page's content streams, merge the
+ // annotation's resources with the page's resources, and remove
+ // the annotation from the page. Handles widget annotations
+ // associated with interactive form fields as a special case,
+ // including removing the /AcroForm key from the document catalog.
+ QPDF_DLL
+ void flattenAnnotations();
+
private:
+ void flattenAnnotationsForPage(
+ QPDFPageObjectHelper& page,
+ QPDFObjectHandle& resources,
+ QPDFAcroFormDocumentHelper& afdh);
+
class Members
{
friend class QPDFPageDocumentHelper;