Foxit PDF SDK
foxit::addon::Redaction Class Reference
Inheritance diagram for foxit::addon::Redaction:
foxit::Base

Public Member Functions

 Redaction (const pdf::PDFDoc &document)
 Constructor, from a PDF document object. More...
 
 Redaction (const Redaction &other)
 Constructor, with another redaction object. More...
 
 ~Redaction ()
 Destructor.
 
bool Apply ()
 Apply redaction in marked areas: remove the text or graphics under marked areas permanently. More...
 
bool IsEmpty () const
 Check whether current object is empty or not. More...
 
pdf::annots::Redact MarkRedactAnnot (const pdf::PDFPage &page, const RectFArray &rects)
 Mark page contents (text object, image object, and path object) which are to be redacted. More...
 
bool operator != (const Redaction &other) const
 Not equal operator. More...
 
Redactionoperator= (const Redaction &other)
 Assign operator. More...
 
bool operator== (const Redaction &other) const
 Equal operator. More...
 
- Public Member Functions inherited from foxit::Base
FS_HANDLE Handle () const
 Get the handle of current object. More...
 

Detailed Description

Redacting a PDF file allows user to hide sensitive information while keeping the document's formatting. This class can be used to mark page contents with redact annotations and apply redaction to permanently remove (redact) visible text and images from PDF documents to protect confidential information such as social security numbers.

See also
pdf::annots::Redact

Constructor & Destructor Documentation

◆ Redaction() [1/2]

foxit::addon::Redaction::Redaction ( const pdf::PDFDoc document)
explicit

Constructor, from a PDF document object.

Parameters
[in]documentA valid PDF document object.
Note
If module "Redaction" is not defined in the license information which is used in function common::Library::Initialize, that means user has no right in using redaction related functions and this constructor will throw exception foxit::e_ErrNoRedactionModuleRight.

◆ Redaction() [2/2]

foxit::addon::Redaction::Redaction ( const Redaction other)

Constructor, with another redaction object.

Parameters
[in]otherAnother redaction object.

Member Function Documentation

◆ Apply()

bool foxit::addon::Redaction::Apply ( )

Apply redaction in marked areas: remove the text or graphics under marked areas permanently.

Once this functions is called, all the marked page content(text object, image object, and path object) in the document will be removed permanently. All the redact annotations which specify marked areas will be removed (with their pop-up annotations) and these marked areas will be filled by the color specified by pdf::annots::Redact::SetApplyFillColor.

Returns
true means success, while false means failure.

◆ IsEmpty()

bool foxit::addon::Redaction::IsEmpty ( ) const

Check whether current object is empty or not.

When the current object is empty, that means current object is useless.

Returns
true means current object is empty, while false means not.

◆ MarkRedactAnnot()

pdf::annots::Redact foxit::addon::Redaction::MarkRedactAnnot ( const pdf::PDFPage page,
const RectFArray rects 
)

Mark page contents (text object, image object, and path object) which are to be redacted.

This function is to add special marks (called redact annotation) to the specified rectangles areas, in order to redact page contents in these areas. Usually, the marked area has two appearance:

Once function Redaction::Apply is called, all the page contents under these marked area will be removed permanently and these marked areas will keep their rollover appearance all the time.

Parameters
[in]pageA PDF page whose content will be marked.
[in]rectsSpecify areas in the page to be marked. It should not be an empty array. All the input rectangles will be treated as one redact annotation.
Returns
A redact annotation object (along with a pop-up annotation by default), with default appearance:
apply fill color = black, border color = red, opacity = 1.0.

◆ operator !=()

bool foxit::addon::Redaction::operator != ( const Redaction other) const

Not equal operator.

Parameters
[in]otherAnother redaction object. This function will check if current object is not equal to this one.
Returns
true means not equal, while false means equal.

◆ operator=()

Redaction& foxit::addon::Redaction::operator= ( const Redaction other)

Assign operator.

Parameters
[in]otherAnother redaction object, whose value would be assigned to current object.
Returns
Reference to current object itself.

◆ operator==()

bool foxit::addon::Redaction::operator== ( const Redaction other) const

Equal operator.

Parameters
[in]otherAnother redaction object. This function will check if current object is equal to this one.
Returns
true means equal, while false means not equal.