docs: @Override
      public void drawText(Graphics2D graphics, int width, int height) {
          if(StringUtils.isBlank(text) || StringUtils.isBlank(domainName)) {
              return ;
          }
          
          int x = 0, y = 0; 
          int fontsize = ((int)(width * textWidthPercent)) / domainName.length();
          if (fontsize < minFontSize) {
              return;
          }
          
          float fsize = (float)fontsize;
          Font font = domainFont.deriveFont(fsize);
          graphics.setFont(font);
          FontRenderContext context = graphics.getFontRenderContext();
          int sw = (int) font.getStringBounds(domainName, context).getWidth();
  
          x = width - sw - fontsize;
          y = height - fontsize;
          if(x <= 0 || y <= 0) {
              return ;
          }
  
          if (fontShadowColor != null) {
              graphics.setColor(fontShadowColor);
              graphics.drawString(domainName, x + getShadowTranslation(fontsize), y + getShadowTranslation(fontsize));
          }
          graphics.setColor(fontColor);
          graphics.drawString(domainName, x, y);
          
          //draw company name
          fsize = (float)fontsize;
          font = defaultFont.deriveFont(fsize);
          graphics.setFont(font);
          context = graphics.getFontRenderContext();
          sw = (int) font.getStringBounds(text, context).getWidth();
          x = width - sw - fontsize;
          y = height - (int)(fontsize * 2.5);
          if(x <= 0 || y <= 0) {
              return ;
          }
          
          if (fontShadowColor != null) {
              graphics.setColor(fontShadowColor);
              graphics.drawString(text, x + getShadowTranslation(fontsize), y + getShadowTranslation(fontsize));
          }
          graphics.setColor(fontColor);
          graphics.drawString(text, x, y);
      }