Summary: Constants | Ctors | Methods | Inherited Methods | [Expand All]
public class

# Context

extends Object

java.lang.Object
↳ | com.pdftron.pdf.ocg.Context

## Class Overview

The OCG::Context object represents an optional-content context in a document, within which document objects such as words or annotations are visible or hidden. The context keeps track of the ON-OFF states of all of the optional-content groups (OCGs) in a document. Content is or is not visible with respect to the OCG states stored in a specific context. Unlike other objects in OCG namespace, the OCG::Context does not correspond to any explicit PDF structure.

Each PDFView has a default context (PDF::GetOCGContext()) that it uses for on-screen drawing and that determines the default state for any drawing. The context has flags that control whether to draw content that is marked as optional, and whether to draw content that is not marked as optional.

When enumerating page content, OCG::Context can be passed as a parameter in ElementReader.Begin() method. When using PDFDraw, PDFRasterizer, or PDFView class to render PDF pages use ( PDFDraw::SetOCGContext() method to select an OC context.

There can be more than one Context object, representing different combinations of OCG states. You can change the states of OCGs within any context. You can build contexts with your own combination of OCG states, and issue drawing or enumeration commands using that context. For example, you can pass an optional-content context to ElementReader.Begin(). You can save the resulting state information as part of the configuration (e.g. using Config::SetInit methods), but the context itself has no corresponding PDF representation, and is not saved.

## Summary

Constants
int | e_AllOC | Draw or enumerate all optional content, regardless of its visibility state.
int | e_NoOC | Draw or enumerate no optional content, regardless of its visibility state.
int | e_VisibleOC | Draw or enumerate optional content that is visible, according to the current state of Optional Content Groups (OCGs) and Optional Content Membership Dictionaries (OCMDs).

Public Constructors
| Context(Context context) create a copy from another Context object
| Context(Config config) Create a context object that represents an optional-content state of the document from a given configuration.

Public Methods
static Context | __Create(long impl, Object ref)
long | __GetHandle()
int | getOCMode() Get the OC mode.
boolean | getState(Group group) Get the state of the Context
void | resetStates(boolean all_on) Set the states of all OCGs in the context to ON or OFF.
void | setNonOCDrawing(boolean draw_non_OC) Set the non-OC status for this context.
void | setOCDrawMode(int oc_draw_mode) Set the drawing and enumeration type for this context.
void | setState(Group group, boolean state) Set the ON-OFF states for the given optional-content group (OCG) in this context.

[Expand] Inherited Methods
From class java.lang.Object
boolean | equals(Object arg0)
final Class<?> | getClass()
int | hashCode()
final void | notify()
final void | notifyAll()
String | toString()
final void | wait(long arg0, int arg1)
final void | wait(long arg0)
final void | wait()

## Constants

#### public static final int e_AllOC

Draw or enumerate all optional content, regardless of its visibility state. If the context's 'SetNonOCDrawing' is enabled, all contents of document are shown.

Constant Value: 1 (0x00000001)

#### public static final int e_NoOC

Draw or enumerate no optional content, regardless of its visibility state. If the context's 'SetNonOCDrawing' is not enabled, nothing is drawn, resulting in a blank page.

Constant Value: 2 (0x00000002)

#### public static final int e_VisibleOC

Draw or enumerate optional content that is visible, according to the current state of Optional Content Groups (OCGs) and Optional Content Membership Dictionaries (OCMDs). This is the default mode.

Constant Value: 0 (0x00000000)

## Public Constructors

#### public Context (Context context)

create a copy from another Context object

##### Parameters

context | Another context from which to take initial OCG states.

##### Throws

PDFNetException |

#### public Context (Config config)

Create a context object that represents an optional-content state of the document from a given configuration.

##### Parameters

config | A configuration from which to take initial OCG states.

##### Throws

PDFNetException |

## Public Methods

#### public static Context __Create (long impl, Object ref)

#### public long __GetHandle ()

#### public int getOCMode ()

Get the OC mode.

##### Returns

- the drawing and enumeration type for this context. For more information, please see SetOCMode() and OCG::Context::OCDrawMode.

##### Throws

PDFNetException |

#### public boolean getState (Group group)

Get the state of the Context

##### Parameters

group | The optional-content group (OCG) that is queried.

##### Returns

- the ON-OFF states (true or false) for the given optional-content group (OCG) in this OC context.

##### Throws

PDFNetException |

#### public void resetStates (boolean all_on)

Set the states of all OCGs in the context to ON or OFF.

##### Parameters

all_on | A flag used to specify whether the OCG states should be set to ON (if true), or OFF (if false).

##### Throws

PDFNetException |

#### public void setNonOCDrawing (boolean draw_non_OC)

Set the non-OC status for this context. Content that is not marked as optional content is drawn (or element.IsOCVisible()) when 'draw_non_OC' is true, and not drawn/visible otherwise.

##### Parameters

draw_non_OC | A flag specifying whether the content that is not marked as optional should be treated as visible.

##### Throws

PDFNetException |

#### public void setOCDrawMode (int oc_draw_mode)

Set the drawing and enumeration type for this context. This type, together with the visibility determined by the OCG and OCMD states, controls whether content that is marked as optional content is drawn or enumerated.

##### Parameters

oc_draw_mode | A flag specifying the visibility of optional content.

##### Throws

PDFNetException |

#### public void setState (Group group, boolean state)

Set the ON-OFF states for the given optional-content group (OCG) in this context.

##### Parameters

group | The optional-content group (OCG) that is queried.
state | true for 'ON' and false for 'OFF'.

##### Throws

PDFNetException |