using System; using System.IO; using QuestPDF.ReportSample.Layouts; using SkiaSharp; namespace QuestPDF.ReportSample { public static class Helpers { public static Random Random { get; } = new Random(); public static string GetTestItem(string path) => Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Resources", path); public static byte[] GetDocumentMap(string name) => GetImage(Path.Combine("Maps", "Document", name)); public static byte[] GetDetailsMap(string name) => GetImage(Path.Combine("Maps", "Details", name)); public static byte[] GetContextMap(string name) => GetImage(Path.Combine("Maps", "Context", name)); public static byte[] GetPhoto(string name) => GetImage(Path.Combine("Photos", name)); public static byte[] GetImage(string name) { var photoPath = GetTestItem(name); return SKImage.FromEncodedData(photoPath).EncodedData.ToArray(); } public static Location RandomLocation() { return new Location { Longitude = Helpers.Random.NextDouble() * 360f - 180f, Latitude = Helpers.Random.NextDouble() * 180f - 90f }; } } }