RedactionPolicy
Leave feedback
On this page
Represents a sanitization policy, containing a set of specific redactions to apply.
public class RedactionPolicy
| Name | Description |
|---|---|
| RedactionPolicy() | Creates a new instance of Redaction policy. |
| RedactionPolicy(Redaction[]) | Creates a new instance of Redaction policy with a specific list of redactions. |
| Name | Description |
|---|---|
| Redactions { get; } | Gets an array of fully configured Redaction-derived classes. |
| Name | Description |
|---|---|
| static Load(Stream) | Loads an instance of RedactionPolicy from a stream. |
| static Load(string) | Loads an instance of RedactionPolicy from a file path. |
| Save(Stream) | Saves the redaction policy to a stream. |
| Save(string) | Saves the redaction policy to a file. |
Learn more
- More details about policies: Use of redaction policies
- More details about applying redactions: Redaction basics
The following example demonstrates how to apply a redaction policy to all files within a given inbound folder, and save to one of outbound folders - for successfully updated files and for failed ones.
RedactionPolicy policy = RedactionPolicy.Load("RedactionPolicy.xml");
foreach (var fileEntry in Directory.GetFileNames("C:\\Inbound"))
{
using (Redactor redactor = new Redactor(Path.Combine("C:\\Inbound\\", fileEntry)))
{
RedactorChangeLog result = redactor.Apply(policy);
String resultFolder = result.Status != RedactionStatus.Failed ? "C:\\Outbound\\Done\\" : "C:\\Outbound\\Failed\\";
using (Stream fileStream = File.Open(Path.Combine(resultFolder, fileEntry), FileMode.Open, FileAccess.ReadWrite))
{
redactor.Save(fileStream, new RasterizationOptions() { Enabled = false });
}
}
}
The following example contains a sample XML policy file with sample configurations for all types of redactions.
<?xml version="1.0" encoding="utf-8"?>
<redactionPolicy xmlns = "http://www.groupdocs.com/redaction" >
<regexRedaction regularExpression="(dolor)" actionType="ReplaceString" replacement="foobar" />
<exactPhraseRedaction searchPhrase = "dolor" caseSensitive="true" actionType="DrawBox" color="Red" />
<cellColumnRedaction regularExpression = "(foo)bar1" replacement="[red1]" columnIndex="1" worksheetIndex="2" />
<cellColumnRedaction regularExpression = "(foo)bar2" replacement="[red2]" wokrsheetName="Sample" />
<eraseMetadataRedaction filter = "All" />
<metadataSearchRedaction filter="Title, Author" replacement="foobar" valueExpression="(metasearch)" keyExpression="" />
<annotationRedaction regularExpression = "(anno1)" replacement="foobar" />
<deleteAnnotationRedaction regularExpression = "(anno2)" />
<imageAreaRedaction pointX="15" pointY="17" width="200" height="10" color="#AA50FC" />
<imageAreaRedaction pointX = "110" pointY="120" width="60" height="20" color="Magenta" />
</redactionPolicy>
- namespace GroupDocs.Redaction
- assembly GroupDocs.Redaction
Was this page helpful?
Any additional feedback you'd like to share with us?
Please tell us how we can improve this page.
Thank you for your feedback!
We value your opinion. Your feedback will help us improve our documentation.