Export Chart to SVG with viewBox attribute
Contents
[
Hide
]
By default, when the chart is exported to SVG format, the viewBox attribute is not included in its XML. However, Aspose.Cells provides ImageOrPrintOptions.SVGFitToViewPort property which when set to true exports the chart to SVG with viewBox attribute.
Export Chart to SVG with viewBox attribute
The following sample code exports the chart to SVG format with the viewBox attribute.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Create workbook object from source file | |
Workbook workbook = new Workbook(dataDir + "SampleChartBook.xlsx"); | |
// Access first worksheet | |
Worksheet worksheet = workbook.Worksheets[0]; | |
// Access first chart inside the worksheet | |
Aspose.Cells.Charts.Chart chart = worksheet.Charts[0]; | |
// Set image or print options with SVGFitToViewPort true | |
Aspose.Cells.Rendering.ImageOrPrintOptions opts = new Aspose.Cells.Rendering.ImageOrPrintOptions(); | |
opts.ImageType = ImageType.Svg; | |
opts.SVGFitToViewPort = true; | |
// Save the chart to svg format | |
chart.ToImage(dataDir + "Image_out.svg", opts); |
If you open the chart’s SVG in notepad, you will find the viewBox attribute similar to this.
<svg xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
<span class="n">width</span><span class="o">=</span><span class="s">"100%"</span> <span class="n">height</span><span class="o">=</span><span class="s">"100%"</span>
<span class="n">viewBox</span><span class="o">=</span><span class="s">"0 0 480 288"</span><span class="o">></span></code></pre></div>