Returns a document-specific font key - a label assigned to a
font name + font type combination at the time the font was added
to the font inventory.

Font key is used as label for the desired font for a block of text
to be added to the PDF document stream.
@private
@function
@param fontName {string} can be undefined on "falthy" to indicate "use current"
@param fontStyle {string} can be undefined on "falthy" to indicate "use current"
@returns {string} Font key.
@ignore
function getFont(fontName, fontStyle, options) {
      var key = undefined,
          fontNameLowerCase;
      options = options || {};
      fontName = fontName !== undefined ? fontName : fonts[activeFontKey].fontName;
      fontStyle = fontStyle !== undefined ? fontStyle : fonts[activeFontKey].fontStyle;
      fontNameLowerCase = fontName.toLowerCase();

      if (fontmap[fontNameLowerCase] !== undefined && fontmap[fontNameLowerCase][fontStyle] !== undefined) {
        key = fontmap[fontNameLowerCase][fontStyle];
      } else if (fontmap[fontName] !== undefined && fontmap[fontName][fontStyle] !== undefined) {
        key = fontmap[fontName][fontStyle];
      } else {
        if (options.disableWarning === false) {
          console.warn("Unable to look up font label for font '" + fontName + "', '" + fontStyle + "'. Refer to getFontList() for available fonts.");
        }
      }

      if (!key && !options.noFallback) {
        key = fontmap['times'][fontStyle];

        if (key == null) {
          key = fontmap['times']['normal'];
        }
      }

      return key;
    }