#include <Context.h>
Public Types | |
enum | OCDrawMode { e_VisibleOC, e_AllOC, e_NoOC } |
Public Member Functions | |
Context (const Context &context) | |
Context & | operator= (const Context &g) |
Context (const class Config &config) | |
~Context () | |
bool | IsValid () const |
bool | GetState (const class Group &group) const |
void | SetState (const class Group &group, bool state) |
void | ResetStates (bool all_on) |
void | SetNonOCDrawing (bool draw_non_OC) |
bool | GetNonOCDrawing () const |
void | SetOCDrawMode (OCDrawMode oc_draw_mode) |
OCDrawMode | GetOCMode () const |
void | Destroy () |
ptrdiff_t | GetHandleInternal () |
Context (TRN_OCGContext ctx) | |
Static Public Member Functions | |
static Context * | CreateInternal (ptrdiff_t impl) |
Public Attributes | |
TRN_OCGContext | mp_obj |
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.
OCDrawMode controls drawing or enumerating the page with respect to optional content. Together with the value of SetNonOCDrawing this mode controls drawing or enumerating content on a page with optional content:
pdftron::PDF::OCG::Context::Context | ( | const Context & | context | ) |
Copy constructor.
context | Another context from which to take initial OCG states. |
pdftron::PDF::OCG::Context::Context | ( | const class Config & | config | ) |
Create a context object that represents an optional-content state of the document from a given configuration.
config | A configuration from which to take initial OCG states. |
pdftron::PDF::OCG::Context::~Context | ( | ) |
Destructor
pdftron::PDF::OCG::Context::Context | ( | TRN_OCGContext | ctx | ) |
|
static |
void pdftron::PDF::OCG::Context::Destroy | ( | ) |
Frees the native memory of the object.
ptrdiff_t pdftron::PDF::OCG::Context::GetHandleInternal | ( | ) |
bool pdftron::PDF::OCG::Context::GetNonOCDrawing | ( | ) | const |
OCDrawMode pdftron::PDF::OCG::Context::GetOCMode | ( | ) | const |
bool pdftron::PDF::OCG::Context::GetState | ( | const class Group & | group | ) | const |
|
inline |
void pdftron::PDF::OCG::Context::ResetStates | ( | bool | all_on | ) |
Sets the sates of all OCGs in the context to ON or OFF.
all_on | A flag used to specify whether the OCG states should be set to ON (if true), or OFF (if false). |
void pdftron::PDF::OCG::Context::SetNonOCDrawing | ( | bool | draw_non_OC | ) |
Sets 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.
draw_non_OC | A flag specifying whether the content that is not marked as optional should be treated as visible. |
void pdftron::PDF::OCG::Context::SetOCDrawMode | ( | OCDrawMode | oc_draw_mode | ) |
void pdftron::PDF::OCG::Context::SetState | ( | const class Group & | group, |
bool | state | ||
) |