VintaSoft Imaging .NET SDK 12.4: Documentation for .NET developer
In This Topic
    Codecs: How to convert DOCX to SVG?
    In This Topic
    VintaSoft Imaging .NET SDK can render DOCX page in vector form and save vector content to a SVG file.


    Here is C#/VB.NET code that shows how to convert DOCX document to a SVG file(s) using ImageCollection and SvgEncoder classes:
    /// <summary>
    /// Converts DOCX document to the SVG files using ImageCollection and SvgEncoder classes.
    /// </summary>
    public static void ConvertDocxToSvg(string docxFileName)
    {
        // create image collection
        using (Vintasoft.Imaging.ImageCollection images = new Vintasoft.Imaging.ImageCollection())
        {
            // add DOCX document to the image collection
            images.Add(docxFileName);
    
            // create SVG encoder
            using (Vintasoft.Imaging.Codecs.Encoders.SvgEncoder svgEncoder =
                new Vintasoft.Imaging.Codecs.Encoders.SvgEncoder())
            {
                // specify that SVG encoder should compress embedded image using PNG compression
                svgEncoder.Settings.EmbeddedImageEncoder = new Vintasoft.Imaging.Codecs.Encoders.PngEncoder();
    
                // for each page in DOCX document
                for (int i = 0; i < images.Count; i++)
                {
                    // save page to SVG file
                    images[i].Save(string.Format("page{0}.svg", i), svgEncoder);
                }
            }
    
            // dispose images
            images.ClearAndDisposeItems();
        }
    }
    
    ''' <summary>
    ''' Converts DOCX document to the SVG files using ImageCollection and SvgEncoder classes.
    ''' </summary>
    Public Shared Sub ConvertDocxToSvg(docxFileName As String)
        ' create image collection
        Using images As New Vintasoft.Imaging.ImageCollection()
            ' add DOCX document to the image collection
            images.Add(docxFileName)
    
            ' create SVG encoder
            Using svgEncoder As New Vintasoft.Imaging.Codecs.Encoders.SvgEncoder()
                ' specify that SVG encoder should compress embedded image using PNG compression
                svgEncoder.Settings.EmbeddedImageEncoder = New Vintasoft.Imaging.Codecs.Encoders.PngEncoder()
    
                ' for each page in DOCX document
                For i As Integer = 0 To images.Count - 1
                    ' save page to SVG file
                    images(i).Save(String.Format("page{0}.svg", i), svgEncoder)
                Next
            End Using
    
            ' dispose images
            images.ClearAndDisposeItems()
        End Using
    End Sub