using System.Linq; using NUnit.Framework; using QuestPDF.Examples.Engine; using QuestPDF.Fluent; using QuestPDF.Helpers; using QuestPDF.Infrastructure; using Microcharts; using SkiaSharp; namespace QuestPDF.Examples { public class ChartExample { [Test] public void MicrochartChart() { var entries = new[] { new ChartEntry(212) { Label = "UWP", ValueLabel = "112", Color = SKColor.Parse("#2c3e50") }, new ChartEntry(248) { Label = "Android", ValueLabel = "648", Color = SKColor.Parse("#77d065") }, new ChartEntry(128) { Label = "iOS", ValueLabel = "428", Color = SKColor.Parse("#b455b6") }, new ChartEntry(514) { Label = "Forms", ValueLabel = "214", Color = SKColor.Parse("#3498db") } }; RenderingTest .Create() .PageSize(400, 600) .ProduceImages() .ShowResults() .Render(container => { container .Background(Colors.White) .Padding(25) .Stack(stack => { stack .Item() .PaddingBottom(10) .Text("Chart example", TextStyle.Default.Size(20).SemiBold().Color(Colors.Blue.Medium)); stack .Item() .Border(1) .ExtendHorizontal() .Height(300) .Canvas((canvas, size) => { var chart = new BarChart { Entries = entries, LabelOrientation = Orientation.Horizontal, ValueLabelOrientation = Orientation.Horizontal, IsAnimated = false, }; chart.DrawContent(canvas, (int)size.Width, (int)size.Height); }); }); }); } } }