docstr: Draw image blocks with formatted grid specification
  
  Args
      notes(str): Explain the block
      image_list (list): the list of image_paths
      grid_spec (dict): indicate image size and position
          - key: image_name, or index if image_set is a list
          - value: (x,y,w,h) position and weight/height of image,
                with left top corner of the block as (0,0), unit in mm
docstr_tok: ["Draw","image","blocks","with","formatted","grid","specification","Args","notes","(","str",")",":","Explain","the","block","image_list","(","list",")",":","the","list","of","image_paths","grid_spec","(","dict",")",":","indicate","image","size","and","position","-","key",":","image_name",",","or","index","if","image_set","is","a","list","-","value",":","(","x",",","y",",","w",",","h",")","position","and","weight\/height","of","image",",","with","left","top","corner","of","the","block","as","(","0,0",")",",","unit","in","mm"]
code: def draw_basic_images_with_grid_spec(
      self, notes: str, *, image_list, grid_spec
  ):
      """
      Draw image blocks with formatted grid specification
  
      Args
          notes(str): Explain the block
          image_list (list): the list of image_paths
          grid_spec (dict): indicate image size and position
              - key: image_name, or index if image_set is a list
              - value: (x,y,w,h) position and weight/height of image,
                    with left top corner of the block as (0,0), unit in mm
  
      """
      # -- Draw Content --
      self.pdf.add_new_line(notes)
      if len(image_list) > 0:
          self.pdf.add_list_of_grid_images(image_list, grid_spec)
      self.pdf.ln(5)
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import copy
  import os
  import tempfile
  import warnings
  import numpy
  import shutil
  from typing import Tuple, Dict, List
  from xai import MODE
  from xai.data.constants import DatetimeResolution
  from xai.data.explorer import CategoricalStats, NumericalStats, TextStats, DatetimeStats
  from xai.formatter.contents import Title, SectionTitle, Header
  from xai.formatter.portable_document.publisher import CustomPdf
  from xai.formatter.report.section import OverviewSection, DetailSection
  from xai.formatter.writer import Writer
label_desc: Use image node_id 11 for calling the PdfWriter obj's underlying member method code with example usage: obj.draw_basic_images_with_grid_spec(notes) without return types