Migration Notes

Why To Migrate?

Here are the key reasons to use the new updated API provided by GroupDocs.Editor for .NET since version 19.9:

  • Editor class introduced as a single entry point to manage the document editing process to any supported file format (instead of EditorHander class from previous versions).
  • Product architecture was redesigned from scratch in order to decreased memory usage (from 10% to 400% approx. depending on document type).
  • Document editing and saving options simplified so it’s easy to instantiate proper options class and control over document editing and saving processes.

How To Migrate?

Here is a brief comparison of how to edit document in HTML form using old and new API.

Old coding style

string documentPath = @"C:\sample.docx"; 
// Obtain document stream
Stream sourceStream = File.Open(documentPath, FileMode.Open, FileAccess.Read);

using (InputHtmlDocument htmlDoc = EditorHandler.ToHtml(sourceStream))
{
    // Obtain HTML document content
    string htmlContent = htmlDoc.GetContent();
  
    // Edit html in WYSIWYG-editor...
    // ...
  
    // Save edited html to original document format
    using (OutputHtmlDocument editedHtmlDoc = OutputHtmlDocument.FromMarkup(htmlContent, Path.Combine(Common.sourcePath, Common.resultResourcesFolder)))
    {
        using (System.IO.FileStream outputStream = System.IO.File.Create(@"C:\output\edited.docx"))
        {
            WordProcessingSaveOptions  saveOptions = new WordProcessingSaveOptions();
            EditorHandler.ToDocument(editedHtmlDoc, outputStream, saveOptions);
        }
    }
}

// close stream object to release file for other methods.
sourceStream.Close();

New coding style

string documentPath = @"C:\sample.docx"; 
using (Editor editor = new Editor(documentPath))
{
    // Obtain editable document from original DOCX document
    EditableDocument editableDocument = editor.Edit();
    string htmlContent = editableDocument.GetEmbeddedHtml();
    // Pass htmlContent to WYSIWYG editor and edit there...
    // ...
  
    // Save edited EditableDocument object to some WordProcessing format - DOC for example
    WordProcessingSaveOptions saveOptions = new WordProcessingSaveOptions(Formats.WordProcessingFormats.Docx);
    editor.Save(editableDocument, @"C:\output\edited.docx", saveOptions);
}

For more code examples and specific use cases please refer to our Developer Guide documentation or GitHub samples and showcases.

Close
Loading

Analyzing your prompt, please hold on...

An error occurred while retrieving the results. Please refresh the page and try again.