forked from enlightenment/efl
143 lines
4.0 KiB
Plaintext
143 lines
4.0 KiB
Plaintext
// src/lib/efl/interfaces/efl_text_font.eo
|
|
|
|
enum Efl.Text.Font.Weight {
|
|
[[Type of font weight]]
|
|
normal, [[Normal font weight]]
|
|
thin, [[Thin font weight]]
|
|
ultralight, [[Ultralight font weight]]
|
|
extralight, [[Extralight font weight]]
|
|
light, [[Light font weight]]
|
|
book, [[Book font weight]]
|
|
medium, [[Medium font weight]]
|
|
semibold, [[Semibold font weight]]
|
|
bold, [[Bold font weight]]
|
|
ultrabold, [[Ultrabold font weight]]
|
|
extrabold, [[Extrabold font weight]]
|
|
black, [[Black font weight]]
|
|
extrablack, [[Extrablack font weight]]
|
|
}
|
|
|
|
enum Efl.Text.Font.Width {
|
|
[[Type of font width]]
|
|
normal, [[Normal font width]]
|
|
ultracondensed, [[Ultracondensed font width]]
|
|
extracondensed, [[Extracondensed font width]]
|
|
condensed, [[Condensed font width]]
|
|
semicondensed, [[Semicondensed font width]]
|
|
semiexpanded, [[Semiexpanded font width]]
|
|
expanded, [[Expanded font width]]
|
|
extraexpanded, [[Extraexpanded font width]]
|
|
ultraexpanded, [[Ultraexpanded font width]]
|
|
}
|
|
|
|
enum Efl.Text.Font.Slant {
|
|
[[Type of font slant]]
|
|
normal, [[Normal font slant]]
|
|
oblique, [[Oblique font slant]]
|
|
italic, [[Italic font slant]]
|
|
}
|
|
|
|
/* FIXME: It needs to support "normal" option for non-color bitmap font.
|
|
For supporting "normal" option, S/W glyph drawing engine should be updated.
|
|
*/
|
|
enum Efl.Text.Font.Bitmap_Scalable {
|
|
[[Scalable of bitmap fonts
|
|
|
|
@since 1.21
|
|
]]
|
|
none = 0, [[Disable scalable feature for bitmap fonts.]]
|
|
color = (1 << 0), [[Enable scalable feature for color bitmap fonts.]]
|
|
}
|
|
|
|
interface Efl.Text.Font {
|
|
[[Font settings of the text
|
|
|
|
@since 1.20
|
|
]]
|
|
eo_prefix: efl_text;
|
|
methods {
|
|
@property font {
|
|
[[The font name and size that is used for the displayed text]]
|
|
values {
|
|
font: string; [[Font name]]
|
|
size: int; [[Font size]]
|
|
}
|
|
}
|
|
@property font_source {
|
|
[[The source that will be used to lookup the font of the text
|
|
|
|
The source can be either a path to a font file e.g.
|
|
"/path/to/font.ttf", or an eet file e.g. "/path/to/font.eet".
|
|
]]
|
|
values {
|
|
font_source: string; [[Path to font source]]
|
|
}
|
|
}
|
|
|
|
@property font_fallbacks {
|
|
[[Comma-separated list of font fallbacks
|
|
|
|
Will be used in case the primary font isn't available.
|
|
]]
|
|
values {
|
|
font_fallbacks: string; [[Font name fallbacks]]
|
|
}
|
|
}
|
|
|
|
@property font_weight {
|
|
[[Type of weight of the displayed font
|
|
|
|
Default is $Efl.Text.Font.Weight.normal\.
|
|
]]
|
|
values {
|
|
font_weight: Efl.Text.Font.Weight; [[Font weight]]
|
|
}
|
|
}
|
|
|
|
@property font_slant {
|
|
[[Type of slant of the displayed font
|
|
|
|
Default is $Efl.Text.Font.Slant.normal\.
|
|
]]
|
|
values {
|
|
style: Efl.Text.Font.Slant; [[Font slant]]
|
|
}
|
|
}
|
|
|
|
@property font_width {
|
|
[[Type of width of the displayed font
|
|
|
|
Default is $Efl.Text.Font.Width.normal\.
|
|
]]
|
|
values {
|
|
width: Efl.Text.Font.Width; [[Font width]]
|
|
}
|
|
}
|
|
|
|
@property font_lang {
|
|
[[Specific language of the displayed font
|
|
|
|
This is used to lookup fonts suitable to the specified language, as
|
|
well as helping the font shaper backend.
|
|
The language $lang can be either a code e.g "en_US",
|
|
"auto" to use the system locale, or "none".
|
|
]]
|
|
values {
|
|
lang: string; [[Language]]
|
|
}
|
|
}
|
|
|
|
@property font_bitmap_scalable {
|
|
[[The bitmap fonts have fixed size glyphs for several available sizes.
|
|
Basically, it is not scalable. But, it needs to be scalable for some use cases.
|
|
(ex. colorful emoji fonts)
|
|
|
|
Default is $Efl.Text.Font.Bitmap_Scalable.none\.
|
|
]]
|
|
values {
|
|
scalable: Efl.Text.Font.Bitmap_Scalable; [[Scalable]]
|
|
}
|
|
}
|
|
}
|
|
}
|