code: def render(self, code):
          
          if self._callbacks['initialize'] is not None:
              self._callbacks['initialize'](code)
          ypos = 1.0
          for cc, line in enumerate(code):
              """
              Pack line to list give better gfx result, otherwise in can
              result in aliasing gaps
              '11010111' -> [2, -1, 1, -1, 3]
              """
              line += ' '
              c = 1
              mlist = []
              for i in range(0, len(line) - 1):
                  if line[i] == line[i+1]:
                      c += 1
                  else:
                      if line[i] == "1":
                          mlist.append(c)
                      else:
                          mlist.append(-c)
                      c = 1
              # Left quiet zone is x startposition
              xpos = self.quiet_zone
              bxs = xpos  # x start of barcode
              for mod in mlist:
                  if mod < 1:
                      color = self.background
                  else:
                      color = self.foreground
                  # remove painting for background colored tiles?
                  self._callbacks['paint_module'](
                      xpos, ypos, self.module_width * abs(mod), color
                  )
                  xpos += self.module_width * abs(mod)
              bxe = xpos
              # Add right quiet zone to every line, except last line,
              # quiet zone already provided with background,
              # should it be removed complety?
              if (cc + 1) != len(code):
                  self._callbacks['paint_module'](
                      xpos, ypos, self.quiet_zone, self.background
                  )
              ypos += self.module_height
          if self.text and self._callbacks['paint_text'] is not None:
              ypos += self.text_distance
              if self.center_text:
                  # better center position for text
                  xpos = bxs + ((bxe - bxs) / 2.0)
              else:
                  xpos = bxs
              self._callbacks['paint_text'](xpos, ypos)
          return self._callbacks['finish']()
docs: Renders the barcode to whatever the inheriting writer provides,
          using the registered callbacks.
  
          :parameters:
              code : List
                  List of strings matching the writer spec
                  (only contain 0 or 1).