How to export Diagram into image and Word document?
(Views :1847)

Essential diagram allows to export the diagram to word document and to image.

  • Exporting as Image can be achieved by using Diagram.ExportDiagramAsImage() and saving as Image.
  • Exporting into Word document can be achieved by saving the diagram in standard image formats such as bitmaps, enhanced metafiles , SVG format files and these images can be exported to word document using Essential DocIO. For this it is neccessary to have Essential DocIO to be installed.
  • Exporting as Image

    C#
    ImageFormat imgformat = ImageFormat.Bmp;
    Image img = this.diagram1.View.ExportDiagramAsImage(true);
    img.Save("MyDiagram.bmp", imgformat);
    VB
    Dim imgformat As ImageFormat = ImageFormat.Bmp
    Dim img As Image = Me.diagram1.View.ExportDiagramAsImage(True)
    img.Save("MyDiagram.bmp", imgformat)

    Exporting into Word Document

    C#
    System.Drawing.Image diagramimage = new Bitmap(1, 1, PixelFormat.Format24bppRgb);
    Graphics grfx = Graphics.FromImage(diagramimage);
    IntPtr hdc = grfx.GetHdc();
    Metafile emf = new Metafile(hdc, EmfType.EmfOnly);
    Graphics emfgrfx = Graphics.FromImage(emf);
    this.diagram1.View.ExportDiagramToGraphics(emfgrfx,true);
    grfx.ReleaseHdc(hdc);
    grfx.Dispose();
    emfgrfx.Dispose();
    diagramimage.Dispose();
    WordDocument document = new WordDocument();
    //Adding a new section to the document.
    IWSection section = document.AddSection();
    //Adding a paragraph to the section
    IWParagraph paragraph = section.AddParagraph();
    WPicture mImage = (WPicture)paragraph.AppendPicture(emf);
    document.Save("Sample.doc", Syncfusion.DocIO.FormatType.Doc);
    System.Diagnostics.Process.Start("Sample.doc");
    VB
    Dim diagramimage As System.Drawing.Image = New Bitmap(1, 1, PixelFormat.Format24bppRgb)
    Dim grfx As Graphics = Graphics.FromImage(diagramimage)
    Dim hdc As IntPtr = grfx.GetHdc()
    Dim emf As Metafile = New Metafile(hdc, EmfType.EmfOnly)
    Dim emfgrfx As Graphics = Graphics.FromImage(emf)
    Me.diagram1.View.ExportDiagramToGraphics(emfgrfx,True)
    grfx.ReleaseHdc(hdc)
    grfx.Dispose()
    emfgrfx.Dispose()
    diagramimage.Dispose()
    Dim document As WordDocument = New WordDocument()
    ''Adding a new section to the document.
    Dim section As IWSection = document.AddSection()
    ''Adding a paragraph to the section
    Dim paragraph As IWParagraph = section.AddParagraph()
    Dim mImage As WPicture = CType(paragraph.AppendPicture(emf), WPicture)
    document.Save("Sample.doc", Syncfusion.DocIO.FormatType.Doc)
    System.Diagnostics.Process.Start("Sample.doc")

    Sample :

    http://websamples.syncfusion.com/samples/KB/Diagram.Windows/KB_ExportingDiagram/main.htm

    ::adCenter::