Loading...
Searching...
No Matches
pdftron::PDF::OCG::OCMD Class Reference

`#include <OCMD.h>`

## Public Types
enum | VisibilityPolicyType { e_AllOn , e_AnyOn , e_AnyOff , e_AllOff }

## Public Member Functions
| OCMD (SDF::Obj ocmd)
bool | IsValid () const
SDF::Obj | GetOCGs () const
VisibilityPolicyType | GetVisibilityPolicy () const
void | SetVisibilityPolicy (VisibilityPolicyType vis_policy)
SDF::Obj | GetVisibilityExpression () const
bool | IsCurrentlyVisible (const class Context &context) const
SDF::Obj | GetSDFObj () const
| OCMD (const OCMD &g)
OCMD & | operator= (const OCMD &g)

## Static Public Member Functions
static OCMD | Create (PDFDoc &doc, SDF::Obj ocgs, VisibilityPolicyType vis_policy)

## Detailed Description

The OCMD object represents an Optional Content Membership Dictionary (OCMD) that allows the visibility of optional content to depend on the states in a set of optional-content groups (OCG::Group). The object directly corresponds to the OCMD dictionary (Section 4.10.1 'Optional Content Groups' in PDF Reference).

An OCMD collects a set of OCGs. It sets a visibility policy, so that content in the member groups is visible only when all groups are ON or OFF, or when any of the groups is ON or OFF. This makes it possible to set up complex dependencies among groups. For example, an object can be visible only if some other conditions are met (such as if another layer is visible).

Definition at line 30 of file OCMD.h.

## Member Enumeration Documentation

## ◆ VisibilityPolicyType

enum pdftron::PDF::OCG::OCMD::VisibilityPolicyType

Visibility Policy Type. A Visibility Policy is used to determine whether an PDF::Element is visible in a given OCG::Context, depending on whether all groups in OCGs array are "ON" or "OFF", or when any of the groups is "ON" or "OFF".

Enumerator
e_AllOn | visible only if all of the entries in OCGs are ON.
e_AnyOn | visible if any of the entries in OCGs are ON.
e_AnyOff | visible if any of the entries in OCGs are OFF.
e_AllOff | visible only if all of the entries in OCGs are OFF.

Definition at line 40 of file OCMD.h.

## Constructor & Destructor Documentation

## ◆ OCMD() [1/2]

pdftron::PDF::OCG::OCMD::OCMD | ( | SDF::Obj | ocmd | ) |

Creates a new optional-content group membership dictionary (OCMD) object from an existing SDF/Cos object.

## ◆ OCMD() [2/2]

pdftron::PDF::OCG::OCMD::OCMD | ( | const OCMD & | g | ) |

Copy constructor

## Member Function Documentation

## ◆ Create()

OCMD pdftron::PDF::OCG::OCMD::Create | ( | PDFDoc & | doc,
|  | SDF::Obj | ocgs,
|  | VisibilityPolicyType | vis_policy )
| static

Creates a new optional-content membership dictionary (OCMD) object in the given document for the given groups and visibility policy.

Parameters

  doc | The document in which the new OCMD will be created.
  ocgs | An array of optional-content groups (OCGs) to be members of the dictionary.
  policy | The visibility policy that determines the visibility of content with respect to the ON-OFF state of OCGs listed in the dictionary.

Returns
  The newly created OCG::OCMD object.

## ◆ GetOCGs()

SDF::Obj pdftron::PDF::OCG::OCMD::GetOCGs | ( |  | ) | const

Returns the optional-content groups listed under 'OCGs' entry in the object dictionary.

Returns
  A dictionary (for a single OCG::Group object), an SDF::Obj array (for multiple OCG::Group objects) or NULL (for an empty OCMD).

## ◆ GetSDFObj()

SDF::Obj pdftron::PDF::OCG::OCMD::GetSDFObj | ( |  | ) | const

Returns
  Pointer to the underlying SDF/Cos object.

## ◆ GetVisibilityExpression()

SDF::Obj pdftron::PDF::OCG::OCMD::GetVisibilityExpression | ( |  | ) | const

Returns
  If the PDOCMD has a visibility expression entry, return the SDF::Obj array object representing the expression, otherwise returns NULL.

## ◆ GetVisibilityPolicy()

VisibilityPolicyType pdftron::PDF::OCG::OCMD::GetVisibilityPolicy | ( |  | ) | const

Returns the optional-content membership dictionary's visibility policy, which determines the visibility of content with respect to the ON-OFF state of OCGs listed in the dictionary.

Returns
  The visibility policy.

## ◆ IsCurrentlyVisible()

bool pdftron::PDF::OCG::OCMD::IsCurrentlyVisible | ( | const class Context & | context | ) | const

Returns
  true if content tagged with this OCMD is visible in the given context, false if it is hidden.

Based on the optional-content groups listed in the dictionary, the current ON-OFF state of those groups within the specified context, and the dictionary's visibility policy, test whether the content tagged with this dictionary would be visible.

Parameters

  context | The context in which the visibility of content is tested.

## ◆ IsValid()

bool pdftron::PDF::OCG::OCMD::IsValid | ( |  | ) | const

Returns
  True if this is a valid (non-null) OCMD, false otherwise.

## ◆ operator=()

OCMD & pdftron::PDF::OCG::OCMD::operator= | ( | const OCMD & | g | ) |

## ◆ SetVisibilityPolicy()

void pdftron::PDF::OCG::OCMD::SetVisibilityPolicy | ( | VisibilityPolicyType | vis_policy | ) |

Sets the optional-content membership dictionary's visibility policy, which determines the visibility of content with respect to the ON-OFF state of OCGs listed in the dictionary.

Parameters

  vis_policy | New visibility policy.

The documentation for this class was generated from the following file:

- PDF/OCG/OCMD.h