Back to Devexpress

RichEditDocumentServerExtensions.ExportToImage(Document) Method

officefileapi-devexpress-dot-xtrarichedit-dot-richeditdocumentserverextensions-dot-exporttoimage-x28-devexpress-dot-xtrarichedit-dot-api-dot-native-dot-document-x29.md

latest3.4 KB
Original Source

RichEditDocumentServerExtensions.ExportToImage(Document) Method

Exports each document page to a separate image in PNG format.

Namespace : DevExpress.XtraRichEdit

Assembly : DevExpress.Docs.v25.2.dll

NuGet Package : DevExpress.Document.Processor

Declaration

csharp
public static IReadOnlyList<Stream> ExportToImage(
    this Document document
)
vb
<ExtensionAttribute>
Public Shared Function ExportToImage(
    document As Document
) As IReadOnlyList(Of Stream)

Parameters

NameTypeDescription
documentDocument

The document currently loaded in the RichEditDocumentServer instance.

|

Returns

TypeDescription
IReadOnlyList<Stream>

A list of stream objects. Each object contains a document page converted to a PNG image format.

|

Remarks

Example

The following code sample exports all document pages to images:

csharp
using DevExpress.XtraRichEdit.Export.Image;
using DevExpress.XtraRichEdit;
using DevExpress.Drawing;

using RichEditDocumentServer wordProcessor = new RichEditDocumentServer();

var streamList = wordProcessor.Document.ExportToImage();
int i = 1;
foreach (var stream in streamList) {
    var newFileName = Path.GetFileNameWithoutExtension("ExportedPage.jpeg") + i + Path.GetExtension("ExportedPage.jpeg");
    StreamToFile(stream, newFileName);
    i++;
    stream.Dispose();
}
static void StreamToFile(Stream stream, string filePath)
{
    using (var fileStream = File.Create(filePath))
    {
        stream.Seek(0, SeekOrigin.Begin);
        stream.CopyTo(fileStream);
    }
}
vb
Imports DevExpress.XtraRichEdit.Export.Image
Imports DevExpress.XtraRichEdit
Imports DevExpress.Drawing

Imports RichEditDocumentServer wordProcessor = New RichEditDocumentServer()

wordProcessor.LoadDocument("C:\Documents\Alice.docx")
Dim streamList = wordProcessor.Document.ExportToImage()
Dim i As Integer = 1
For Each stream In streamList
  Dim newFileName = Path.GetFileNameWithoutExtension("ExportedPage.jpeg") & i & Path.GetExtension("ExportedPage.jpeg")
  StreamToFile(stream, newFileName)
  i += 1
  stream.Dispose()
Next stream

Shared Sub StreamToFile(ByVal stream As Stream, ByVal filePath As String)
  Using fileStream = File.Create(filePath)
    stream.Seek(0, SeekOrigin.Begin)
    stream.CopyTo(fileStream)
  End Using
End Sub

See Also

RichEditDocumentServerExtensions Class

RichEditDocumentServerExtensions Members

DevExpress.XtraRichEdit Namespace