Skip to main content
A newer version of this page is available. .
.NET Framework 4.5.2+

PdfCreationOptions.Compatibility Property

Gets or sets the compatibility mode of a document.

Namespace: DevExpress.Pdf

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

NuGet Package: DevExpress.Pdf.Core

Declaration

public PdfCompatibility Compatibility { get; set; }

Property Value

Type Description
PdfCompatibility

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

Remarks

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).

Note

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.

Example

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.
        processor.CreateEmptyDocument("..\\..\\Result.pdf");

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

         // 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