# SaveFlags Enum

> Flags for saving documents.

- Product: Adobe PDF Library 21
- Language: Modern C++
- Version: 21.4.0
- HTML page: https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/enum/SaveFlags
- Version index: https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/llms.txt

**Namespace:** `datalogics_interface`

## Description

Flags for saving documents.

## Values

- `Incremental = 0x00`: Incremental save only write objects that have changed after the end of the document rather than disturbing unchanged items. Use with Copy to create a new file which incorporates a copy of the input file before making changes. This flag can be useful when making changes to signed documents, as it preserves the validity of any existing signatures.
- `Full = 0x01`: Save the entire document.
- `Copy = 0x02`: Saves a copy of the document. Used with Incremental to create a new file from a binary copy of the input document.
- `Linearized = 0x04`: Save in a format that is suitable for remote (network) access, Linearized is sometimes referred to as Web Optimized because of its goal of minimizing the perception of poor performance due to the number of pages in a document. This inherently uses OptimizeFonts, for documents with a large number of fonts, font optimization can have poor performance, see SaveLinearizedNoOptimizeFonts as an alternative.
- `CollectGarbage = 0x20`: Collect Garbage by removing unreferenced objects. Only valid with Full.
- `KeepModDate = 0x80`: Do not update the Modification Date.
- `SaveLinearizedNoOptimizeFonts = 0x200`: Save the document as Linearized the same as Linearized but OptimizeFonts is disabled. For documents with a large number of fonts, font optimization can have poor performance and is often unnecessary.
- `Compressed = 0x20000`: Use object compression wherever possible. Only valid with Full.
