88 lines
2.9 KiB
C#
88 lines
2.9 KiB
C#
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)
|
|
.Column(column =>
|
|
{
|
|
column
|
|
.Item()
|
|
.PaddingBottom(10)
|
|
.Text("Chart example")
|
|
.FontSize(20)
|
|
.SemiBold()
|
|
.FontColor(Colors.Blue.Medium);
|
|
|
|
column
|
|
.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);
|
|
});
|
|
});
|
|
});
|
|
}
|
|
}
|
|
} |