Some test text!


Redacting PDFs in UI or Programmatically using JavaScript

Redactions can be applied using the WebViewer UI or programmatically.

Please Note!
Even when programmatically applying redactions, fullAPI or pdftronServer must be set up. Furthermore when using WebViewer Server, applyRedactions will return a promise that resolves to a URL for the redacted document instead of updating the current document.

linkApplying redactions with WebViewer

A user can simply click on a redaction annotation and click on the apply button to apply a single redaction.

Applying Redactions

There is also an 'Apply All' button that applies every redaction annotation in the document.

linkApplying redactions programmatically

Redactions can be applied using the applyRedactions function on AnnotationManager. applyRedactions returns a promise and can be used to apply a single redaction, an array of redactions, or all redactions in a document. When using WebViewer Server, the returned promise will resolve to a response object with a URL to download the redacted document.

const redactionList = annotManager.getAnnotationsList().filter(annot => annot instanceof Annotations.RedactionAnnotation);

// apply a single redaction
  // When using WebViewer Server, 'results' will be a response object with a 'url' property for downloading the redacted document.
  .then(results => {
    return annotManager.applyRedactions(redactionList.filter(redaction => redaction.Author === 'User'));
    // When using WebViewer Server, the previous redaction will not appear in the results. It'll only redact the redactions provided to 'applyRedactions'.
    // However when using 'fullAPI', the document will have all previously applied redactions
  .then(results => annotManager.applyRedactions());

Get the answers you need: Support


Free Trial

Get unlimited trial usage of PDFTron SDK to bring accurate, reliable, and fast document processing capabilities to any application or workflow.

Select a platform to get started with your free trial.

Unlimited usage. No email address required.