---
title: "Document save options in Flutter"
canonical_url: "https://www.nutrient.io/guides/flutter/save-a-document/save-options/"
md_url: "https://www.nutrient.io/guides/flutter/save-a-document/save-options.md"
last_updated: "2026-06-08T17:11:05.529Z"
description: "Customize PDF saving in Flutter with DocumentSaveOptions. Control annotations, permissions, and output formats when using save() and exportPdf()."
---

# Supported document save options in Flutter

[`DocumentSaveOptions`](https://pub.dev/documentation/nutrient_flutter/latest/nutrient_flutter/DocumentSaveOptions-class.html) provides control over how documents are saved and exported. Pass it to `PdfDocument.save()` or `PdfDocument.exportPdf()` on Android and iOS to customize document properties during the save process.

The following save options are available:

- `flatten` — Visually embeds annotations and form fields in a document and removes them from the document’s data.

- `incremental` — Forces a document to be incrementally saved if `true`.

- `excludeAnnotations` — Excludes annotations from a saved or exported document.

- `saveForPrinting` — Excludes annotations that have the `noPrint` flag set to `true`.

- `permissions` — Protects a PDF with a password and sets the permissions for the document.

- `outputFormat` — Saves or exports a PDF in PDF/A format.

- `userPassword` — Sets the user password for a document.

- `ownerPassword` — Sets the owner password for a document.

## Saving with options

Use `DocumentSaveOptions` with `PdfDocument.save()` to save a document with custom options. Optionally, provide an `outputPath` to save to a different location:

```dart

final document = await Nutrient.openDocument(documentPath);

// Save in place with options.
await document.save(
  options: DocumentSaveOptions(
    flatten: true,
    incremental: false,
    excludeAnnotations: false,
  ),
);

// Save to a different path.
await document.save(
  outputPath: '/path/to/output.pdf',
  options: DocumentSaveOptions(
    flatten: true,
  ),
);

```

## Exporting with options

Use `DocumentSaveOptions` with `PdfDocument.exportPdf()` to export a copy of a document as binary data:

```dart

final data = await pdfDocument.exportPdf(
  options: DocumentSaveOptions(
    userPassword: ‘userPassword’,
    ownerPassword: ‘ownerPassword’,
    flatten: true,
    incremental: true,
    excludeAnnotations: true,
    saveForPrinting: true,
    permissions: [
      DocumentPermissions.printing,
      DocumentPermissions.modification,
    ],
  ),
);

// Save the data to a file or upload to a remote server.

```

For more details about saving a document with Nutrient Flutter SDK, refer to the [Catalog example project](https://github.com/PSPDFKit/pspdfkit-flutter).
---

## Related pages

- [Conflict resolution](/guides/flutter/save-a-document/conflict-resolution.md)
- [Detecting unsaved changes in PDFs](/guides/flutter/save-a-document/detect-unsaved-changes.md)
- [Auto save PDF files in Flutter](/guides/flutter/save-a-document.md)
- [How to use Save As for PDFs in Flutter](/guides/flutter/save-a-document/save-as.md)
- [Save a document to a remote server in Flutter](/guides/flutter/save-a-document/save-to-remote.md)

