SubDocument.GetFlatOpcMacroEnabledTemplateBytes(DocumentRange, FlatOpcMacroEnabledTemplateDocumentExporterOptions) Method
Exports the range content in FlatOpcMacroEnabledTemplate (Microsoft Word XML Macro-Enabled Template, .xml) format and returns a byte array with this content.
Namespace: DevExpress.XtraRichEdit.API.Native
Assembly: DevExpress.RichEdit.v24.1.Core.dll
NuGet Packages: DevExpress.RichEdit.Core, DevExpress.Win.Navigation
Declaration
byte[] GetFlatOpcMacroEnabledTemplateBytes(
DocumentRange range,
FlatOpcMacroEnabledTemplateDocumentExporterOptions options
)
Parameters
Name | Type | Description |
---|---|---|
range | DocumentRange | The range to convert to FlatOpcMacroEnabledTemplate format. |
options | FlatOpcMacroEnabledTemplateDocumentExporterOptions | An object that contains export settings. |
Returns
Type | Description |
---|---|
Byte[] | The range content in FlatOpcMacroEnabledTemplate format. |
Remarks
If you work with a selection range, make sure that the GetFlatOpcMacroEnabledTemplateBytes method is enclosed with the DocumentRange.BeginUpdateDocument - DocumentRange.EndUpdateDocument method pair. Otherwise, an incorrect document model might be selected, and the “Error: specified document position or range belongs to other document or subdocument” exception is thrown.
To retrieve section settings, make sure that the range contains the last section’s paragraph. Otherwise, the section settings are reset to default.
The code sample below retrieves the range content in FlatOpcMacroEnabledTemplate format:
using (RichEditDocumentServer wordProcessor = new RichEditDocumentServer())
{
wordProcessor.LoadDocument("FirstLook.docx");
Document document = wordProcessor.Document;
FlatOpcMacroEnabledTemplateDocumentExporterOptions exportOptions = wordProcessor.Options.Export.FlatOpcMacroEnabledTemplate;
exportOptions.ExportedDocumentProperties = DocumentPropertyNames.None;
byte[] bytes = document.GetFlatOpcMacroEnabledTemplateBytes(document.Range, exportOptions);
File.WriteAllBytes(@"D:\testdoc.xml", bytes);
}