Flattener
User Guide — Mapsoft Flattener Plugin for Adobe Acrobat
Overview
Flattener is an Adobe Acrobat plug-in that removes or flattens interactive PDF elements — annotations, form fields, markup, stamps, multimedia, and other non-static content — into the page’s static content stream. This converts a dynamic, interactive PDF into a clean, flat document where all visual elements are permanently embedded as part of the page content.
Flattening is essential in many workflows: preparing documents for archival where interactive elements must be preserved as static visuals, removing sensitive comments and markup before distribution, locking down form fields so they cannot be edited, or stripping multimedia content for compliance with regulatory submission requirements. Flattener gives you granular control over exactly which element types to flatten or remove, and optionally places flattened content onto named PDF layers (Optional Content Groups) for organizational clarity.
The plug-in is available in three variants: an Acrobat plug-in (MAPSFLATTENER.api), a COM automation DLL for scripted workflows, and a workflow server library (.lpi) for the Mapsoft Workflow Server. It also includes a Remove All button for quickly selecting all annotation and markup types at once.
Getting Started
After installation, Flattener adds a menu item to Adobe Acrobat. To open the dialog:
- Open a PDF document in Adobe Acrobat.
- Go to Extensions › Mapsoft › Flattener.
- The Flattener dialog will appear with checkboxes for each annotation and markup type, layer options, and configuration management controls.
Select the element types you wish to flatten or remove, configure any layer options, and click OK to process the document. The flattening operation iterates through every page, examining each annotation and converting selected types into static page content. Remember to save the document after flattening to preserve the changes.
Annotation Types
The dialog provides individual checkboxes for each annotation type that Flattener can process. Check the types you want to flatten or remove:
| Annotation Type | Description |
|---|---|
| Notes | Sticky note annotations (comment pop-ups). When flattened, the note icon is rendered into the page content and the associated text is removed. |
| Form Fields | Interactive form fields (text boxes, checkboxes, radio buttons, drop-downs, signature fields). Flattening converts them to static text/graphics showing their current values. The Flatten Remaining Content option controls whether the field appearance is preserved as static content. |
| Stamps | Rubber stamp annotations (Approved, Draft, Confidential, custom stamps). When flattened, the stamp’s visual appearance is rendered into the page. The option to leave the stamp appearance stream intact is available for Acrobat 5.0 and later. |
| Movies | Embedded movie/video annotations. These are removed from the page since video content cannot be meaningfully represented as static content. |
| Sounds | Sound annotations attached to the page. These are removed during flattening. |
| File Attachments | File attachment annotations (paperclip icons with embedded files). The attachment and its icon are removed from the page. |
| Links | Hyperlink annotations. Removing links strips the clickable regions and their associated actions (URL, page navigation, JavaScript). |
| 3D Content | 3D annotations embedded in the PDF. These are removed since interactive 3D content cannot be represented as flat content. |
| Redactions | Redaction annotations that mark content for removal. Flattening applies the redaction visually. |
| Headers & Footers | Flattens headers and footers by processing XObject resources in the page content stream, converting them from reusable form XObjects into inline static content. |
Markup Flattening
In addition to annotation types, Flattener handles markup and drawing annotations that reviewers add during document review. Each markup type has its own checkbox:
| Markup Type | Description |
|---|---|
| FreeText | Text box annotations placed directly on the page. |
| Lines | Line annotations with optional arrowheads. |
| Squares | Rectangle/square shape annotations. |
| Circles | Ellipse/circle shape annotations. |
| Highlights | Text highlight markup (yellow highlight by default). |
| Strikeouts | Strikethrough text markup. |
| Underlines | Underline text markup. |
| Ink / Pencil | Freehand drawing annotations made with the pencil/ink tool. |
| Polygonal Lines | Multi-segment line annotations (polylines). Available in Acrobat 6 and later. |
| Polygons | Closed polygon shape annotations. Available in Acrobat 6 and later. |
| Text Edits | Text editing markup (insertions, deletions, replacements). Available in Acrobat 6 and later. |
When markup annotations are flattened, their visual appearance (lines, shapes, highlights) is rendered into the page content stream as static vector graphics. The annotation object itself is then removed, so the markup can no longer be selected, edited, or deleted by users viewing the document.
Layer Options
Flattener can optionally place flattened annotation content onto named PDF layers (Optional Content Groups, or OCGs) rather than merging it directly into the main page content. This provides a way to organize flattened content while still rendering it as static graphics.
Add Flattened Content to Layer
When the Add Flattened Content to Layer option is enabled, flattened annotations are placed onto dedicated layers. You can then control layer visibility in Acrobat’s Layers panel. If a layer with the target name already exists in the document, the flattened content is added to it; otherwise, a new layer is created automatically.
Layer Categories
Flattened content is organized into up to five layer categories, each with its own enable/disable checkbox:
- Comments & Markup — FreeText, lines, shapes, highlights, strikeouts, underlines, ink, polygons, and text edits.
- Notes — Sticky note annotations.
- Stamps — Rubber stamp annotations.
- Media — Movie, sound, and file attachment annotations.
- Other — All other annotation types not covered by the categories above.
Each category can be independently assigned to a layer. If a category’s layer checkbox is unchecked, that type of flattened content is placed directly into the page content stream without layer assignment.
Saved Configurations
Flattener supports named configuration presets so you can save and recall complex flattening setups. Each preset stores all checkbox states, layer options, and page selection settings.
Saving a Configuration
Type a name in the Configuration drop-down and click Save. All current settings are stored in the plug-in’s INI file. If a configuration with the same name already exists, you will be prompted to confirm the overwrite.
Loading a Configuration
Select a saved configuration from the drop-down list. All checkboxes and options are restored to the dialog. This is particularly useful when you have different flattening profiles for different document types — for example, a “Remove All Markup” preset that checks all markup types, or a “Forms Only” preset that only flattens form fields.
Removing a Configuration
Select a configuration and click Remove to permanently delete it from the INI file.
COM Automation
Flattener exposes a COM automation interface (IFlattenerAuto) that allows external applications to invoke flattening programmatically. This is available in the Automation build variant, installed as MAPSFLATTENER.dll.
The COM interface mirrors the dialog options with properties for each annotation and markup type, plus a Flatten() method that executes the operation on a specified PDF document handle. This allows VBScript, PowerShell, C#, and other COM-aware languages to automate flattening as part of larger document processing workflows.
Key COM interface members include:
- Boolean properties for each annotation type (notes, form fields, stamps, movies, sounds, file attachments, links, 3D, redactions).
- Boolean properties for each markup type (free text, lines, squares, circles, highlights, strikeouts, underlines, ink, pencil, polygonal lines, polygons, text edits).
- Layer control properties for enabling layer placement and selecting which categories go to layers.
- The
Flatten()method to execute the operation.
MAPS_Flattener) when driving Flattener from other Acrobat plug-ins, and use the COM interface when driving it from external applications.
System Requirements
- Adobe Acrobat: Acrobat Pro or Standard DC (2017 or later). Not compatible with Acrobat Reader.
- Operating System: Windows 10 or Windows 11 (32-bit and 64-bit Acrobat installations both supported).
- Acrobat Version: Some markup types (polygonal lines, polygons, text edits) require Acrobat 6 or later. The layer placement feature requires PDF 1.5+ support.
- COM Automation: The automation variant requires registration via
regsvr32and is typically installed by the Mapsoft Workflow Server installer.
Support
If you encounter a problem or have a question not covered here, please get in touch:
© 2026 Mapsoft Computer Services Limited · Privacy