Browse Source

Fix center alignment for RTL

pull/8471/head
Benedikt Stebner 4 years ago
parent
commit
c921d1e097
  1. 8
      src/Avalonia.Base/Media/TextFormatting/TextLineImpl.cs

8
src/Avalonia.Base/Media/TextFormatting/TextLineImpl.cs

@ -1317,8 +1317,14 @@ namespace Avalonia.Media.TextFormatting
switch (textAlignment) switch (textAlignment)
{ {
case TextAlignment.Center: case TextAlignment.Center:
return Math.Max(0, (_paragraphWidth - width) / 2); var start = (_paragraphWidth - width) / 2;
if(paragraphFlowDirection == FlowDirection.RightToLeft)
{
start -= (widthIncludingTrailingWhitespace - width);
}
return Math.Max(0, start);
case TextAlignment.Right: case TextAlignment.Right:
return Math.Max(0, _paragraphWidth - widthIncludingTrailingWhitespace); return Math.Max(0, _paragraphWidth - widthIncludingTrailingWhitespace);

Loading…
Cancel
Save