class_docstr: Class that for helping write the animated GIF file. This is based on
  code from images2gif.py (part of visvis). The version here is modified
  to allow streamed writing.
class_docstr_tok: ["Class","that","for","helping","write","the","animated","GIF","file",".","This","is","based","on","code","from","images2gif.py","(","part","of","visvis",")",".","The","version","here","is","modified","to","allow","streamed","writing","."]
docstr: Used for the local color table properties per image.
  Otherwise global color table applies to all frames irrespective of
  whether additional colors comes in play that require a redefined
  palette. Still a maximum of 256 color per frame, obviously.
  
  Written by Ant1 on 2010-08-22
  Modified by Alex Robinson in Janurari 2011 to implement subrectangles.
docstr_tok: ["Used","for","the","local","color","table","properties","per","image",".","Otherwise","global","color","table","applies","to","all","frames","irrespective","of","whether","additional","colors","comes","in","play","that","require","a","redefined","palette",".","Still","a","maximum","of","256","color","per","frame",",","obviously",".","Written","by","Ant1","on","2010-08-22","Modified","by","Alex","Robinson","in","Janurari","2011","to","implement","subrectangles","."]
code: def getImageDescriptor(self, im, xy=None):
      """Used for the local color table properties per image.
      Otherwise global color table applies to all frames irrespective of
      whether additional colors comes in play that require a redefined
      palette. Still a maximum of 256 color per frame, obviously.
  
      Written by Ant1 on 2010-08-22
      Modified by Alex Robinson in Janurari 2011 to implement subrectangles.
      """
  
      # Defaule use full image and place at upper left
      if xy is None:
          xy = (0, 0)
  
      # Image separator,
      bb = b"\x2C"
  
      # Image position and size
      bb += intToBin(xy[0])  # Left position
      bb += intToBin(xy[1])  # Top position
      bb += intToBin(im.size[0])  # image width
      bb += intToBin(im.size[1])  # image height
  
      # packed field: local color table flag1, interlace0, sorted table0,
      # reserved00, lct size111=7=2^(7 + 1)=256.
      bb += b"\x87"
  
      # LZW minimum size code now comes later, begining of [imagedata] blocks
      return bb
  
file_path: imageio/imageio/plugins/pillowmulti.py
imports: import logging
  import numpy
  from .pillow_legacy import PillowFormat, image_as_uint, ndarray_to_pil
label_desc: Use image node_id 7 for calling the GifWriter obj's underlying member method code with example usage: obj.getImageDescriptor(im, xy) and returns: bb