@@ -94,10 +94,11 @@ class Adafruit_SSD1675B(Adafruit_EPD):
94
94
def __init__ (self , width , height , spi , * , cs_pin , dc_pin , sramcs_pin , rst_pin , busy_pin ):
95
95
super (Adafruit_SSD1675B , self ).__init__ (width , height , spi , cs_pin , dc_pin ,
96
96
sramcs_pin , rst_pin , busy_pin )
97
- if width % 8 != 0 :
98
- width += (8 - width % 8 )
97
+ stride = width
98
+ if stride % 8 != 0 :
99
+ stride += (8 - stride % 8 )
99
100
100
- self ._buffer1_size = int (width * height / 8 )
101
+ self ._buffer1_size = int (stride * height / 8 )
101
102
self ._buffer2_size = self ._buffer1_size
102
103
103
104
if sramcs_pin :
@@ -108,9 +109,9 @@ def __init__(self, width, height, spi, *, cs_pin, dc_pin, sramcs_pin, rst_pin, b
108
109
self ._buffer2 = bytearray (self ._buffer2_size )
109
110
# since we have *two* framebuffers - one for red and one for black
110
111
# we dont subclass but manage manually
111
- self ._framebuf1 = adafruit_framebuf .FrameBuffer (self ._buffer1 , width , height ,
112
+ self ._framebuf1 = adafruit_framebuf .FrameBuffer (self ._buffer1 , width , height , stride = stride ,
112
113
buf_format = adafruit_framebuf .MHMSB )
113
- self ._framebuf2 = adafruit_framebuf .FrameBuffer (self ._buffer2 , width , height ,
114
+ self ._framebuf2 = adafruit_framebuf .FrameBuffer (self ._buffer2 , width , height , stride = stride ,
114
115
buf_format = adafruit_framebuf .MHMSB )
115
116
self .set_black_buffer (0 , True )
116
117
self .set_color_buffer (0 , True )
0 commit comments