Skip to content

Commit

Permalink
Fixed joined corners for rounded_rectangle() non-integer dimensions
Browse files Browse the repository at this point in the history
  • Loading branch information
radarhere committed Mar 15, 2024
1 parent ec3cf2c commit d245325
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 0 deletions.
2 changes: 2 additions & 0 deletions Tests/test_imagedraw.py
Original file line number Diff line number Diff line change
Expand Up @@ -868,8 +868,10 @@ def test_rounded_rectangle_zero_radius(bbox: Coords) -> None:
[
((20, 10, 80, 90), "x"),
((20, 10, 81, 90), "x_odd"),
((20, 10, 81.1, 90), "x_odd"),
((10, 20, 90, 80), "y"),
((10, 20, 90, 81), "y_odd"),
((10, 20, 90, 81.1), "y_odd"),
((20, 20, 80, 80), "both"),
],
)
Expand Down
4 changes: 4 additions & 0 deletions src/PIL/ImageDraw.py
Original file line number Diff line number Diff line change
Expand Up @@ -336,6 +336,10 @@ def rounded_rectangle(

d = radius * 2

x0 = round(x0)
y0 = round(y0)
x1 = round(x1)
y1 = round(y1)
full_x, full_y = False, False
if all(corners):
full_x = d >= x1 - x0 - 1
Expand Down

0 comments on commit d245325

Please sign in to comment.