Images.cs 821 B

12345678910111213141516171819202122232425262728
  1. using System;
  2. using System.Reflection;
  3. using Avalonia.Svg.Skia;
  4. using InABox.Avalonia.Components;
  5. using Syncfusion.Pdf.Parsing;
  6. namespace InABox.Avalonia;
  7. public static class Images
  8. {
  9. public static SvgImage? LoadSVG(string image, Assembly? assembly = null)
  10. {
  11. SvgImage? result = null;
  12. if (!string.IsNullOrWhiteSpace(image))
  13. {
  14. SvgSource.EnableThrowOnMissingResource = false;
  15. var source = assembly != null
  16. ? SvgSource.Load($"avares://{assembly.GetName().Name}{image}")
  17. : SvgSource.Load($"avares://{Assembly.GetCallingAssembly().GetName().Name}{image}");
  18. result = new SvgImage { Source = source };
  19. }
  20. return result;
  21. }
  22. public static SvgImage? search => LoadSVG("/Images/search.svg");
  23. }