parameters: (bmp, thumbnail_size=200)
return_statement: return otherBmp
docstring: Rescales a bitmap to be `thumbnail_size` pixels wide (or tall) at maximum.
  
      :param Bitmap `bmp`: the bitmap to rescale;
      :param integer `thumbnail_size`: the maximum size of every page thumbnail.
docstring_summary: Rescales a bitmap to be `thumbnail_size` pixels wide (or tall) at maximum.
docstring_tokens: Rescales a bitmap to be thumbnail_size pixels wide ( or tall ) at maximum .
function: def RescaleScreenShot(bmp, thumbnail_size=200):
      """
      Rescales a bitmap to be `thumbnail_size` pixels wide (or tall) at maximum.
  
      :param Bitmap `bmp`: the bitmap to rescale;
      :param integer `thumbnail_size`: the maximum size of every page thumbnail.
      """
  
      bmpW, bmpH = bmp.GetWidth(), bmp.GetHeight()
      img = bmp.ConvertToImage()
  
      newW, newH = bmpW, bmpH
      
      if bmpW > bmpH:
          if bmpW > thumbnail_size:
              ratio = bmpW/float(thumbnail_size)
              newW, newH = int(bmpW/ratio), int(bmpH/ratio)
              img.Rescale(newW, newH, wx.IMAGE_QUALITY_HIGH)
      else:
          if bmpH > thumbnail_size:
              ratio = bmpH/float(thumbnail_size)
              newW, newH = int(bmpW/ratio), int(bmpH/ratio)
              img.Rescale(newW, newH, wx.IMAGE_QUALITY_HIGH)
  
      newBmp = img.ConvertToBitmap()
      otherBmp = wx.EmptyBitmap(newW+5, newH+5)    
  
      memDC = wx.MemoryDC()
      memDC.SelectObject(otherBmp)
      memDC.SetBackground(wx.WHITE_BRUSH)
      memDC.Clear()
      
      memDC.SetPen(wx.TRANSPARENT_PEN)
  
      pos = 0
      for i in xrange(5, 0, -1):
          brush = wx.Brush(wx.Colour(50*i, 50*i, 50*i))
          memDC.SetBrush(brush)
          memDC.DrawRoundedRectangle(0, 0, newW+5-pos, newH+5-pos, 2)
          pos += 1
  
      memDC.DrawBitmap(newBmp, 0, 0, True)
       
      # Select the Bitmap out of the memory DC by selecting a new
      # uninitialized Bitmap
      memDC.SelectObject(wx.NullBitmap)
  
      return otherBmp
function_tokens: def RescaleScreenShot ( bmp , thumbnail_size = 200 ) : bmpW , bmpH = bmp . GetWidth ( ) , bmp . GetHeight ( ) img = bmp . ConvertToImage ( ) newW , newH = bmpW , bmpH if bmpW > bmpH : if bmpW > thumbnail_size : ratio = bmpW / float ( thumbnail_size ) newW , newH = int ( bmpW / ratio ) , int ( bmpH / ratio ) img . Rescale ( newW , newH , wx . IMAGE_QUALITY_HIGH ) else : if bmpH > thumbnail_size : ratio = bmpH / float ( thumbnail_size ) newW , newH = int ( bmpW / ratio ) , int ( bmpH / ratio ) img . Rescale ( newW , newH , wx . IMAGE_QUALITY_HIGH ) newBmp = img . ConvertToBitmap ( ) otherBmp = wx . EmptyBitmap ( newW + 5 , newH + 5 ) memDC = wx . MemoryDC ( ) memDC . SelectObject ( otherBmp ) memDC . SetBackground ( wx . WHITE_BRUSH ) memDC . Clear ( ) memDC . SetPen ( wx . TRANSPARENT_PEN ) pos = 0 for i in xrange ( 5 , 0 , - 1 ) : brush = wx . Brush ( wx . Colour ( 50 * i , 50 * i , 50 * i ) ) memDC . SetBrush ( brush ) memDC . DrawRoundedRectangle ( 0 , 0 , newW + 5 - pos , newH + 5 - pos , 2 ) pos += 1 memDC . DrawBitmap ( newBmp , 0 , 0 , True ) # Select the Bitmap out of the memory DC by selecting a new # uninitialized Bitmap memDC . SelectObject ( wx . NullBitmap ) return otherBmp