Próbuję narysować grube prostokąty na obrazie przy użyciu modułu ImageDraw z PIL/poduszki.Czy istnieje sposób określenia szerokości prostokąta w pliku PIL?
Próbowałem używać draw.rectangle([x1, y1, x2, y2], outline='yellow', width=3)
, ale wydaje się nie podoba mi się parametr width.
Mogę naśladować to, co chcę zrobić z kilkoma liniami, ale zastanawiałem się, czy istnieje odpowiedni sposób robienia tego.
'''
coordinates = [x1, y1, x2, y2]
(x1, y1)
*--------------
| |
| |
| |
| |
| |
| |
--------------*
(x2, y2)
'''
def draw_rectangle(drawing, coordinates, color='yellow', width=3):
#top
line_coordinates = [coordinates[0], coordinates[1], coordinates[2], coordinates[1]]
drawing.line(line_coordinates, fill=color, width=width)
#left
line_coordinates = [coordinates[0], coordinates[1], coordinates[0], coordinates[3]]
drawing.line(line_coordinates, fill=color, width=width)
#right
line_coordinates = [coordinates[2], coordinates[1], coordinates[2], coordinates[3]]
drawing.line(line_coordinates, fill=color, width=width)
#bottom
line_coordinates = [coordinates[0], coordinates[3], coordinates[2], coordinates[3]]
drawing.line(line_coordinates, fill=color, width=width)