diff --git a/data.go b/data.go index 105af4cc468633893949d2a9b3398b39bd9c0326..9ce26df89f179efc5600dd26310048f947d49d6c 100644 --- a/data.go +++ b/data.go @@ -200,9 +200,12 @@ func PictureDataFromPicture(pic Picture) PictureData { pd := MakePictureData(bounds) if pic, ok := pic.(PictureColor); ok { - for y := bounds.Pos.Y(); y < bounds.Pos.Y()+bounds.Size.Y(); y++ { - for x := bounds.Pos.X(); x < bounds.Pos.X()+bounds.Size.X(); x++ { - at := V(x, y) + for y := math.Floor(bounds.Pos.Y()); y < bounds.Pos.Y()+bounds.Size.Y(); y++ { + for x := math.Floor(bounds.Pos.X()); x < bounds.Pos.X()+bounds.Size.X(); x++ { + at := V( + math.Max(x, bounds.Pos.X()), + math.Max(y, bounds.Pos.Y()), + ) pd.SetColor(at, pic.Color(at)) } }