Function: open-font

open-font is a function defined in font.c.

Signature

(open-font FONT-ENTITY &optional SIZE FRAME)

Documentation

Open FONT-ENTITY.

Source Code

// Defined in /usr/src/emacs/src/font.c
{
  intmax_t isize;
  struct frame *f = decode_live_frame (frame);

  CHECK_FONT_ENTITY (font_entity);

  if (NILP (size))
    isize = XFIXNUM (AREF (font_entity, FONT_SIZE_INDEX));
  else
    {
      CHECK_NUMBER (size);
      if (FLOATP (size))
	isize = POINT_TO_PIXEL (XFLOAT_DATA (size), FRAME_RES_Y (f));
      else if (! integer_to_intmax (size, &isize))
	args_out_of_range (font_entity, size);
      if (! (INT_MIN <= isize && isize <= INT_MAX))
	args_out_of_range (font_entity, size);
      if (isize == 0)
	isize = 120;
    }
  return font_open_entity (f, font_entity, isize);
}