From 0265f4fd5565e01bba0c2228f4f981a644dcaee1 Mon Sep 17 00:00:00 2001 From: Xavi Artigas Date: Fri, 13 Dec 2019 11:47:47 +0100 Subject: [PATCH] docs: Add detailed text styling information Summary: More detailed descriptions for each attribute. Relationship between attributes. Default values. Links to direct API methods for the corresponding property. General text overhaul and formatting. Test Plan: Builds and passes tests. Generate docgen or DocFX documentation and enjoy your new Text styling descriptions! Reviewers: ali.alzyod Reviewed By: ali.alzyod Subscribers: AbdullehGhujeh, cedric, #reviewers, #committers, woohyun, bu5hm4n Tags: #efl Differential Revision: https://phab.enlightenment.org/D10873 --- src/lib/efl/interfaces/efl_text_font.eo | 88 ++-- src/lib/efl/interfaces/efl_text_format.eo | 78 ++-- src/lib/efl/interfaces/efl_text_style.eo | 209 +++++---- src/lib/evas/canvas/efl_canvas_textblock.eo | 494 +++++++++----------- 4 files changed, 413 insertions(+), 456 deletions(-) diff --git a/src/lib/efl/interfaces/efl_text_font.eo b/src/lib/efl/interfaces/efl_text_font.eo index 836835c2a6..dce81a7e10 100644 --- a/src/lib/efl/interfaces/efl_text_font.eo +++ b/src/lib/efl/interfaces/efl_text_font.eo @@ -1,53 +1,53 @@ import efl_gfx_types; enum @beta 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]] + [[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 @beta 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]] + [[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 @beta Efl.Text_Font_Slant { - [[Type of font slant]] - normal, [[Normal font slant]] - oblique, [[Oblique font slant]] - italic, [[Italic 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 @beta Efl.Text_Font_Bitmap_Scalable { - [[Scalable of bitmap fonts + [[Scalable of bitmap fonts. ]] none = 0, [[Disable scalable feature for bitmap fonts.]] color = (1 << 0), [[Enable scalable feature for color bitmap fonts.]] } interface @beta Efl.Text_Font { - [[Font settings of the text + [[Font settings for text. ]] c_prefix: efl_text; methods { @@ -105,42 +105,42 @@ interface @beta Efl.Text_Font { } @property font_fallbacks { - [[Comma-separated list of 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]] + font_fallbacks: string; [[List of fallback font names.]] } } @property font_weight { [[Type of weight of the displayed font - Default is @Efl.Text_Font_Weight.normal\. + Default is @Efl.Text_Font_Weight.normal. ]] values { - font_weight: Efl.Text_Font_Weight; [[Font weight]] + font_weight: Efl.Text_Font_Weight; [[Font weight.]] } } @property font_slant { - [[Type of slant of the displayed font + [[Type of slant of the displayed font. - Default is @Efl.Text_Font_Slant.normal\. + Default is @Efl.Text_Font_Slant.normal. ]] values { - style: Efl.Text_Font_Slant; [[Font slant]] + style: Efl.Text_Font_Slant; [[Font slant.]] } } @property font_width { - [[Type of width of the displayed font + [[Type of width of the displayed font. - Default is @Efl.Text_Font_Width.normal\. + Default is @Efl.Text_Font_Width.normal. ]] values { - width: Efl.Text_Font_Width; [[Font width]] + width: Efl.Text_Font_Width; [[Font width.]] } } @@ -153,19 +153,19 @@ interface @beta Efl.Text_Font { "auto" to use the system locale, or "none". ]] values { - lang: string; [[Language]] + lang: string; [[Language code.]] } } @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) + (e.g. colorful emoji fonts) - Default is @Efl.Text_Font_Bitmap_Scalable.none\. + Default is @Efl.Text_Font_Bitmap_Scalable.none. ]] values { - scalable: Efl.Text_Font_Bitmap_Scalable; [[Scalable]] + scalable: Efl.Text_Font_Bitmap_Scalable; [[Scalable.]] } } } diff --git a/src/lib/efl/interfaces/efl_text_format.eo b/src/lib/efl/interfaces/efl_text_format.eo index 7ecc8fead4..05d5226407 100644 --- a/src/lib/efl/interfaces/efl_text_format.eo +++ b/src/lib/efl/interfaces/efl_text_format.eo @@ -1,22 +1,23 @@ enum @beta Efl.Text_Format_Wrap { - [[Wrap mode of the text (not in effect if not multiline)]] - none, [[No wrapping]] - char, [[Wrap mode character]] - word, [[Wrap mode word]] - mixed, [[Wrap mode mixed]] - hyphenation [[Wrap mode hyphenation]] + [[Wrapping policy of the text.]] + none, [[No wrapping.]] + char, [[Wrap at character boundaries.]] + word, [[Wrap at word boundaries.]] + mixed, [[Wrap at word boundaries if possible, at any character if not.]] + hyphenation [[Hyphenate if possible, otherwise try word boundaries or + at any character.]] } enum @beta Efl.Text_Format_Horizontal_Alignment_Auto_Type { - [[Auto-horizontal alignment of the text]] - none, [[No auto-alignment rule]] - normal, [[Respects LTR/RTL (bidirectional) settings]] - locale, [[Respects locale's langauge settings]] - end [[Text is places at opposite side of LTR/RTL (bidirectional) settings]] + [[Auto-horizontal alignment of the text.]] + none, [[No auto-alignment rule.]] + normal, [[Respects LTR/RTL (bidirectional) settings.]] + locale, [[Respects locale's language settings.]] + end [[Text is placed at opposite side of LTR/RTL (bidirectional) settings.]] } interface @beta Efl.Text_Format { - [[The look and layout of the text + [[The look and layout of the text. The text format can affect the geometry of the text object, as well as how characters are presented. @@ -24,83 +25,96 @@ interface @beta Efl.Text_Format { c_prefix: efl_text; methods { @property ellipsis { - [[Ellipsis value (number from -1.0 to 1.0)]] + [[Controls automatic addition of ellipsis "..." to replace text which cannot be shown. + The value must be a number indicating the position of the ellipsis inside the visible text. + $[0.0] means the beginning of the text, $[1.0] means the end of the text, and values in between + mean the proportional position inside the text. + Any value smaller than 0 or greater than 1 disables ellipsis. + ]] values { - value: double; [[Ellipsis value]] + value: double; [[Ellipsis value.]] } } @property wrap { - [[Wrap mode for use in the text]] + [[Wrapping policy of the text. Requires @.multiline to be $true.]] values { - wrap: Efl.Text_Format_Wrap; [[Wrap mode]] + wrap: Efl.Text_Format_Wrap; [[Wrap mode.]] } } @property multiline { - [[Multiline is enabled or not]] + [[Enables text to span multiple lines. + + When $false, new-line characters are ignored and no text wrapping occurs. + ]] values { - enabled: bool; [[$true if multiline is enabled, $false otherwise]] + enabled: bool; [[$true if multiline is enabled.]] } } @property horizontal_align_auto_type { - [[Horizontal alignment of text]] + [[Horizontal alignment of text.]] values { - value: Efl.Text_Format_Horizontal_Alignment_Auto_Type; [[Alignment type]] + value: Efl.Text_Format_Horizontal_Alignment_Auto_Type; [[Alignment type.]] } } @property horizontal_align { - [[Horizontal alignment of text]] + [[Horizontal alignment of text. $[0.0] means "left" + and $[1.0] means "right".]] values { - value: double; [[Horizontal alignment value]] + value: double; [[Alignment value between $[0.0] and $[1.0].]] } } @property vertical_align { - [[Vertical alignment of text]] + [[Vertical alignment of text.$[0.0] means "top" + and $[1.0] means "bottom"]] values { - value: double; [[Vertical alignment value]] + value: double; [[Alignment value between $[0.0] and $[1.0].]] } } @property linegap { - [[Minimal line gap (top and bottom) for each line in the text + [[Minimal line gap (top and bottom) for each line in the text. $value is absolute size. ]] values { - value: double; [[Line gap value]] + value: double; [[Line gap value, in pixels.]] } } @property linerelgap { - [[Relative line gap (top and bottom) for each line in the text + [[Relative line gap (top and bottom) for each line in the text. The original line gap value is multiplied by $value. ]] values { - value: double; [[Relative line gap value]] + value: double; [[Relative line gap value. $[1.0] means original size.]] } } @property tabstops { - [[Tabstops value]] + [[Size of the tab character.]] values { - value: int; [[Tapstops value]] + value: int; [[Size in pixels.]] } } @property password { - [[Whether text is a password]] + [[Enabling this causes all characters to be replaced by @.replacement_char. + + This is useful for password input boxes. + ]] values { - enabled: bool; [[$true if the text is a password, $false otherwise]] + enabled: bool; [[$true if the text is a password.]] } } diff --git a/src/lib/efl/interfaces/efl_text_style.eo b/src/lib/efl/interfaces/efl_text_style.eo index c42433b317..9b66595558 100644 --- a/src/lib/efl/interfaces/efl_text_style.eo +++ b/src/lib/efl/interfaces/efl_text_style.eo @@ -1,248 +1,257 @@ enum @beta Efl.Text_Style_Backing_Type { - [[Whether to apply backing style to the displayed text or not]] - disabled = 0, [[Do not use backing]] - enabled, [[Use backing style]] + [[Whether to add a background colored rectangle (backing) to each line of text or not.]] + disabled = 0, [[Do not use backing.]] + enabled, [[Use backing.]] } enum @beta Efl.Text_Style_Strikethrough_Type { - [[Whether to apply strikethrough style to the displayed text or not]] - disabled = 0, [[Do not use strikethrough]] - enabled, [[Use strikethrough style]] + [[Whether to add a strike-through decoration to the displayed text or not.]] + disabled = 0, [[Do not use strike-through.]] + enabled, [[Use strike-through.]] } enum @beta Efl.Text_Style_Effect_Type { - [[Effect to apply to the displayed text]] - none = 0, [[No effect]] + [[Effect to apply to the displayed text.]] + none = 0, [[No effect.]] // colored with shadow_color - shadow, [[Shadow effect]] - far_shadow, [[Far shadow effect]] - soft_shadow, [[Soft shadow effect]] - far_soft_shadow, [[Far and soft shadow effect]] + shadow, [[Shadow effect.]] + far_shadow, [[Far shadow effect.]] + soft_shadow, [[Soft shadow effect.]] + far_soft_shadow, [[Far and soft shadow effect.]] // colored with glow_color - glow, [[Glow effect]] + glow, [[Glow effect.]] // colored with outline_color - outline, [[Outline effect]] - soft_outline, [[Soft outline effect]] + outline, [[Outline effect.]] + soft_outline, [[Soft outline effect.]] // colored with outline_color + shadow_color - outline_shadow, [[Outline shadow effect]] - outline_soft_shadow, [[Outline soft shadow effect]] + outline_shadow, [[Outline + shadow effect.]] + outline_soft_shadow, [[Outline + soft shadow effect.]] } enum @beta Efl.Text_Style_Shadow_Direction { - [[Direction of the shadow style, if used]] - bottom_right = 0, [[Shadow towards bottom right]] - bottom, [[Shadow towards botom]] - bottom_left, [[Shadow towards bottom left]] - left, [[Shadow towards left]] - top_left, [[Shadow towards top left]] - top, [[Shadow towards top]] - top_right, [[Shadow towards top right]] - right, [[Shadow towards right]] + [[Direction of the shadow.]] + bottom_right = 0, [[Shadow towards bottom right.]] + bottom, [[Shadow towards bottom.]] + bottom_left, [[Shadow towards bottom left.]] + left, [[Shadow towards left.]] + top_left, [[Shadow towards top left.]] + top, [[Shadow towards top.]] + top_right, [[Shadow towards top right.]] + right, [[Shadow towards right.]] } enum @beta Efl.Text_Style_Underline_Type { - [[Underline type of the displayed text]] - off = 0, [[Text without underline]] - on, [[Underline enabled]] - single, [[Underlined with a signle line]] - double, [[Underlined with a double line]] - dashed, [[Underlined with a dashed line]] + [[Type of underline of the displayed text.]] + off = 0, [[Text without underline.]] + on, [[Underline enabled.]] + single, [[Underlined with a single line.]] + double, [[Underlined with a double line.]] + dashed, [[Underlined with a dashed line.]] } interface @beta Efl.Text_Style { - [[Style to apply to the text + [[Decorations to add to the text. - A style can be coloring, effects, underline, strikethrough etc. + Decorations can be coloring, effects, underlines, strike-through etc. ]] c_prefix: efl_text; methods { @property normal_color { - [[Color of text, excluding style]] + [[Color of text, excluding decorations like, shadow, outline or glow.]] values { - r: ubyte; [[Red component]] - g: ubyte; [[Green component]] - b: ubyte; [[Blue component]] - a: ubyte; [[Alpha component]] + r: ubyte; [[Red component.]] + g: ubyte; [[Green component.]] + b: ubyte; [[Blue component.]] + a: ubyte; [[Alpha component.]] } } @property backing_type { - [[Enable or disable backing type]] + [[Enables rendering of a background rectangle behind each line of text.]] values { - type: Efl.Text_Style_Backing_Type; [[Backing type]] + type: Efl.Text_Style_Backing_Type; [[Backing type.]] } } @property backing_color { - [[Backing color]] + [[Color of the background rectangle (backing) behind each line of text.]] values { - r: ubyte; [[Red component]] - g: ubyte; [[Green component]] - b: ubyte; [[Blue component]] - a: ubyte; [[Alpha component]] + r: ubyte; [[Red component.]] + g: ubyte; [[Green component.]] + b: ubyte; [[Blue component.]] + a: ubyte; [[Alpha component.]] } } @property underline_type { - [[Sets an underline style on the text]] + [[Underline style for the text.]] values { - type: Efl.Text_Style_Underline_Type; [[Underline type]] + type: Efl.Text_Style_Underline_Type; [[Underline type.]] } } @property underline_color { - [[Color of normal underline style]] + [[Color of normal underline style.]] values { - r: ubyte; [[Red component]] - g: ubyte; [[Green component]] - b: ubyte; [[Blue component]] - a: ubyte; [[Alpha component]] + r: ubyte; [[Red component.]] + g: ubyte; [[Green component.]] + b: ubyte; [[Blue component.]] + a: ubyte; [[Alpha component.]] } } @property underline_height { - [[Height of underline style]] + [[Width (in pixels) of the single underline when @.underline_type is + @Efl.Text_Style_Underline_Type.single.]] values { - height: double; [[Height]] + height: double; [[Underline width in pixels.]] } } @property underline_dashed_color { - [[Color of dashed underline style]] + [[Color of the dashed underline. Only valid when @.underline_type is + @Efl.Text_Style_Underline_Type.dashed.]] values { - r: ubyte; [[Red component]] - g: ubyte; [[Green component]] - b: ubyte; [[Blue component]] - a: ubyte; [[Alpha component]] + r: ubyte; [[Red component.]] + g: ubyte; [[Green component.]] + b: ubyte; [[Blue component.]] + a: ubyte; [[Alpha component.]] } } @property underline_dashed_width { - [[Width of dashed underline style]] + [[Length (in pixels) of the dashes when @.underline_type is + @Efl.Text_Style_Underline_Type.dashed.]] values { - width: int; [[Width]] + width: int; [[Dash length in pixels.]] } } @property underline_dashed_gap { - [[Gap of dashed underline style]] + [[Length (in pixels) of the gaps between the dashes when @.underline_type is + @Efl.Text_Style_Underline_Type.dashed.]] values { - gap: int; [[Gap]] + gap: int; [[Gap length in pixels.]] } } @property underline2_color { - [[Color of underline2 style]] + [[Color of the secondary underline. Only valid when @.underline_type is + @Efl.Text_Style_Underline_Type.double.]] values { - r: ubyte; [[Red component]] - g: ubyte; [[Green component]] - b: ubyte; [[Blue component]] - a: ubyte; [[Alpha component]] + r: ubyte; [[Red component.]] + g: ubyte; [[Green component.]] + b: ubyte; [[Blue component.]] + a: ubyte; [[Alpha component.]] } } @property strikethrough_type { - [[Type of strikethrough style]] + [[Enables crossed-out text.]] values { - type: Efl.Text_Style_Strikethrough_Type; [[Strikethrough type]] + type: Efl.Text_Style_Strikethrough_Type; [[Strike-through type.]] } } @property strikethrough_color { - [[Color of strikethrough_style]] + [[Color of the line striking through the text.]] values { - r: ubyte; [[Red component]] - g: ubyte; [[Green component]] - b: ubyte; [[Blue component]] - a: ubyte; [[Alpha component]] + r: ubyte; [[Red component.]] + g: ubyte; [[Green component.]] + b: ubyte; [[Blue component.]] + a: ubyte; [[Alpha component.]] } } @property effect_type { - [[Type of effect used for the displayed text]] + [[Controls a number of decorations around the text, like shadow, outline + and glow, including combinations of them.]] values { - type: Efl.Text_Style_Effect_Type; [[Effect type]] + type: Efl.Text_Style_Effect_Type; [[Effect type.]] } } @property outline_color { - [[Color of outline effect]] + [[Color of the text outline.]] values { - r: ubyte; [[Red component]] - g: ubyte; [[Green component]] - b: ubyte; [[Blue component]] - a: ubyte; [[Alpha component]] + r: ubyte; [[Red component.]] + g: ubyte; [[Green component.]] + b: ubyte; [[Blue component.]] + a: ubyte; [[Alpha component.]] } } @property shadow_direction { - [[Direction of shadow effect]] + [[Direction of shadow effect.]] values { - type: Efl.Text_Style_Shadow_Direction; [[Shadow direction]] + type: Efl.Text_Style_Shadow_Direction; [[Shadow direction.]] } } @property shadow_color { - [[Color of shadow effect]] + [[Color of the shadow.]] values { - r: ubyte; [[Red component]] - g: ubyte; [[Green component]] - b: ubyte; [[Blue component]] - a: ubyte; [[Alpha component]] + r: ubyte; [[Red component.]] + g: ubyte; [[Green component.]] + b: ubyte; [[Blue component.]] + a: ubyte; [[Alpha component.]] } } @property glow_color { - [[Color of glow effect]] + [[Color of the glow decoration.]] values { - r: ubyte; [[Red component]] - g: ubyte; [[Green component]] - b: ubyte; [[Blue component]] - a: ubyte; [[Alpha component]] + r: ubyte; [[Red component.]] + g: ubyte; [[Green component.]] + b: ubyte; [[Blue component.]] + a: ubyte; [[Alpha component.]] } } @property glow2_color { - [[Second color of the glow effect]] + [[Color of the secondary glow decoration. + This is the color of the inner glow (where it touches the text) which + gradually fades into @.glow_color as it reaches the edge. + ]] values { - r: ubyte; [[Red component]] - g: ubyte; [[Green component]] - b: ubyte; [[Blue component]] - a: ubyte; [[Alpha component]] + r: ubyte; [[Red component.]] + g: ubyte; [[Green component.]] + b: ubyte; [[Blue component.]] + a: ubyte; [[Alpha component.]] } } diff --git a/src/lib/evas/canvas/efl_canvas_textblock.eo b/src/lib/evas/canvas/efl_canvas_textblock.eo index 7c6cf8e0e6..3b686918ee 100644 --- a/src/lib/evas/canvas/efl_canvas_textblock.eo +++ b/src/lib/evas/canvas/efl_canvas_textblock.eo @@ -6,7 +6,13 @@ class @beta Efl.Canvas.Textblock extends Efl.Canvas.Object implements Efl.Text, Efl.Text_Markup, Efl.Ui.I18n { [[This is the Canvas-level text class. This class only takes care of rendering text, - if you need user interaction consider the classes in $Efl.Ui.]] + if you need user interaction consider the classes in $[Efl.Ui]. + + Note: No text will be rendered until a font, a font size and a font color are specified. + This can be accomplished using @Efl.Text_Font.font_family, @Efl.Text_Font.font_size and + @Efl.Text_Style.normal_color. + Alternatively, @.style_apply can be used providing the attributes $font, $font_size and $color. + ]] methods { @property is_empty { [[Whether the object is empty (no text) or not. @@ -80,337 +86,265 @@ class @beta Efl.Canvas.Textblock extends Efl.Canvas.Object implements Efl.Text, } } style_apply { - [[Applies a style to the text object. Applied style attributes override old ones, leaving other attributes - unaffected. - This is similar to setting individual style attributes using properties like @Efl.Text_Font.font_slant or - @Efl.Text_Format.wrap. + [[Applies several style attributes at once using a formatting string. + Given style attributes override previous values, leaving other attributes unaffected. + This is akin to setting individual style attributes using properties like + @Efl.Text_Font.font_slant or @Efl.Text_Format.wrap, for example. - The style can be set as "attribute"="Value". - Multible attribute can be set at once separated by space. + The formatting string is a whitespace-separated list of $[attribute=value] pairs. - The following styling attributes are accepted: + The following attributes are accepted: - - Font - - Font fallback - - Font size - - Font source - - Font weight - - Font style - - Font width - - Language - - Color - - Underline Color - - Second Underline Color - - Underline Dash Color - - Outline Color - - Shadow Color - - First Glow Color - - Second Glow Color - - Backing Color - - Strikethrough Color - - Horizontal Align - - Vertical Align - - Wrap - - Left margin - - Right margin - - Underline - - Strikethrough - - Backing - - Style - - Tabstops - - Line size - - Relative line size - - Line gap - - Relative line gap - - Item - - Line fill - - Ellipsis - - Password - - Underline dash width - - Underline dash gap - - Underline height + - $font: Name of the font to use. + Default value is empty, meaning that no text will be rendered. + Requires $font_size and $font_color. + See @Efl.Text_Font.font_family. - Font - This sets the name of the font to be used. - font= + - $font_fallbacks: Comma-delimited list of fonts to try if finding the primary font fails. + Example: $[font_fallbacks=consolas,courier,monospace]. + Default value is empty. + See @Efl.Text_Font.font_fallbacks. - Font fallback - A comma delimited list of fonts to try if finding the primary font fails. - font_fallbacks= + - $font_size: Height of font, in points. + Default value is 0. + Requires $font and $font_color. + See @Efl.Text_Font.font_size. - Font size - This sets the the size of font in points to be used. - font_size= + - $font_source: Path to the file containing the font to use. + Example: $[font_source=/usr/share/fonts/Sans.ttf]. + Default value is empty. + See @Efl.Text_Font.font_source. - Font source - Specify source from which to search for the font. - font_source= + - $font_weight: Thickness of the font. The value must be one of: $normal, $thin, $ultralight, $extralight, + $light, $book, $medium, $semibold, $bold, $ultrabold, $extrabold, $black and $extrablack. + Default value is $normal. + See @Efl.Text_Font.font_weight. - Font weight - Sets the weight of the font. The value must be one of: - "normal" - "thin" - "ultralight" - "extralight" - "light" - "book" - "medium" - "semibold" - "bold" - "ultrabold" - "extrabold" - "black" - "extrablack" - font_weight= + - $font_style: Style of the font. The value must be one of: $normal, $oblique and $italic. + Default value is $normal. + See @Efl.Text_Font.font_slant. - Font style - Sets the style of the font. The value must be one of: - "normal" - "oblique" - "italic" - font_style=