def display(self, image):
        """
        Renders a 24-bit RGB image to the Color OLED display.

        :param image: The image to render.
        :type image: PIL.Image.Image
        """
        assert(image.mode == self.mode)
        assert(image.size == self.size)

        image = self.preprocess(image)

        if self.framebuffer.redraw_required(image):
            left, top, right, bottom = self._apply_offsets(self.framebuffer.bounding_box)
            width = right - left
            height = bottom - top

            self._set_position(top, right, bottom, left)

            i = 0
            buf = bytearray(width * height * 2)
            for r, g, b in self.framebuffer.getdata():
                if not(r == g == b == 0):
                    # 65K format 1
                    buf[i] = r & 0xF8 | g >> 5
                    buf[i + 1] = g << 3 & 0xE0 | b >> 3
                i += 2

            self.data(list(buf))
def display ( self , image ) : assert ( image . mode == self . mode ) assert ( image . size == self . size ) image = self . preprocess ( image ) if self . framebuffer . redraw_required ( image ) : left , top , right , bottom = self . _apply_offsets ( self . framebuffer . bounding_box ) width = right - left height = bottom - top self . _set_position ( top , right , bottom , left ) i = 0 buf = bytearray ( width * height * 2 ) for r , g , b in self . framebuffer . getdata ( ) : if not ( r == g == b == 0 ) : buf [ i ] = r & 0xF8 | g >> 5 buf [ i + 1 ] = g << 3 & 0xE0 | b >> 3 i += 2 self . data ( list ( buf ) )
Renders a 24-bit RGB image to the Color OLED display.

        :param image: The image to render.
        :type image: PIL.Image.Image