Skip to main content
.NET Framework 4.5.2+

PdfCreationOptions.Compatibility Property

Gets or sets the compatibility mode of a document.

Namespace: DevExpress.Pdf

Assembly: DevExpress.Pdf.v22.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 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.
    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