Apply

Apply(Redaction)

Применяет редактирование к документу.

public RedactorChangeLog Apply(Redaction redaction)
Параметр Тип Описание
redaction Redaction ЭкземплярRedaction применять

Возвращаемое значение

Успех или неудача и сообщение об ошибке в этом случае

Примеры

В следующем примере показано применение к документу единственного исправления.

using (Redactor redactor = new Redactor(@"D:\\test.docx"))
{
   RedactorChangeLog result = redactor.Apply(new RegexRedaction(LookupStrings.SSNRegexPattern, new ReplacementOptions("[ssn]")));
   if (result.Status != RedactionStatus.Failed)
   {
      redactor.Save();
   };
}

Смотрите также


Apply(Redaction[])

Применяет набор исправлений к документу.

public RedactorChangeLog Apply(Redaction[] redactions)
Параметр Тип Описание
redactions Redaction[] Массив редакций для применения

Возвращаемое значение

Успех или неудача и сообщение об ошибке в этом случае

Примеры

В следующем примере показано применение списка исправлений к документу.

using (Redactor redactor = new Redactor(@"D:\\test.docx"))
{
   var redactionList = new Redaction[] 
   {
      new ExactPhraseRedaction(LookupStrings.ClientName, new ReplacementOptions("[client]")),
      new ExactPhraseRedaction(LookupStrings.ClientAddress, new ReplacementOptions(System.Drawing.Color.Red)),
      new RegexRedaction(LookupStrings.SSNRegexPattern, new ReplacementOptions("[ssn]")),
      new RegexRedaction(LookupStrings.BankCardRegexPattern, new ReplacementOptions(System.Drawing.Color.Blue)),
      // ... другие правки
      new DeleteAnnotationRedaction("(?im:(use|show|describe))"),
      new EraseMetadataRedaction(MetadataFilter.Author),
      new MetadataSearchRedaction(LookupStrings.CompanyName, "--company--") 
   }; 
   RedactorChangeLog result = redactor.Apply(redactionList);
   // false, если хотя бы одно редактирование не удалось
   if (result.Status != RedactionStatus.Failed)
   {
      redactor.Save();
   };
}

Смотрите также


Apply(RedactionPolicy)

Применяет политику редактирования к документу.

public RedactorChangeLog Apply(RedactionPolicy policy)
Параметр Тип Описание
policy RedactionPolicy Политика редактирования

Возвращаемое значение

Успех или неудача и сообщение об ошибке в этом случае

Примеры

В следующем примере показано, как применить политику редактирования ко всем файлам в заданной входящей папке и сохранить в одной из исходящих папок — для успешно обновленных файлов и для неудачно обновленных.

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 });
   	     }        
     }
}   

Смотрите также