ConvertToPdfA(PdfAConformance) Method

Definition

Namespace Broadside
Assembly Broadside.dll

Converts the document to a PDF/A level (issue #229): changes what the level forbids that can be fixed, embeds the fonts it does not embed, and reports what it cannot fix. Save with CreateSaveOptions() to write the result; the save adds the output intent and the XMP identification, and identifies the file only when it conforms.

public PdfAConversion ConvertToPdfA(PdfAConformance conformance)

Parameters

conformance
PdfAConformance

The level: any but None.

Returns

PdfAConversion
What was changed, what was not and why, and the rules the document still breaks.

Remarks

ISO 19005-2, -3 and -4, cited by veraPDF validation-profile rule identifiers. Fixed: encryption (removed by the save, 6.1.3-2), a catalog version above the level's base (6.1.2-1), LZWDecode streams (6.1.7.2-1), output intents' DestOutputProfileRef (6.2.3-3), transfer functions and halftones (6.2.5), image alternates, OPI and interpolation (6.2.8), form XObjects' OPI, PostScript and reference entries (6.2.9-1, 6.2.9-2), undefined blend modes (6.2.10-1), non-embedded Type 1 and TrueType fonts (6.2.11.4.1-1), forbidden annotations, flags and appearance entries (6.3), form and annotation actions (6.4.1), forbidden actions and the JavaScript name tree (6.5), alternate presentations and PresSteps (6.10), Requirements (6.11-1) and, for PDF/A-3 and PDF/A-4f, embedded files made associated files (6.8-1, 6.8-3, 6.8-4).

A non-embedded font is embedded as a subset of the program the document's font resolvers give its text (Substitute; configure the Standard 14 fonts package or a resolver), as a Type 0 font over the same one-byte codes, with a ToUnicode CMap that keeps the text it extracts to. A font is left unembedded, and reported, when no program is found, when the program lacks a glyph the content shows (6.2.11.8-1) or when its widths differ from the font's (6.2.11.5-1). Not converted: composite fonts without a program, device colour the output intent does not cover (6.2.4.3), annotations without appearance streams (6.3.3-1), PostScript XObjects (6.2.9-3), inline images (6.1.10-1), external streams (6.1.7.1-3) and embedded files PDF/A-2 and PDF/A-4 cannot verify (6.8-5, ISO 19005-4 6.9-3).