public void TestBorderAndBackground()
    {
        var backgroundAndBorder = Style(new StyleDefinition()
        {
            BackgroundColor = PackedLinearColorA.FromHex("#666666"),
            BorderColor     = PackedLinearColorA.FromHex("#AAAAAA"),
            BorderWidth     = 2
        });
        var backgroundOnly = Style(new StyleDefinition()
        {
            BackgroundColor = PackedLinearColorA.FromHex("#666666"),
            BorderColor     = PackedLinearColorA.FromHex("#AAAAAA")
        });
        var borderOnly = Style(new StyleDefinition()
        {
            BorderColor = PackedLinearColorA.FromHex("#AAAAAA"),
            BorderWidth = 1
        });
        var thickBorder = Style(new StyleDefinition()
        {
            BorderColor = PackedLinearColorA.FromHex("#AAAAAA"),
            BorderWidth = 4
        });

        Device.BeginDraw();
        Device.TextEngine.RenderBackgroundAndBorder(25, 75, 100, 50, backgroundAndBorder);
        Device.TextEngine.RenderBackgroundAndBorder(25, 275, 100, 50, borderOnly);
        Device.TextEngine.RenderBackgroundAndBorder(225, 275, 100, 50, thickBorder);
        Device.TextEngine.RenderBackgroundAndBorder(225, 75, 100, 50, backgroundOnly);
        Device.EndDraw();

        var screenshot = TakeScreenshot();

        ImageComparison.AssertImagesEqual(screenshot, "Core/GFX/TextRendering/BackgroundAndBorder.png");
    }
    public void TestNonRichTextRendering()
    {
        var styles = Globals.UiStyles.StyleResolver.Resolve(new[]
        {
            new StyleDefinition()
            {
                Color     = PackedLinearColorA.FromHex("#AAAAAA"),
                FontSize  = 20,
                Underline = true
            }
        });

        using var layout = Device.TextEngine.CreateTextLayout(styles, "Hello World", 250, 250);
        RenderAndCompare(layout, "Core/GFX/TextRendering/NonRichTextLayout.png");
    }