Back to Devexpress

PdfOptionalContentGroupVisibility Class

officefileapi-devexpress-dot-pdf-3e9abd3f.md

latest4.5 KB
Original Source

PdfOptionalContentGroupVisibility Class

Contains visibility settings of a content group (layer).

Namespace : DevExpress.Pdf

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

NuGet Package : DevExpress.Pdf.Core

Declaration

csharp
public class PdfOptionalContentGroupVisibility :
    INotifyPropertyChanged
vb
Public Class PdfOptionalContentGroupVisibility
    Implements INotifyPropertyChanged

The following members return PdfOptionalContentGroupVisibility objects:

Remarks

The PdfOptionalContentGroupVisibility class contains visibility settings that correspond to a layer (the PdfOptionalContentGroup object). All PdfOptionalContentGroupVisibility objects are stored in a PdfOptionalContentGroupVisibilityCollection object and can be accessed with the PdfDocumentFacade.OptionalContentVisibility.Groups property by index.

Use the PdfOptionalContentGroupVisibility.Visible property to show or hide a layer.

Important

A PDF document stores only default optional content configuration. This means that layer visibility is not preserved when you save the document. Visibility settings are applicable only when you preview the document in a PDF Viewer component, or print the document, or export it to an image.

Refer to the following topic for more information on how to control layer visibility: Manage Visibility of Layers (Optional Content Groups).

Example

How to: Hide Document Layers

The following code snippet hides two layers in the “PdfLayers.pdf” document and displays the third layer:

csharp
using DevExpress.Pdf;
using System;
using System.Linq;
using DevExpress.Drawing;

using (PdfDocumentProcessor processor = new PdfDocumentProcessor()) {
    processor.LoadDocument("PdfLayers.pdf");

    // Set visibility settings for each layer contained in a document.
    processor.DocumentFacade.OptionalContentVisibility.Groups[0].Visible = false;
    processor.DocumentFacade.OptionalContentVisibility.Groups[1].Visible = false;
    processor.DocumentFacade.OptionalContentVisibility.Groups[2].Visible = true;

    // Print the document.
    DXBitmap bitmap = processor.CreateDXBitmap(1, 1000);
    PdfPrinterSettings pdfPrinterSettings = new PdfPrinterSettings();
    processor.Print(pdfPrinterSettings);
}
vb
Imports DevExpress.Pdf
Imports System
Imports System.Linq
Imports DevExpress.Drawing

Using processor As New PdfDocumentProcessor()
    processor.LoadDocument("PdfLayers.pdf")

    ' Set visibility settings for each layer contained in a document.
    processor.DocumentFacade.OptionalContentVisibility.Groups(0).Visible = False
    processor.DocumentFacade.OptionalContentVisibility.Groups(1).Visible = False
    processor.DocumentFacade.OptionalContentVisibility.Groups(2).Visible = True

    ' Print the document.
    Dim bitmap As DXBitmap = processor.CreateDXBitmap(1, 1000)
    Dim pdfPrinterSettings As New PdfPrinterSettings()
    processor.Print(pdfPrinterSettings)
End Using

Implements

INotifyPropertyChanged

Inheritance

Object PdfOptionalContentGroupVisibility

See Also

PdfOptionalContentGroupVisibility Members

DevExpress.Pdf Namespace