namespace Avalonia.Media.TextFormatting
{
///
/// a collapsing properties to collapse whole line toward the end
/// at word granularity.
///
public sealed class TextTrailingWordEllipsis : TextCollapsingProperties
{
///
/// Construct a text trailing word ellipsis collapsing properties.
///
/// Text used as collapsing symbol.
/// width in which collapsing is constrained to.
/// text run properties of ellipsis symbol.
/// flow direction of the collapsed line.
public TextTrailingWordEllipsis(
string ellipsis,
double width,
TextRunProperties textRunProperties,
FlowDirection flowDirection
)
{
Width = width;
Symbol = new TextCharacters(ellipsis, textRunProperties);
FlowDirection = flowDirection;
}
///
public override double Width { get; }
///
public override TextRun Symbol { get; }
public override FlowDirection FlowDirection { get; }
///
public override TextRun[]? Collapse(TextLine textLine)
{
return TextEllipsisHelper.Collapse(textLine, this, true);
}
}
}