Skip to main content

PdfCreationOptions.Compatibility Property

Gets or sets the compatibility mode of a document.

Namespace: DevExpress.Pdf

Assembly: DevExpress.Pdf.v23.2.Core.dll

NuGet Package: DevExpress.Pdf.Core


public PdfCompatibility Compatibility { get; set; }

Property Value

Type Description

A PdfCompatibility enumeration value that specifies the compatibility mode of a document.

Available values:

Name Description

The document supports the ISO 32000-1:2008 standard.


The document supports the ISO 19005-1:2005 standard.


The document supports the ISO 19005-2:2011 standard.


The document supports the ISO 19005-3:2012 standard.


The Compatibility property can return one of the following enumeration values: PdfA1b, PdfA2b, PdfA3b and Pdf.

PDF/A imposes the following restrictions:

  • Non-embedded fonts are not supported;
  • PDF/A-1b, and PDF/A-2b documents can’t contain file attachments;
  • Encryption is forbidden;
  • Transparency is forbidden in a PDF/A-1 document (all transparency information is ignored and exceptions are not raised).


Since PDF/A requires widget annotations must have only one appearance, PdfAcroFormCheckBoxField.ShouldGeneratePressedAppearance, PdfAcroFormRadioGroupField.ShouldGeneratePressedAppearance, PdfGraphicsAcroFormCheckBoxField.ShouldGeneratePressedAppearance, and PdfGraphicsAcroFormRadioGroupField.ShouldGeneratePressedAppearance properties do not work when a document is created with the Compatibility property set to PdfA1b, PdfA2b or PdfA3b.


This example shows how to use PDF Graphics API to create a document with graphics content.

View Example

using DevExpress.Pdf;
using System;
using System.Drawing;

using (PdfDocumentProcessor processor = new PdfDocumentProcessor()) {

    // Create an empty document.

    // Create and draw PDF graphics.
    using (PdfGraphics graph = processor.CreateGraphics())

        // Render a page with graphics.
        processor.RenderNewPage(PdfPaperSize.Letter, graph);

static void DrawGraphics(PdfGraphics graph) {
    // Draw text lines on the page.
    SolidBrush black = (SolidBrush)Brushes.Black;

    DXFont font1 = new DXFont("Times New Roman", 32, DXFontStyle.Bold);
    graph.DrawString("PDF Document Processor", font1, black, 180, 150);

    DXFont font2 = new DXFont("Arial", 20);
    graph.DrawString("Display, Print and Export PDF Documents", font2, black, 168, 230);

    DXFont font3 = new DXFont("Arial", 10);
    graph.DrawString("The PDF Document Processor is a non-visual component " +
                        "that provides the application programming interface of the PDF Viewer.", font3, black, 16, 300);

See Also