.NET Framework 4.5.2+
.NET Framework 4.5.2+
.NET Standard 2.0+

PdfCreationOptions.Compatibility Property

Gets or sets the compatibility mode of a document.

Namespace: DevExpress.Pdf

Assembly: DevExpress.Pdf.v21.1.Core.dll


public PdfCompatibility Compatibility { get; set; }

Property Value

Type Description

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


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 programmatically create a document with graphics using the PDF Document API.

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

namespace DocumentCreationAPI
  class Program {

    static void Main(string[] args)

      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;
        using (Font font1 = new Font("Times New Roman", 32, FontStyle.Bold))
            graph.DrawString("PDF Document Processor", font1, black, 180, 150);
        using (Font font2 = new Font("Arial", 20))
            graph.DrawString("Display, Print and Export PDF Documents", font2, black, 168, 230);
        using (Font font3 = new Font("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