Erstellen eines Skripts zum automatischen Entfernen und Ersetzen von Informationen aus Ihren Dokumenten
Sie können Skripte verwenden, um Informationen aus erkanntem Text zu entfernen:
1. Ersetzen Sie Informationen in einem Dokument.
Rufen Sie dazu die Methode IDocumentToIndexPage:: ReplaceTextOnPage( what, with, ignoreCase ) im Indexierungsskript auf.
Wenn Sie beispielsweise den Text "SampleText" im gesamten Dokument unabhängig vom Fall durch "ChangedText" ersetzen möchten, fügen Sie das folgende Skript hinzu:
//JScript
for( var p = 0, pc = this.Pages.Count; p < pc; p++){
var page = this.Pages.Item(p);
page.ReplaceTextOnPage( 'SampleText', 'ChangedText', true);
}
this.SkipManualIndexing = true;
Wichtig! Zeilenumbrüche (\n) und Tabulatoren (\t) können nicht als "SampleText"- und "ChangedText"-Argumente verwendet werden.
2. Verstecken dieser Informationen in erkannten Blöcken.
Rufen Sie dafür die Methode RedactRegion für den ausgewählten Block im Indexierungsskript auf.
Hinweis. Diese Methode ist für Strichcode-Blöcke nicht geeignet.
Um alle erkannten Textblöcke in einem Dokument zu bearbeiten, fügen Sie den folgenden Beispielcode in Ihr Skript ein:
//JScript
for( var p = 0, pc = this.Pages.Count; p < pc; p++){
var page = this.Pages.Item(p);
for(var tb = 0, tbc = page.TextBlocks.Count; tb < tbc; tb++){
var textBlock = page.TextBlocks.Item(tb);
page.RedactRegion(textBlock.Region);
}
}
this.SkipManualIndexing = true;
3. Indexfelder bearbeiten.
Rufen Sie dafür die Methode RedactRegion für das ausgewählte Indexfeld im IndexingFinished-Skript aus.
Um alle Indexfelder für den ausgewählten Dokumenttyp zu bearbeiten, fügen Sie den folgenden Beispielcode zu Ihrem Skript hinzu:
//JScript
var pagesCount = this.DocumentPages.Count;
for( var a = 0, ac = this.Attributes.Count; a < ac; a++) {
var attribute = this.Attributes.Item(a);
var pageIndex = attribute.PageIndex;
if( pageIndex >= 0 && pageIndex < pagesCount ){
this.DocumentPages.Item(pageIndex).RedactAttribute(attribute);
}
}
26.03.2024 13:49:48