1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-25 07:28:20 +00:00

(struct w32_metric_cache): New struct.

(w32font_info): Use it.
(W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
(CACHE_BLOCKSIZE): New constants.
This commit is contained in:
Jason Rumney 2008-04-08 14:29:39 +00:00
parent 3d3d1efc2e
commit 56a70cca39
2 changed files with 19 additions and 1 deletions

View File

@ -1,5 +1,10 @@
2008-04-08 Jason Rumney <jasonr@gnu.org>
* w32font.h (struct w32_metric_cache): New struct.
(w32font_info): Use it.
(W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
(CACHE_BLOCKSIZE): New constants.
* w32font.c (Qja, Qko, Qzh): New symbols.
(syms_of_w32font): Initialise them.
(font_matches_spec): Use them to filter by language.

View File

@ -36,6 +36,16 @@ Boston, MA 02110-1301, USA. */
#define NTMFLAGS_OPENTYPE (NTM_PS_OPENTYPE | NTM_TT_OPENTYPE)
struct w32_metric_cache
{
short lbearing, rbearing, width;
unsigned char status;
};
#define W32METRIC_NO_ATTEMPT 0
#define W32METRIC_SUCCESS 1
#define W32METRIC_FAIL 2
/* The actual structure for a w32 font, that can be cast to struct font.
The Uniscribe backend extends this. */
struct w32font_info
@ -43,9 +53,12 @@ struct w32font_info
struct font font;
TEXTMETRIC metrics;
unsigned int glyph_idx;
struct font_metrics ascii_metrics[128];
struct w32_metric_cache **cached_metrics;
int n_cache_blocks;
};
#define CACHE_BLOCKSIZE 128
Lisp_Object w32font_get_cache P_ ((FRAME_PTR fe));
Lisp_Object w32font_list_internal P_ ((Lisp_Object frame,
Lisp_Object font_spec,