/*
* $Id: font.h,v 1.6 2000/08/10 21:02:50 danny Exp $
*
* Copyright © 1992, 1993 Free Software Foundation, Inc.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this software; see the file COPYING. If not, write to
* the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
*/
#ifndef FONTH
#define FONTH
#include "global.h"
#include "line.h"
/* Oleo' concept of a font family: */
struct font_names
{
struct font_names * next;
char * oleo_name; /* like `times' */
char * x_name; /* like `*times-medium-r-*'. In particular,
* the defintion will only scale properly
* if the point size is wild-carded.
*/
char * ps_name; /* like `Times-Roman'. */
};
/* Oleo's concept of a particular set of glyphs (specified as a family + a
* point size (relative to the default).
*/
struct font_memo
{
struct font_memo * next;
struct font_names * names;
double scale; /* ratio of def pt. size to this */
int id_memo; /* This is used by oleofile. */
};
extern struct font_memo *font_list;
extern void define_font (char * oleo_name, char * x_name, char * ps_name);
extern struct font_memo * intern_font (char * oleo_name, double scale);
extern struct font_memo * default_font (void);
extern struct font_memo * matching_font (char * x_name, char * ps_name, double scale);
extern struct font_memo * parsed_matching_font (char * fullname);
extern void set_region_font (struct rng *rng, char * oleo_name, double scale);
extern void flush_fonts (void);
extern void set_x_default_font (char * str);
extern void set_ps_font_cmd (char * ps_name);
extern void set_default_font (char * name, double scale);
extern void init_fonts (void);
#endif
syntax highlighted by Code2HTML, v. 0.9.1