Redactor
Contenuti
[
Nascondere
]
Redactor class
Rappresenta una classe principale che controlla il processo di redazione dei documenti, consentendo di aprire, redigere e salvare i documenti.
public sealed class Redactor : IDisposable, IPreviewable
Costruttori
Nome | Descrizione |
---|---|
Redactor(Stream) | Inizializza una nuova istanza diRedactor classe utilizzando stream. |
Redactor(string) | Inizializza una nuova istanza diRedactor classe utilizzando il percorso del file. |
Redactor(Stream, LoadOptions) | Inizializza una nuova istanza diRedactor class per un documento protetto da password utilizzando stream. |
Redactor(string, LoadOptions) | Inizializza una nuova istanza diRedactor class per un documento protetto da password utilizzando il suo percorso. |
Redactor(Stream, LoadOptions, RedactorSettings) | Inizializza una nuova istanza diRedactor class per un documento protetto da password utilizzando stream e impostazioni. |
Redactor(string, LoadOptions, RedactorSettings) | Inizializza una nuova istanza diRedactor class per un documento protetto da password utilizzando il percorso e le impostazioni. |
Metodi
Nome | Descrizione |
---|---|
Apply(Redaction) | Applica una redazione al documento. |
Apply(RedactionPolicy) | Applica un criterio di redazione al documento. |
Apply(Redaction[]) | Applica una serie di redazioni al documento. |
Dispose() | Rilascia risorse. |
GeneratePreview(PreviewOptions) | Genera immagini di anteprima di pagine specifiche in un determinato formato immagine. |
GetDocumentInfo() | Recupera le informazioni generali sul documento: dimensioni, numero di pagine, ecc. |
Save() | Salva il documento in un file con le seguenti opzioni: AddSuffix = true, RasterizeToPDF = true. |
Save(SaveOptions) | Salva il documento in un file. |
Save(Stream, RasterizationOptions) | Salva il documento in un flusso, inclusa la posizione personalizzata. |
Osservazioni
Saperne di più
- Maggiori dettagli sull’applicazione delle redazioni: Nozioni di base sulla redazione
- Argomenti di redazione più avanzati: Utilizzo avanzato
Esempi
L’esempio seguente mostra l’applicazione di una singola redazione al documento.
L’esempio seguente mostra l’applicazione di un elenco di redazioni al documento.
L’esempio seguente mostra come applicare un criterio di revisione a tutti i file all’interno di una determinata cartella in entrata e salvare in una delle cartelle in uscita, per i file aggiornati correttamente e per quelli non riusciti.
L’esempio seguente mostra come aprire un documento protetto da password utilizzando LoadOptions.
L’esempio seguente mostra come salvare un documento utilizzando SaveOptions.
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();
};
}
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)),
// ... altre redazioni
new DeleteAnnotationRedaction("(?im:(use|show|describe))"),
new EraseMetadataRedaction(MetadataFilter.Author),
new MetadataSearchRedaction(LookupStrings.CompanyName, "--company--")
};
RedactorChangeLog result = redactor.Apply(redactionList);
// false, se almeno una redazione ha avuto esito negativo
if (result.Status != RedactionStatus.Failed)
{
redactor.Save();
};
}
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 });
}
}
}
LoadOptions loadOptions = new LoadOptions("mypassword");
using (Redactor redactor = new Redactor(@"C:\sample.pdf", loadOptions))
{
// Qui possiamo usare l'istanza del documento per eseguire redazioni
}
using (Redactor redactor = new Redactor(@"C:\sample.pdf"))
{
// La redazione del documento va qui
//...
// Salva il documento con le opzioni predefinite (converti le pagine in immagini, salva come PDF)
redactor.Save();
// Salva il documento nel formato originale sovrascrivendo il file originale
redactor.Save(new SaveOptions() { AddSuffix = false, RasterizeToPDF = false });
// Salva il documento nel file "*_Redacted.*" nel formato originale
redactor.Save(new SaveOptions() { AddSuffix = true, RasterizeToPDF = false });
// Salva il documento in "*_AnyText.*" (ad es. timestamp invece di "AnyText") nel suo nome file senza rasterizzazione
redactor.Save(new SaveOptions(false, "AnyText"));
}
Guarda anche
- interface IPreviewable
- spazio dei nomi GroupDocs.Redaction
- assemblea GroupDocs.Redaction