Browse Source

Merge pull request #1122 from AvaloniaUI/fixes/1121-parse-bezier-curve-seperators

correctly parse bezier curve seperators (Fixes #1121)
pull/1138/head
Steven Kirk 9 years ago
committed by GitHub
parent
commit
0be0bd3cc0
  1. 2
      src/Avalonia.Visuals/Media/PathMarkupParser.cs
  2. 4
      tests/Avalonia.Visuals.UnitTests/Media/PathMarkupParserTests.cs

2
src/Avalonia.Visuals/Media/PathMarkupParser.cs

@ -126,7 +126,9 @@ namespace Avalonia.Media
case Command.CubicBezierCurve:
{
Point point1 = ReadPoint(reader, point, relative);
ReadSeparator(reader);
Point point2 = ReadPoint(reader, point, relative);
ReadSeparator(reader);
point = ReadPoint(reader, point, relative);
_context.CubicBezierTo(point1, point2, point);
break;

4
tests/Avalonia.Visuals.UnitTests/Media/PathMarkupParserTests.cs

@ -74,6 +74,10 @@ namespace Avalonia.Visuals.UnitTests.Media
" M 16.6309 19.9063C 21.6309 24.1563 25.1309 26.1562 31.6309 28.6562C 31.6309 28.6562 26.3809 39.1562 18" +
".3809 36.1563C 18.3809 36.1563 18 38 16.3809 36.9063C 15 36 16.3809 34.9063 16.3809 34.9063C 16.3809 34" +
".9063 10.1309 30.9062 16.6309 19.9063 Z ")]
[InlineData(
"F1M16,12C16,14.209 14.209,16 12,16 9.791,16 8,14.209 8,12 8,11.817 8.03,11.644 8.054,11.467L6.585,10 4,10 " +
"4,6.414 2.5,7.914 0,5.414 0,3.586 3.586,0 4.414,0 7.414,3 7.586,3 9,1.586 11.914,4.5 10.414,6 " +
"12.461,8.046C14.45,8.278,16,9.949,16,12")]
public void Should_Parse(string pathData)
{
using (AvaloniaLocator.EnterScope())

Loading…
Cancel
Save