diff options
| author | K. Handa | 2016-01-02 16:36:21 +0900 |
|---|---|---|
| committer | K. Handa | 2016-01-02 16:36:21 +0900 |
| commit | 536f48e9a2251b9e654ea974bd90ff2f40218753 (patch) | |
| tree | fa48333ec65910b24ffab90f2dda3d200fb56215 /src/font.h | |
| parent | d259328fb87db8cc67d52771efcfa653e52c5b71 (diff) | |
| download | emacs-536f48e9a2251b9e654ea974bd90ff2f40218753.tar.gz emacs-536f48e9a2251b9e654ea974bd90ff2f40218753.zip | |
support rendering of wider range of combinging characters by ftfont backend
* lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
supports rendering of combining characters, call
font-shape-gstring.
* src/font.c (Ffont_get): Handle `combining-capability' property.
(syms_of_font): New symbol ":combining-capability'.
* src/font.h (struct font_driver): New member combining_capability.
* src/ftfont.c: Include "category.h".
(ftfont_driver): Initialize combining_capability to
ftfont_combining_capability.
(ftfont_shape_by_flt): If OTF is null, try to find a suitable
FLT in advance.
(ftfont_combining_capability): New function.
Diffstat (limited to 'src/font.h')
| -rw-r--r-- | src/font.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/font.h b/src/font.h index 1d13e1cb6b0..f6f862ac7df 100644 --- a/src/font.h +++ b/src/font.h | |||
| @@ -715,6 +715,12 @@ struct font_driver | |||
| 715 | bool (*cached_font_ok) (struct frame *f, | 715 | bool (*cached_font_ok) (struct frame *f, |
| 716 | Lisp_Object font_object, | 716 | Lisp_Object font_object, |
| 717 | Lisp_Object entity); | 717 | Lisp_Object entity); |
| 718 | |||
| 719 | /* Optional | ||
| 720 | |||
| 721 | Return non-nil if the driver support rendering of combining | ||
| 722 | characters for FONT according to Unicode combining class. */ | ||
| 723 | Lisp_Object (*combining_capability) (struct font *font); | ||
| 718 | }; | 724 | }; |
| 719 | 725 | ||
| 720 | 726 | ||