Browse Source
Merge pull request #9714 from DmitryZhelnin/9692-odd-number-of-dashes
Skia drawing context: support odd number of dashes
pull/9722/head
Max Katz
3 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with
6 additions and
3 deletions
-
src/Skia/Avalonia.Skia/DrawingContextImpl.cs
|
|
|
@ -1137,11 +1137,14 @@ namespace Avalonia.Skia |
|
|
|
if (pen.DashStyle?.Dashes != null && pen.DashStyle.Dashes.Count > 0) |
|
|
|
{ |
|
|
|
var srcDashes = pen.DashStyle.Dashes; |
|
|
|
var dashesArray = new float[srcDashes.Count]; |
|
|
|
|
|
|
|
for (var i = 0; i < srcDashes.Count; ++i) |
|
|
|
var count = srcDashes.Count % 2 == 0 ? srcDashes.Count : srcDashes.Count * 2; |
|
|
|
|
|
|
|
var dashesArray = new float[count]; |
|
|
|
|
|
|
|
for (var i = 0; i < count; ++i) |
|
|
|
{ |
|
|
|
dashesArray[i] = (float) srcDashes[i] * paint.StrokeWidth; |
|
|
|
dashesArray[i] = (float) srcDashes[i % srcDashes.Count] * paint.StrokeWidth; |
|
|
|
} |
|
|
|
|
|
|
|
var offset = (float)(pen.DashStyle.Offset * pen.Thickness); |
|
|
|
|