DocumentFormatInstance

DocumentFormatInstance class

Repräsentiert ein bestimmtes Format eines Dokuments. Implementieren Sie diese Klasse, um Ihre eigenen Dokumenttypen hinzuzufügen.

public abstract class DocumentFormatInstance

Eigenschaften

Name Beschreibung
Password { get; set; } Ruft ein Passwort für passwortgeschützte Dokumente ab oder legt es fest.

Methoden

Name Beschreibung
virtual Initialize(DocumentFormatConfiguration, RedactorSettings) Führt die Initialisierung der Instanz des Dokumentformathandlers durch.
IsRedactionAccepted(RedactionDescription) Prüft aufIRedactionCallback Implementierung und ruft sie auf, falls angegeben.
virtual Load(Stream) Lädt das Dokument aus einem Stream.
virtual PerformBinaryCheck(Stream) Überprüft, ob der angegebene Stream ein Dokument enthält, das von dieser Formatinstanz unterstützt wird.
abstract Save(Stream) Speichert das Dokument in einem Stream.

Bemerkungen

Erfahren Sie mehr

Beispiele

Das folgende Beispiel zeigt, wie ein leerer Stub für einen benutzerdefinierten Formathandler erstellt wird.

Das folgende Beispiel zeigt, wie die Initialisierungsdaten verwendet werden.

public class DummyDocument : DocumentFormatInstance
{     
    public override void Load(Stream output)
    {
        // Dateiinhalt laden
    }

    public override void Save(Stream output)
    {
        // Änderungen in Datei speichern;
    }
}
public class MyCustomHandler : DocumentFormatInstance
{
    private string MyProperty { get; set; }
    
    // Anderer benutzerdefinierter Code 
    ...

    public override void Initialize(DocumentFormatConfiguration config)
    {
        base.Initialize(config);
        if (config.InitializationData.ContainsKey("MyProperty"))
        {
            MyProperty = config.InitializationData["MyProperty"];
        }
    }
}

// Benutzerdefiniertes Format in GroupDocs.Redaction einfügen
var mySettings = new DocumentFormatConfiguration();
mySettings.ExtensionFilter = ".foo";
mySettings.DocumentType = typeof(MyCustomHandler);
mySettings.InitializationData.Add("MyProperty", "bar");
var configuration = RedactorConfiguration.GetInstance();
configuration.AvailableFormats.Add(mySettings);

Siehe auch