public DrawingGroup Read(Uri fileUri) { if (fileUri == null) { return(new DrawingGroup()); } var svgRender = new SVGRender(new FileSystemLoader()); svgRender.OverrideColor = _overrideColor; return(svgRender.LoadDrawing(fileUri)); }
public DrawingGroup Read(Stream stream) { if (stream == null) { return(new DrawingGroup()); } var svgRender = new SVGRender(new FileSystemLoader()); svgRender.OverrideColor = _overrideColor; return(svgRender.LoadDrawing(stream)); }
public DrawingGroup Read(string filePath, DirectoryInfo workingDir) { if (string.IsNullOrWhiteSpace(filePath)) { return(new DrawingGroup()); } var svgRender = new SVGRender(new FileSystemLoader()); svgRender.OverrideColor = _overrideColor; svgRender.UseAnimations = true; var drawingGroup = svgRender.LoadDrawing(filePath); string xamlFilePath = IoPath.Combine(workingDir.FullName, IoPath.GetFileNameWithoutExtension(filePath) + ".xaml"); //svgDrawing.RenderDiagrams(drawing); if (drawingGroup != null) { if (_xamlPage != null) { //using (MemoryStream stream = new MemoryStream()) using (FileStream stream = File.Create(xamlFilePath)) { XmlWriterSettings writerSettings = new XmlWriterSettings(); writerSettings.Indent = true; writerSettings.OmitXmlDeclaration = true; writerSettings.Encoding = Encoding.UTF8; using (XmlWriter writer = XmlWriter.Create(stream, writerSettings)) { XamlWriter.Save(drawingGroup, writer); } if (stream.Length > 0) { stream.Position = 0; } _xamlPage.LoadDocument(stream); } } } return(drawingGroup); }
private void CreateImages(int count) { for (int i = 0; i < count; i++) { var svgRender = new SVGRender(); var image = svgRender.LoadDrawing("ImagePerformanceDemo/Resources/timer.svg"); Container.Children.Add(new SVGImage { ImageSource = image, SizeType = SVGImage.eSizeType.SizeToContent, Width = 100, Height = 100, HorizontalAlignment = HorizontalAlignment.Center, VerticalAlignment = VerticalAlignment.Center }); } }