'Write the a text string at a given location
text -  A text string to print.
location-The location to place the top right corner of the text
color - The object\'s color as a simple CVColor object, if no value  is sepcified
the default is used.
alpha - The alpha blending for the object. If this value is -1 then the
layer default value is used. A value of 255 means opaque, while 0
means transparent.
Parameters:
text - String
location - Tuple
color - Color object or Color tuple
alpha - Int'

def text(self, text, location, color=Color.DEFAULT, alpha=(-1)):

    if (len(text) < 0):
        return None
    tsurface = self._mFont.render(text, True, self._csvRGB2pgColor(color, alpha))
    if (alpha == (-1)):
        alpha = self._mDefaultAlpha
    pixels_alpha = pg.surfarray.pixels_alpha(tsurface)
    pixels_alpha[...] = (pixels_alpha * (alpha / 255.0)).astype(np.uint8)
    del pixels_alpha
    self._mSurface.blit(tsurface, location)
    fontStyle = 'font-size:    {}px;'.format((self._mFontSize - 7))
    if self._mFontBold:
        fontStyle += 'font-weight:    bold;'
    if self._mFontItalic:
        fontStyle += 'font-style:    italic;'
    if self._mFontUnderline:
        fontStyle += 'text-decoration:    underline;'
    if self._mFontName:
        fontStyle += 'font-family:    "{}";'.format(self._mFontName)
    alteredLocation = (location[0], (location[1] + self.textDimensions(text)[1]))
    altInt = tuple((int(x) for x in alteredLocation))
    self._mSVG.add(self._mSVG.text(text, insert=altInt, style=fontStyle))
    return None
