GdPicture.NET is a Nutrient product. Learn more

.NET PDF/A conversion library

Convert documents to ISO-compliant PDF/A format in C# for long-term archiving. Support for all conformance levels (PDF/A-1 to PDF/A-4). Output passes veraPDF validator and Adobe Acrobat Preflight. Includes built-in PDF/A validation and compression to minimize storage.



What is PDF/A?

PDF/A (ISO 19005) is the standard for long-term document preservation. It ensures documents display and reproduce identically in the future, regardless of software. PDF/A files must embed all required elements — fonts, color profiles, and digital signatures — while excluding external references and dependencies.

PDF/A Feature

Challenges of PDF/A conversion

Converting to PDF/A requires more than format understanding — multiple strategies address issues the standard wasn’t originally designed to handle.

Font conformance

Embed missing fonts, fix incorrect font definitions, and resolve inconsistent glyph metrics.

Prohibited content

Remove JavaScript, external references, embedded files, and forbidden annotation types.

Colorspace conformance

Convert device-dependent colorspaces and fix incorrect colorspace definitions.

Metadata conformance

Ensure metadata conforms to XMP specification requirements.

PDF/A converter features

Native PDF/A conversion supporting all substandards (PDF/A-1 to PDF/A-4). Convert 100+ formats using direct modification, vectorization, or rasterization — whichever produces the best result.


  1. Passes the veraPDF validator
  2. Passes Adobe Acrobat Preflight
PDF/A converter features

PDF/A validation

PDF document complexity makes validation essential. Different validators produce varying results, so we built a PDF/A validator to ensure ISO-standard compliance.

Validator capabilities
All PDF/A versions: PDF/A-1 (ISO 19005-1:2005), PDF/A-2 (ISO 19005-2:2011), PDF/A-3 (ISO 19005-3:2012), PDF/A-4 (ISO 19005-4:2020)
Automatic conformance level detection
Basic result or detailed XML report
Validation elements
PDF structure
Lexical, syntactic, and semantic levels
Metadata
Fonts
Color space and other properties

Validate PDF/A

Try our PDF/A validation demo

Upload a document to check PDF/A conformance and view detailed validation results.

PDF/A industry use cases

PDF/A adoption has grown since ISO 19005 launched in 2005. Digital transformation and regulatory requirements now make PDF/A archiving mandatory in many jurisdictions.


PDF/A industry use cases

Convert to PDF/A

Try our PDF/A conversion engine with your document

get started

How to use

Download and install the GdPicture.NET package to access compiled demo applications and multi-language sample projects with full source code.

Explore demo apps
Find compiled demo applications in \Samples\Bin\.
Explore multi-language source code
Find C# and VB.NET demo apps and source code in \Samples\WinForm\.
Visit reference guide
Explore other code snippets within the online reference guide.

PDF to PDF/A code example

Convert a PDF document to PDF/A-2a conformance level in C#.

using GdPicturePDF gdpicturePDF = new GdPicturePDF();
// Load the source document.
gdpicturePDF.LoadFromFile(@"C:\temp\source.pdf");
// Convert to a document with PDF/A-2a conformance level.
gdpicturePDF.ConvertToPDFA(@"C:\temp\output.pdf", PdfConversionConformance.PDF_A_2a, true, true);
// Release unnecessary resources.
gdpicturePDF.CloseDocument();

Trusted by 3,000+ customers and Fortune 500 companies

15Y+
More than 15 years of experience developing our SDK
10K+
Trusted by more than 10,000 developers


Frequently asked questions

What is PDF/A, and why is it important for document archiving?

PDF/A is an ISO-standardized version of the Portable Document Format (PDF) specifically designed for the long-term archiving of electronic documents. It ensures that documents can be reproduced exactly the same way in the future by embedding all necessary components, such as fonts and color profiles, and prohibiting features unsuitable for long-term archiving, like external content references and JavaScript. This standardization is crucial for maintaining document fidelity over time.

Which PDF/A standards are supported by the GdPicture.NET PDF/A conversion library?

The library supports all PDF/A substandards, including:

  • PDF/A-1 — Based on PDF 1.4, and suitable for basic archiving needs.
  • PDF/A-2 — Based on PDF 1.7, it introduces enhancements like support for JPEG2000 and transparency.
  • PDF/A-3 — Allows embedding of arbitrary file formats within the PDF/A file.
  • PDF/A-4 — Aligns with PDF 2.0, offering improved support for digital signatures and annotations.

This comprehensive support ensures compatibility with various archiving requirements.

What methods does the library use to convert documents to PDF/A?

The GdPicture.NET PDF/A conversion library employs several methods to achieve compliance:

  • Direct modification — Adjusts the original PDF to meet PDF/A standards by embedding fonts, converting color spaces, and removing non-compliant elements.
  • Vectorization — Renders the document’s content into vector graphics, creating a new PDF/A-compliant document.
  • Rasterization — Converts each page into an image, which is then embedded into a PDF/A-compliant file.

These methods ensure that even complex or non-standard PDFs can be accurately converted to PDF/A.

Can the library convert non-PDF documents to PDF/A?

Yes. The GdPicture.NET PDF/A conversion library can convert more than 100 different file formats — including Microsoft Office documents and images — directly into PDF/A-compliant files. This versatility simplifies the archiving process by allowing diverse document types to be standardized into a uniform format.

How does the library ensure the compliance of converted documents with PDF/A standards?

The library includes a built-in PDF/A validator that analyzes documents for conformance with the specified PDF/A standard. It provides detailed reports on any issues detected, enabling users to ensure their documents meet all necessary requirements for long-term archiving.

60-day free trial

Try GdPicture.NET now!