示例#1
0
        public void Handwheel() //Full integrated with all optimizations
        {
            var xaml = ConverterLogic.SvgFileToXaml("..\\..\\TestFiles\\Handwheel.svg", ResultMode.DrawingGroup, null);

            Console.WriteLine(xaml);
            Clipboard.SetText(xaml);
        }
示例#2
0
        public void Handwheel() //Full integrated with all optimizations
        {
            var resKeyInfo = new ResKeyInfo {
                Prefix = "Prefix"
            };
            var xaml = ConverterLogic.SvgFileToXaml("TestFiles\\Handwheel.svg", ResultMode.DrawingGroup, resKeyInfo, false, null);

            CheckXamlOutput(xaml);
        }
示例#3
0
        public void Handwheel() //Full integrated with all optimizations
        {
            var resKeyInfo = new ResKeyInfo {
                Prefix = "Prefix"
            };
            var xaml = ConverterLogic.SvgFileToXaml("TestFiles\\Handwheel.svg", ResultMode.DrawingGroup, resKeyInfo, null);

            Console.WriteLine(xaml);
            Clipboard.SetText(xaml);
        }
示例#4
0
        public void ConvertFileToDrawingGroupWithRuntime(string filename)
        {
            var settings = new WpfDrawingSettings
            {
                IncludeRuntime = true,
                TextAsGeometry = false,
                OptimizePath   = true,
            };
            var xaml = ConverterLogic.SvgFileToXaml(filename, ResultMode.DrawingGroup, settings);

            Console.WriteLine(xaml);
        }
示例#5
0
        public void ConvertFileToDrawingImage(string filename)
        {
            var settings = new WpfDrawingSettings
            {
                IncludeRuntime = false,
                TextAsGeometry = false,
                OptimizePath   = true,
            };
            var resKeyInfo = new ResKeyInfo {
                Prefix = "Prefix"
            };
            var xaml = ConverterLogic.SvgFileToXaml(filename, ResultMode.DrawingImage, resKeyInfo, true, settings);

            CheckXamlOutput(xaml, Path.GetFileName(filename));
        }
示例#6
0
        public void ConvertFileToDrawingGroup2()
        {
            var settings = new WpfDrawingSettings
            {
                IncludeRuntime = false,
                TextAsGeometry = false,
                OptimizePath   = true,
            };
            var resKeyInfo = new ResKeyInfo {
                Prefix = "Prefix"
            };
            var xaml = ConverterLogic.SvgFileToXaml("TestFiles\\3d-view-icon.svg", ResultMode.DrawingGroup, resKeyInfo, false, settings);

            CheckXamlOutput(xaml);
        }
示例#7
0
        public void ConvertFileToDrawingImage(string filename)
        {
            var settings = new WpfDrawingSettings
            {
                IncludeRuntime = false,
                TextAsGeometry = false,
                OptimizePath   = true,
            };
            var resKeyInfo = new ResKeyInfo {
                Prefix = "Prefix"
            };
            var xaml = ConverterLogic.SvgFileToXaml(filename, ResultMode.DrawingImage, resKeyInfo, settings);

            Console.WriteLine(xaml);
        }
示例#8
0
        public void ConvertFileToDrawingGroup2()
        {
            var settings = new WpfDrawingSettings
            {
                IncludeRuntime = false,
                TextAsGeometry = false,
                OptimizePath   = true,
            };
            var xaml = ConverterLogic.SvgFileToXaml("..\\..\\TestFiles\\3d-view-icon.svg", ResultMode.DrawingGroup, settings);

            Console.WriteLine(xaml);
            string expected = File.ReadAllText("..\\..\\TestFiles\\3d-view-icon_expected.txt");

            xaml.Should().Be(expected);
        }
示例#9
0
        static void Main(string[] args)
        {
            if (args == null || args.Count() < 2)
            {
                throw new ArgumentException("Please makes sure that you provide a source folder and a target file path");
            }

            var workingDirectory = args[0];
            var filePath         = args[1];
            var fullClassName    = args[2];

            var svgFiles = ConverterLogic.SvgFilesFromFolder(workingDirectory, true);

            var content = new StringBuilder();

            var resourceNames = new List <string>();

            string GetName(string baseName)
            {
                var nameParts           = baseName.Split('_');
                var resourceNameBuilder = new StringBuilder();

                foreach (var namePart in nameParts)
                {
                    var local = namePart.Replace("-", string.Empty);

                    if (int.TryParse(local, out int _))
                    {
                        local = "N" + local;
                    }

                    resourceNameBuilder.Append(ToUpper(local));
                }

                var resourcesName = resourceNameBuilder.ToString();

                Console.WriteLine();
                Console.WriteLine($"Generated resource name: {resourcesName}");

                resourceNames.Add(resourcesName);

                return(resourcesName);
            }

            foreach (var svgFile in svgFiles)
            {
                var resKey = new ResKeyInfo
                {
                    XamlName      = Path.GetFileNameWithoutExtension(svgFile),
                    NameConverter = GetName
                };

                var result = ConverterLogic.SvgFileToXaml(svgFile, ResultMode.DrawingImage, resKey, false);

                content.Append(result);
            }

            var nameInfo = ResourceLookupGenerator.GetFileNameFromNamespace(fullClassName);

            Directory.CreateDirectory(filePath);

            File.WriteAllText(Path.Combine(filePath, nameInfo.className + ".xaml"), content.ToString());
            var resourceLookup = new ResourceLookupGenerator();

            resourceLookup.Generate(resourceNames, filePath, fullClassName);
        }