Merge pull request #43691 from bruvzg/ctl_dropcap

[Complex Text Layouts] Add drop-cap support to RTL.
This commit is contained in:
Rémi Verschelde
2020-12-29 09:14:46 +01:00
committed by GitHub
6 changed files with 460 additions and 26 deletions

View File

@@ -164,6 +164,27 @@
Adds a [code][color][/code] tag to the tag stack.
</description>
</method>
<method name="push_dropcap">
<return type="void">
</return>
<argument index="0" name="string" type="String">
</argument>
<argument index="1" name="font" type="Font">
</argument>
<argument index="2" name="size" type="int">
</argument>
<argument index="3" name="dropcap_margins" type="Rect2" default="Rect2( 0, 0, 0, 0 )">
</argument>
<argument index="4" name="color" type="Color" default="Color( 1, 1, 1, 1 )">
</argument>
<argument index="5" name="outline_size" type="int" default="0">
</argument>
<argument index="6" name="outline_color" type="Color" default="Color( 0, 0, 0, 0 )">
</argument>
<description>
Adds a [code][dropcap][/code] tag to the tag stack. Drop cap (dropped capital) is a decorative element at the beginning of a paragraph that is larger than the rest of the text.
</description>
</method>
<method name="push_font">
<return type="void">
</return>
@@ -525,10 +546,12 @@
</constant>
<constant name="ITEM_RAINBOW" value="20" enum="ItemType">
</constant>
<constant name="ITEM_CUSTOMFX" value="22" enum="ItemType">
</constant>
<constant name="ITEM_META" value="21" enum="ItemType">
</constant>
<constant name="ITEM_DROPCAP" value="22" enum="ItemType">
</constant>
<constant name="ITEM_CUSTOMFX" value="23" enum="ItemType">
</constant>
</constants>
<theme_items>
<theme_item name="bold_font" type="Font">

View File

@@ -49,6 +49,13 @@
Clears text paragraph (removes text and inline objects).
</description>
</method>
<method name="clear_dropcap">
<return type="void">
</return>
<description>
Removes dropcap.
</description>
</method>
<method name="draw" qualifiers="const">
<return type="void">
</return>
@@ -58,8 +65,38 @@
</argument>
<argument index="2" name="color" type="Color" default="Color( 1, 1, 1, 1 )">
</argument>
<argument index="3" name="dc_color" type="Color" default="Color( 1, 1, 1, 1 )">
</argument>
<description>
Draw text into a canvas item at a given position, with [code]color[/code]. [code]pos[/code] specifies the top left corner of the bounding box.
Draw all lines of the text and drop cap into a canvas item at a given position, with [code]color[/code]. [code]pos[/code] specifies the top left corner of the bounding box.
</description>
</method>
<method name="draw_dropcap" qualifiers="const">
<return type="void">
</return>
<argument index="0" name="canvas" type="RID">
</argument>
<argument index="1" name="pos" type="Vector2">
</argument>
<argument index="2" name="color" type="Color" default="Color( 1, 1, 1, 1 )">
</argument>
<description>
Draw drop cap into a canvas item at a given position, with [code]color[/code]. [code]pos[/code] specifies the top left corner of the bounding box.
</description>
</method>
<method name="draw_dropcap_outline" qualifiers="const">
<return type="void">
</return>
<argument index="0" name="canvas" type="RID">
</argument>
<argument index="1" name="pos" type="Vector2">
</argument>
<argument index="2" name="outline_size" type="int" default="1">
</argument>
<argument index="3" name="color" type="Color" default="Color( 1, 1, 1, 1 )">
</argument>
<description>
Draw drop cap outline into a canvas item at a given position, with [code]color[/code]. [code]pos[/code] specifies the top left corner of the bounding box.
</description>
</method>
<method name="draw_line" qualifiers="const">
@@ -99,14 +136,37 @@
</return>
<argument index="0" name="canvas" type="RID">
</argument>
<argument index="1" name="outline_size" type="Vector2">
<argument index="1" name="pos" type="Vector2">
</argument>
<argument index="2" name="color" type="int" default="1">
<argument index="2" name="outline_size" type="int" default="1">
</argument>
<argument index="3" name="arg3" type="Color" default="Color( 1, 1, 1, 1 )">
<argument index="3" name="color" type="Color" default="Color( 1, 1, 1, 1 )">
</argument>
<argument index="4" name="dc_color" type="Color" default="Color( 1, 1, 1, 1 )">
</argument>
<description>
Draw outline of the text into a canvas item at a given position, with [code]color[/code]. [code]pos[/code] specifies the top left corner of the bounding box.
Draw outilines of all lines of the text and drop cap into a canvas item at a given position, with [code]color[/code]. [code]pos[/code] specifies the top left corner of the bounding box.
</description>
</method>
<method name="get_dropcap_lines" qualifiers="const">
<return type="int">
</return>
<description>
Returns number of lines used by dropcap.
</description>
</method>
<method name="get_dropcap_rid" qualifiers="const">
<return type="RID">
</return>
<description>
Return drop cap text buffer RID.
</description>
</method>
<method name="get_dropcap_size" qualifiers="const">
<return type="Vector2">
</return>
<description>
Returns drop cap bounding box size.
</description>
</method>
<method name="get_line_ascent" qualifiers="const">
@@ -261,6 +321,26 @@
Override ranges should cover full source text without overlaps. BiDi algorithm will be used on each range separately.
</description>
</method>
<method name="set_dropcap">
<return type="bool">
</return>
<argument index="0" name="text" type="String">
</argument>
<argument index="1" name="fonts" type="Font">
</argument>
<argument index="2" name="size" type="int">
</argument>
<argument index="3" name="dropcap_margins" type="Rect2" default="Rect2( 0, 0, 0, 0 )">
</argument>
<argument index="4" name="opentype_features" type="Dictionary" default="{
}">
</argument>
<argument index="5" name="language" type="String" default="&quot;&quot;">
</argument>
<description>
Sets drop cap, overrides previously set drop cap. Drop cap (dropped capital) is a decorative element at the beginning of a paragraph that is larger than the rest of the text.
</description>
</method>
<method name="tab_align">
<return type="void">
</return>