A cross-platform UI framework for .NET
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

49 lines
1.3 KiB

using System.Globalization;
namespace Avalonia.Media.TextFormatting
{
/// <summary>
/// Options to customize text shaping.
/// </summary>
public readonly struct TextShaperOptions
{
public TextShaperOptions(
IGlyphTypeface typeface,
double fontRenderingEmSize = 12,
sbyte bidiLevel = 0,
CultureInfo? culture = null,
double incrementalTabWidth = 0)
{
Typeface = typeface;
FontRenderingEmSize = fontRenderingEmSize;
BidiLevel = bidiLevel;
Culture = culture;
IncrementalTabWidth = incrementalTabWidth;
}
/// <summary>
/// Get the typeface.
/// </summary>
public IGlyphTypeface Typeface { get; }
/// <summary>
/// Get the font rendering em size.
/// </summary>
public double FontRenderingEmSize { get; }
/// <summary>
/// Get the bidi level of the text.
/// </summary>
public sbyte BidiLevel { get; }
/// <summary>
/// Get the culture.
/// </summary>
public CultureInfo? Culture { get; }
/// <summary>
/// Get the incremental tab width.
/// </summary>
public double IncrementalTabWidth { get; }
}
}