[gimp] MR !19: Add support for vertical text writing.
- From: Jehan <jehanp src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp] MR !19: Add support for vertical text writing.
- Date: Mon, 30 Jul 2018 17:17:18 +0000 (UTC)
commit 587d9bbb03b19558b7900f61c852a470f85761aa
Author: ONO Yoshio <ohtsuka yoshio gmail com>
Date: Sun Jul 29 13:57:38 2018 +0900
MR !19: Add support for vertical text writing.
Squashed commit of the following:
commit ee1ff7d502658cfa1248a13a3f0348495db07eda
Author: ONO Yoshio <ohtsuka yoshio gmail com>
Date: Sun Jul 29 00:31:47 2018 +0900
Fixed that gimp-text-dir-ttb-* icons are lacked in Symbolic.
commit d87d012d697628da28fe90199cc04b95b72ba8ef
Author: ONO Yoshio <ohtsuka yoshio gmail com>
Date: Sat Jul 28 16:23:10 2018 +0900
Fix a typo.
commit cf0238bf7df56c384cdf3b7ec69557d14740f853
Author: ONO Yoshio <ohtsuka yoshio gmail com>
Date: Sat Jul 28 15:50:57 2018 +0900
Fixed seg fault error.
commit b07f60d06fa1a753fda5b4d46af01698c344154e
Author: ONO Yoshio <ohtsuka yoshio gmail com>
Date: Fri Jul 27 17:15:34 2018 +0900
Add support for vertical text writing.
https://gitlab.gnome.org/GNOME/gimp/issues/641
app/actions/text-editor-actions.c | 42 ++-
app/actions/text-tool-actions.c | 20 ++
app/display/gimpcanvastextcursor.c | 122 +++++++--
app/display/gimpcanvastextcursor.h | 3 +-
app/text/gimptextlayer.c | 16 ++
app/text/gimptextlayout-render.c | 17 ++
app/text/gimptextlayout.c | 71 ++++-
app/tools/gimpdrawtool.c | 9 +-
app/tools/gimpdrawtool.h | 3 +-
app/tools/gimptexttool-editor.c | 202 +++++++++++++-
app/tools/gimptexttool.c | 82 ++++--
app/tools/gimptexttool.h | 3 +
app/widgets/gimptexteditor.c | 8 +
icons/Color/24/gimp-text-dir-ttb-ltr-upright.png | Bin 0 -> 769 bytes
icons/Color/24/gimp-text-dir-ttb-ltr.png | Bin 0 -> 780 bytes
icons/Color/24/gimp-text-dir-ttb-rtl-upright.png | Bin 0 -> 728 bytes
icons/Color/24/gimp-text-dir-ttb-rtl.png | Bin 0 -> 780 bytes
.../scalable/gimp-text-dir-ttb-ltr-upright.svg | 290 +++++++++++++++++++++
icons/Color/scalable/gimp-text-dir-ttb-ltr.svg | 290 +++++++++++++++++++++
.../scalable/gimp-text-dir-ttb-rtl-upright.svg | 190 ++++++++++++++
icons/Color/scalable/gimp-text-dir-ttb-rtl.svg | 208 +++++++++++++++
icons/Legacy/24/gimp-text-dir-ttb-ltr-upright.png | Bin 0 -> 471 bytes
icons/Legacy/24/gimp-text-dir-ttb-ltr-upright.xcf | Bin 0 -> 4555 bytes
icons/Legacy/24/gimp-text-dir-ttb-ltr.png | Bin 0 -> 445 bytes
icons/Legacy/24/gimp-text-dir-ttb-ltr.xcf | Bin 0 -> 4558 bytes
icons/Legacy/24/gimp-text-dir-ttb-rtl-upright.png | Bin 0 -> 353 bytes
icons/Legacy/24/gimp-text-dir-ttb-rtl-upright.xcf | Bin 0 -> 4570 bytes
icons/Legacy/24/gimp-text-dir-ttb-rtl.png | Bin 0 -> 433 bytes
icons/Legacy/24/gimp-text-dir-ttb-rtl.xcf | Bin 0 -> 3392 bytes
icons/Legacy/Makefile.am | 4 +
.../Symbolic/24/gimp-text-dir-ttb-ltr-upright.png | Bin 0 -> 1132 bytes
icons/Symbolic/24/gimp-text-dir-ttb-ltr.png | Bin 0 -> 1209 bytes
.../Symbolic/24/gimp-text-dir-ttb-rtl-upright.png | Bin 0 -> 1160 bytes
icons/Symbolic/24/gimp-text-dir-ttb-rtl.png | Bin 0 -> 1233 bytes
.../scalable/gimp-text-dir-ttb-ltr-symbolic.svg | 174 +++++++++++++
.../gimp-text-dir-ttb-ltr-upright-symbolic.svg | 174 +++++++++++++
.../scalable/gimp-text-dir-ttb-rtl-symbolic.svg | 173 ++++++++++++
.../gimp-text-dir-ttb-rtl-upright-symbolic.svg | 173 ++++++++++++
icons/icon-list.mk | 12 +
libgimpbase/gimpbaseenums.c | 8 +
libgimpbase/gimpbaseenums.h | 12 +-
libgimpwidgets/gimpicons.h | 4 +
menus/text-editor-toolbar.xml | 4 +
menus/text-tool-menu.xml | 4 +
pdb/enums.pl | 12 +-
45 files changed, 2261 insertions(+), 69 deletions(-)
---
diff --git a/app/actions/text-editor-actions.c b/app/actions/text-editor-actions.c
index 270bbc2d80..52bf963aa6 100644
--- a/app/actions/text-editor-actions.c
+++ b/app/actions/text-editor-actions.c
@@ -65,7 +65,31 @@ static const GimpRadioActionEntry text_editor_direction_actions[] =
NC_("text-editor-action", "RTL"), NULL,
NC_("text-editor-action", "From right to left"),
GIMP_TEXT_DIRECTION_RTL,
- NULL }
+ NULL },
+
+ { "text-editor-direction-ttb-rtl", GIMP_ICON_FORMAT_TEXT_DIRECTION_TTB_RTL,
+ NC_("text-editor-action", "TTB-RTL"), NULL,
+ NC_("text-editor-action", "Characters are from top to bottom, Lines are from right to left"),
+ GIMP_TEXT_DIRECTION_TTB_RTL,
+ NULL },
+
+ { "text-editor-direction-ttb-rtl-upright", GIMP_ICON_FORMAT_TEXT_DIRECTION_TTB_RTL_UPRIGHT,
+ NC_("text-editor-action", "TTB-RTL-UPRIGHT"), NULL,
+ NC_("text-editor-action", "Upright characters are from top to bottom, Lines are from right to left"),
+ GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT,
+ NULL },
+
+ { "text-editor-direction-ttb-ltr", GIMP_ICON_FORMAT_TEXT_DIRECTION_TTB_LTR,
+ NC_("text-editor-action", "TTB-LTR"), NULL,
+ NC_("text-editor-action", "Characters are from top to bottom, Lines are from left to right"),
+ GIMP_TEXT_DIRECTION_TTB_LTR,
+ NULL },
+
+ { "text-editor-direction-ttb-ltr-upright", GIMP_ICON_FORMAT_TEXT_DIRECTION_TTB_LTR_UPRIGHT,
+ NC_("text-editor-action", "TTB-LTR-UPRIGHT"), NULL,
+ NC_("text-editor-action", "Upright characters are from top to bottom, Lines are from left to right"),
+ GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT,
+ NULL },
};
@@ -102,6 +126,22 @@ text_editor_actions_update (GimpActionGroup *group,
case GIMP_TEXT_DIRECTION_RTL:
SET_ACTIVE ("text-editor-direction-rtl", TRUE);
break;
+
+ case GIMP_TEXT_DIRECTION_TTB_RTL:
+ SET_ACTIVE ("text-editor-direction-ttb-rtl", TRUE);
+ break;
+
+ case GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT:
+ SET_ACTIVE ("text-editor-direction-ttb-rtl-upright", TRUE);
+ break;
+
+ case GIMP_TEXT_DIRECTION_TTB_LTR:
+ SET_ACTIVE ("text-editor-direction-ttb-ltr", TRUE);
+ break;
+
+ case GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT:
+ SET_ACTIVE ("text-editor-direction-ttb-ltr-upright", TRUE);
+ break;
}
#undef SET_ACTIVE
diff --git a/app/actions/text-tool-actions.c b/app/actions/text-tool-actions.c
index 9abf263523..66f9746cfb 100644
--- a/app/actions/text-tool-actions.c
+++ b/app/actions/text-tool-actions.c
@@ -110,6 +110,26 @@ static const GimpRadioActionEntry text_tool_direction_actions[] =
{ "text-tool-direction-rtl", GIMP_ICON_FORMAT_TEXT_DIRECTION_RTL,
NC_("text-tool-action", "From right to left"), NULL, NULL,
GIMP_TEXT_DIRECTION_RTL,
+ NULL },
+
+ { "text-tool-direction-ttb-rtl", GIMP_ICON_FORMAT_TEXT_DIRECTION_TTB_RTL,
+ NC_("text-tool-action", "Characters are from top to bottom, Lines are from right to left"), NULL, NULL,
+ GIMP_TEXT_DIRECTION_TTB_RTL,
+ NULL },
+
+ { "text-tool-direction-ttb-rtl-upright", GIMP_ICON_FORMAT_TEXT_DIRECTION_TTB_RTL_UPRIGHT,
+ NC_("text-tool-action", "Upright characters are from top to bottom, Lines are from right to left"),
NULL, NULL,
+ GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT,
+ NULL },
+
+ { "text-tool-direction-ttb-ltr", GIMP_ICON_FORMAT_TEXT_DIRECTION_TTB_LTR,
+ NC_("text-tool-action", "Characters are from top to bottom, Lines are from left to right"), NULL, NULL,
+ GIMP_TEXT_DIRECTION_TTB_LTR,
+ NULL },
+
+ { "text-tool-direction-ttb-ltr-upright", GIMP_ICON_FORMAT_TEXT_DIRECTION_TTB_LTR_UPRIGHT,
+ NC_("text-tool-action", "Upright characters are from top to bottom, Lines are from left to right"),
NULL, NULL,
+ GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT,
NULL }
};
diff --git a/app/display/gimpcanvastextcursor.c b/app/display/gimpcanvastextcursor.c
index 09cac03e9f..0e2780d723 100644
--- a/app/display/gimpcanvastextcursor.c
+++ b/app/display/gimpcanvastextcursor.c
@@ -39,7 +39,8 @@ enum
PROP_Y,
PROP_WIDTH,
PROP_HEIGHT,
- PROP_OVERWRITE
+ PROP_OVERWRITE,
+ PROP_DIRECTION
};
@@ -47,11 +48,12 @@ typedef struct _GimpCanvasTextCursorPrivate GimpCanvasTextCursorPrivate;
struct _GimpCanvasTextCursorPrivate
{
- gint x;
- gint y;
- gint width;
- gint height;
- gboolean overwrite;
+ gint x;
+ gint y;
+ gint width;
+ gint height;
+ gboolean overwrite;
+ GimpTextDirection direction;
};
#define GET_PRIVATE(text_cursor) \
@@ -122,6 +124,12 @@ gimp_canvas_text_cursor_class_init (GimpCanvasTextCursorClass *klass)
FALSE,
GIMP_PARAM_READWRITE));
+ g_object_class_install_property (object_class, PROP_DIRECTION,
+ g_param_spec_enum ("direction", NULL, NULL,
+ gimp_text_direction_get_type(),
+ GIMP_TEXT_DIRECTION_LTR,
+ GIMP_PARAM_READWRITE));
+
g_type_class_add_private (klass, sizeof (GimpCanvasTextCursorPrivate));
}
@@ -155,6 +163,9 @@ gimp_canvas_text_cursor_set_property (GObject *object,
case PROP_OVERWRITE:
private->overwrite = g_value_get_boolean (value);
break;
+ case PROP_DIRECTION:
+ private->direction = g_value_get_enum (value);
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
@@ -187,6 +198,9 @@ gimp_canvas_text_cursor_get_property (GObject *object,
case PROP_OVERWRITE:
g_value_set_boolean (value, private->overwrite);
break;
+ case PROP_DIRECTION:
+ g_value_set_enum (value, private->direction);
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
@@ -221,6 +235,20 @@ gimp_canvas_text_cursor_transform (GimpCanvasItem *item,
*x = floor (*x) + 0.5;
*y = floor (*y) + 0.5;
+ switch (private->direction)
+ {
+ case GIMP_TEXT_DIRECTION_LTR:
+ case GIMP_TEXT_DIRECTION_RTL:
+ break;
+ case GIMP_TEXT_DIRECTION_TTB_RTL:
+ case GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT:
+ *x = *x - *w;
+ break;
+ case GIMP_TEXT_DIRECTION_TTB_LTR:
+ case GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT:
+ *y = *y + *h;
+ break;
+ }
if (private->overwrite)
{
@@ -229,8 +257,24 @@ gimp_canvas_text_cursor_transform (GimpCanvasItem *item,
}
else
{
- *w = 0;
- *h = ceil (*h) - 1.0;
+ switch (private->direction)
+ {
+ case GIMP_TEXT_DIRECTION_LTR:
+ case GIMP_TEXT_DIRECTION_RTL:
+ *w = 0;
+ *h = ceil (*h) - 1.0;
+ break;
+ case GIMP_TEXT_DIRECTION_TTB_RTL:
+ case GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT:
+ *w = ceil (*w) - 1.0;
+ *h = 0;
+ break;
+ case GIMP_TEXT_DIRECTION_TTB_LTR:
+ case GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT:
+ *w = ceil (*w) - 1.0;
+ *h = 0;
+ break;
+ }
}
}
@@ -250,14 +294,33 @@ gimp_canvas_text_cursor_draw (GimpCanvasItem *item,
}
else
{
- cairo_move_to (cr, x, y);
- cairo_line_to (cr, x, y + h);
-
- cairo_move_to (cr, x - 3.0, y);
- cairo_line_to (cr, x + 3.0, y);
-
- cairo_move_to (cr, x - 3.0, y + h);
- cairo_line_to (cr, x + 3.0, y + h);
+ switch (private->direction)
+ {
+ case GIMP_TEXT_DIRECTION_LTR:
+ case GIMP_TEXT_DIRECTION_RTL:
+ cairo_move_to (cr, x, y);
+ cairo_line_to (cr, x, y + h);
+
+ cairo_move_to (cr, x - 3.0, y);
+ cairo_line_to (cr, x + 3.0, y);
+
+ cairo_move_to (cr, x - 3.0, y + h);
+ cairo_line_to (cr, x + 3.0, y + h);
+ break;
+ case GIMP_TEXT_DIRECTION_TTB_RTL:
+ case GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT:
+ case GIMP_TEXT_DIRECTION_TTB_LTR:
+ case GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT:
+ cairo_move_to (cr, x, y);
+ cairo_line_to (cr, x + w, y);
+
+ cairo_move_to (cr, x, y - 3.0);
+ cairo_line_to (cr, x, y + 3.0);
+
+ cairo_move_to (cr, x + w, y - 3.0);
+ cairo_line_to (cr, x + w, y + 3.0);
+ break;
+ }
}
_gimp_canvas_item_stroke (item, cr);
@@ -282,10 +345,25 @@ gimp_canvas_text_cursor_get_extents (GimpCanvasItem *item)
}
else
{
- rectangle.x = floor (x - 4.5);
- rectangle.y = floor (y - 1.5);
- rectangle.width = ceil (9.0);
- rectangle.height = ceil (h + 3.0);
+ switch (private->direction)
+ {
+ case GIMP_TEXT_DIRECTION_LTR:
+ case GIMP_TEXT_DIRECTION_RTL:
+ rectangle.x = floor (x - 4.5);
+ rectangle.y = floor (y - 1.5);
+ rectangle.width = ceil (9.0);
+ rectangle.height = ceil (h + 3.0);
+ break;
+ case GIMP_TEXT_DIRECTION_TTB_RTL:
+ case GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT:
+ case GIMP_TEXT_DIRECTION_TTB_LTR:
+ case GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT:
+ rectangle.x = floor (x - 1.5);
+ rectangle.y = floor (y - 4.5);
+ rectangle.width = ceil (w + 3.0);
+ rectangle.height = ceil (9.0);
+ break;
+ }
}
return cairo_region_create_rectangle (&rectangle);
@@ -294,7 +372,8 @@ gimp_canvas_text_cursor_get_extents (GimpCanvasItem *item)
GimpCanvasItem *
gimp_canvas_text_cursor_new (GimpDisplayShell *shell,
PangoRectangle *cursor,
- gboolean overwrite)
+ gboolean overwrite,
+ GimpTextDirection direction)
{
g_return_val_if_fail (GIMP_IS_DISPLAY_SHELL (shell), NULL);
g_return_val_if_fail (cursor != NULL, NULL);
@@ -306,5 +385,6 @@ gimp_canvas_text_cursor_new (GimpDisplayShell *shell,
"width", cursor->width,
"height", cursor->height,
"overwrite", overwrite,
+ "direction", direction,
NULL);
}
diff --git a/app/display/gimpcanvastextcursor.h b/app/display/gimpcanvastextcursor.h
index 6d930dcacf..210b2a25fb 100644
--- a/app/display/gimpcanvastextcursor.h
+++ b/app/display/gimpcanvastextcursor.h
@@ -51,7 +51,8 @@ GType gimp_canvas_text_cursor_get_type (void) G_GNUC_CONST;
GimpCanvasItem * gimp_canvas_text_cursor_new (GimpDisplayShell *shell,
PangoRectangle *cursor,
- gboolean overwrite);
+ gboolean overwrite,
+ GimpTextDirection direction);
#endif /* __GIMP_CANVAS_RECTANGLE_H__ */
diff --git a/app/text/gimptextlayer.c b/app/text/gimptextlayer.c
index bfd5c8c544..525afb8dea 100644
--- a/app/text/gimptextlayer.c
+++ b/app/text/gimptextlayer.c
@@ -663,10 +663,26 @@ gimp_text_layer_render (GimpTextLayer *layer)
gimp_drawable_get_format (drawable)))
{
GeglBuffer *new_buffer;
+ GimpItem *item;
+ gint oldwidth;
+ gint newwidth;
+
+ item = GIMP_ITEM (drawable);
+ oldwidth = gimp_item_get_width (item);
new_buffer = gegl_buffer_new (GEGL_RECTANGLE (0, 0, width, height),
gimp_text_layer_get_format (layer));
gimp_drawable_set_buffer (drawable, FALSE, NULL, new_buffer);
+
+ newwidth = gimp_item_get_width(item);
+ if (layer->text->box_mode == GIMP_TEXT_BOX_DYNAMIC &&
+ oldwidth != newwidth &&
+ (layer->text->base_dir == GIMP_TEXT_DIRECTION_TTB_RTL ||
+ layer->text->base_dir == GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT))
+ {
+ gimp_item_translate (item, oldwidth - newwidth, 0, FALSE);
+ }
+
g_object_unref (new_buffer);
if (gimp_layer_get_mask (GIMP_LAYER (layer)))
diff --git a/app/text/gimptextlayout-render.c b/app/text/gimptextlayout-render.c
index 7e401bd837..f3605e3361 100644
--- a/app/text/gimptextlayout-render.c
+++ b/app/text/gimptextlayout-render.c
@@ -37,6 +37,7 @@ gimp_text_layout_render (GimpTextLayout *layout,
PangoLayout *pango_layout;
cairo_matrix_t trafo;
gint x, y;
+ gint width, height;
g_return_if_fail (GIMP_IS_TEXT_LAYOUT (layout));
g_return_if_fail (cr != NULL);
@@ -49,6 +50,22 @@ gimp_text_layout_render (GimpTextLayout *layout,
gimp_text_layout_get_transform (layout, &trafo);
cairo_transform (cr, &trafo);
+ if (base_dir == GIMP_TEXT_DIRECTION_TTB_RTL ||
+ base_dir == GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT)
+ {
+ gimp_text_layout_get_size (layout, &width, &height);
+ cairo_translate (cr, width, 0);
+ cairo_rotate (cr, G_PI_2);
+ }
+
+ if (base_dir == GIMP_TEXT_DIRECTION_TTB_LTR ||
+ base_dir == GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT)
+ {
+ gimp_text_layout_get_size (layout, &width, &height);
+ cairo_translate (cr, 0, height);
+ cairo_rotate (cr, -G_PI_2);
+ }
+
pango_layout = gimp_text_layout_get_pango_layout (layout);
if (path)
diff --git a/app/text/gimptextlayout.c b/app/text/gimptextlayout.c
index 069cac9b46..47beed7705 100644
--- a/app/text/gimptextlayout.c
+++ b/app/text/gimptextlayout.c
@@ -136,8 +136,6 @@ gimp_text_layout_new (GimpText *text,
pango_layout_set_wrap (layout->layout, PANGO_WRAP_WORD_CHAR);
- g_object_unref (context);
-
pango_layout_set_font_description (layout->layout, font_desc);
pango_font_description_free (font_desc);
@@ -167,12 +165,18 @@ gimp_text_layout_new (GimpText *text,
case GIMP_TEXT_BOX_DYNAMIC:
break;
case GIMP_TEXT_BOX_FIXED:
- pango_layout_set_width (layout->layout,
- pango_units_from_double
- (gimp_units_to_pixels (text->box_width,
- text->box_unit,
- xres) -
- 2 * layout->text->border));
+ if (! PANGO_GRAVITY_IS_VERTICAL (pango_context_get_base_gravity (context)))
+ pango_layout_set_width (layout->layout,
+ pango_units_from_double
+ (gimp_units_to_pixels (text->box_width,
+ text->box_unit,
+ xres)));
+ else
+ pango_layout_set_width (layout->layout,
+ pango_units_from_double
+ (gimp_units_to_pixels (text->box_height,
+ text->box_unit,
+ yres)));
break;
}
@@ -210,6 +214,8 @@ gimp_text_layout_new (GimpText *text,
break;
}
+ g_object_unref (context);
+
return layout;
}
@@ -591,6 +597,7 @@ gimp_text_layout_position (GimpTextLayout *layout)
{
PangoRectangle ink;
PangoRectangle logical;
+ PangoContext *context;
gint x1, y1;
gint x2, y2;
@@ -603,6 +610,7 @@ gimp_text_layout_position (GimpTextLayout *layout)
ink.width = ceil ((gdouble) ink.width * layout->xres / layout->yres);
logical.width = ceil ((gdouble) logical.width * layout->xres / layout->yres);
+ context = pango_layout_get_context (layout->layout);
#ifdef VERBOSE
g_printerr ("ink rect: %d x %d @ %d, %d\n",
@@ -641,7 +649,11 @@ gimp_text_layout_position (GimpTextLayout *layout)
pango_layout_get_pixel_size (layout->layout, &width, NULL);
if ((base_dir == GIMP_TEXT_DIRECTION_LTR && align == PANGO_ALIGN_RIGHT) ||
- (base_dir == GIMP_TEXT_DIRECTION_RTL && align == PANGO_ALIGN_LEFT))
+ (base_dir == GIMP_TEXT_DIRECTION_RTL && align == PANGO_ALIGN_LEFT) ||
+ (base_dir == GIMP_TEXT_DIRECTION_TTB_RTL && align == PANGO_ALIGN_RIGHT) ||
+ (base_dir == GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT && align == PANGO_ALIGN_RIGHT) ||
+ (base_dir == GIMP_TEXT_DIRECTION_TTB_LTR && align == PANGO_ALIGN_LEFT) ||
+ (base_dir == GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT && align == PANGO_ALIGN_LEFT))
{
layout->extents.x +=
PANGO_PIXELS (pango_layout_get_width (layout->layout)) - width;
@@ -663,6 +675,19 @@ gimp_text_layout_position (GimpTextLayout *layout)
layout->extents.height += 2 * border;
}
+ if (PANGO_GRAVITY_IS_VERTICAL (pango_context_get_base_gravity (context)))
+ {
+ gint temp;
+
+ temp = layout->extents.y;
+ layout->extents.y = layout->extents.x;
+ layout->extents.x = temp;
+
+ temp = layout->extents.height;
+ layout->extents.height = layout->extents.width;
+ layout->extents.width = temp;
+ }
+
#ifdef VERBOSE
g_printerr ("layout extents: %d x %d @ %d, %d\n",
layout->extents.width, layout->extents.height,
@@ -732,10 +757,38 @@ gimp_text_get_pango_context (GimpText *text,
{
case GIMP_TEXT_DIRECTION_LTR:
pango_context_set_base_dir (context, PANGO_DIRECTION_LTR);
+ pango_context_set_gravity_hint (context, PANGO_GRAVITY_HINT_NATURAL);
+ pango_context_set_base_gravity (context, PANGO_GRAVITY_SOUTH);
break;
case GIMP_TEXT_DIRECTION_RTL:
pango_context_set_base_dir (context, PANGO_DIRECTION_RTL);
+ pango_context_set_gravity_hint (context, PANGO_GRAVITY_HINT_NATURAL);
+ pango_context_set_base_gravity (context, PANGO_GRAVITY_SOUTH);
+ break;
+
+ case GIMP_TEXT_DIRECTION_TTB_RTL:
+ pango_context_set_base_dir (context, PANGO_DIRECTION_LTR);
+ pango_context_set_gravity_hint (context, PANGO_GRAVITY_HINT_LINE);
+ pango_context_set_base_gravity (context, PANGO_GRAVITY_EAST);
+ break;
+
+ case GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT:
+ pango_context_set_base_dir (context, PANGO_DIRECTION_LTR);
+ pango_context_set_gravity_hint (context, PANGO_GRAVITY_HINT_STRONG);
+ pango_context_set_base_gravity (context, PANGO_GRAVITY_EAST);
+ break;
+
+ case GIMP_TEXT_DIRECTION_TTB_LTR:
+ pango_context_set_base_dir (context, PANGO_DIRECTION_LTR);
+ pango_context_set_gravity_hint (context, PANGO_GRAVITY_HINT_LINE);
+ pango_context_set_base_gravity (context, PANGO_GRAVITY_WEST);
+ break;
+
+ case GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT:
+ pango_context_set_base_dir (context, PANGO_DIRECTION_LTR);
+ pango_context_set_gravity_hint (context, PANGO_GRAVITY_HINT_STRONG);
+ pango_context_set_base_gravity (context, PANGO_GRAVITY_WEST);
break;
}
diff --git a/app/tools/gimpdrawtool.c b/app/tools/gimpdrawtool.c
index e77aadf0b6..7b69f9b765 100644
--- a/app/tools/gimpdrawtool.c
+++ b/app/tools/gimpdrawtool.c
@@ -1143,16 +1143,17 @@ gimp_draw_tool_add_boundary (GimpDrawTool *draw_tool,
}
GimpCanvasItem *
-gimp_draw_tool_add_text_cursor (GimpDrawTool *draw_tool,
- PangoRectangle *cursor,
- gboolean overwrite)
+gimp_draw_tool_add_text_cursor (GimpDrawTool *draw_tool,
+ PangoRectangle *cursor,
+ gboolean overwrite,
+ GimpTextDirection direction)
{
GimpCanvasItem *item;
g_return_val_if_fail (GIMP_IS_DRAW_TOOL (draw_tool), NULL);
item = gimp_canvas_text_cursor_new (gimp_display_get_shell (draw_tool->display),
- cursor, overwrite);
+ cursor, overwrite, direction);
gimp_draw_tool_add_item (draw_tool, item);
g_object_unref (item);
diff --git a/app/tools/gimpdrawtool.h b/app/tools/gimpdrawtool.h
index 7552a097f1..de13001c26 100644
--- a/app/tools/gimpdrawtool.h
+++ b/app/tools/gimpdrawtool.h
@@ -188,7 +188,8 @@ GimpCanvasItem * gimp_draw_tool_add_boundary (GimpDrawTool *draw_too
GimpCanvasItem * gimp_draw_tool_add_text_cursor (GimpDrawTool *draw_tool,
PangoRectangle *cursor,
- gboolean overwrite);
+ gboolean overwrite,
+ GimpTextDirection direction);
gboolean gimp_draw_tool_on_handle (GimpDrawTool *draw_tool,
GimpDisplay *display,
diff --git a/app/tools/gimptexttool-editor.c b/app/tools/gimptexttool-editor.c
index fa61e1520a..4921cb2f9c 100644
--- a/app/tools/gimptexttool-editor.c
+++ b/app/tools/gimptexttool-editor.c
@@ -119,6 +119,13 @@ static void gimp_text_tool_im_delete_preedit (GimpTextTool *text_tool);
static void gimp_text_tool_editor_copy_selection_to_clipboard
(GimpTextTool *text_tool);
+static void gimp_text_tool_fix_position (GimpTextTool *text_tool,
+ gdouble *x,
+ gdouble *y);
+
+static void gimp_text_tool_convert_gdkkeyevent (GimpTextTool *text_tool,
+ GdkEventKey *kevent);
+
/* public functions */
@@ -467,6 +474,8 @@ gimp_text_tool_editor_key_press (GimpTextTool *text_tool,
return TRUE;
}
+ gimp_text_tool_convert_gdkkeyevent (text_tool, kevent);
+
gimp_text_tool_ensure_proxy (text_tool);
if (gtk_bindings_activate_event (G_OBJECT (text_tool->proxy_text_view),
@@ -523,6 +532,8 @@ gimp_text_tool_editor_key_release (GimpTextTool *text_tool,
return TRUE;
}
+ gimp_text_tool_convert_gdkkeyevent (text_tool, kevent);
+
gimp_text_tool_ensure_proxy (text_tool);
if (gtk_bindings_activate_event (G_OBJECT (text_tool->proxy_text_view),
@@ -598,6 +609,7 @@ gimp_text_tool_editor_get_cursor_rect (GimpTextTool *text_tool,
{
GtkTextBuffer *buffer = GTK_TEXT_BUFFER (text_tool->buffer);
PangoLayout *layout;
+ PangoContext *context;
gint offset_x;
gint offset_y;
GtkTextIter cursor;
@@ -615,19 +627,66 @@ gimp_text_tool_editor_get_cursor_rect (GimpTextTool *text_tool,
layout = gimp_text_layout_get_pango_layout (text_tool->layout);
+ context = pango_layout_get_context (layout);
+
gimp_text_layout_get_offsets (text_tool->layout, &offset_x, &offset_y);
if (overwrite)
- pango_layout_index_to_pos (layout, cursor_index, cursor_rect);
- else
+ {
+ pango_layout_index_to_pos (layout, cursor_index, cursor_rect);
+
+ /* Avoid pango bug ? */
+ if (pango_context_get_base_gravity (context) == PANGO_GRAVITY_WEST &&
+ cursor_rect->width == 0)
+ pango_layout_get_cursor_pos (layout, cursor_index, cursor_rect, NULL);
+ }
+ else
pango_layout_get_cursor_pos (layout, cursor_index, cursor_rect, NULL);
gimp_text_layout_transform_rect (text_tool->layout, cursor_rect);
- cursor_rect->x = PANGO_PIXELS (cursor_rect->x) + offset_x;
- cursor_rect->y = PANGO_PIXELS (cursor_rect->y) + offset_y;
- cursor_rect->width = PANGO_PIXELS (cursor_rect->width);
- cursor_rect->height = PANGO_PIXELS (cursor_rect->height);
+ switch (gimp_text_tool_get_direction (text_tool))
+ {
+ case GIMP_TEXT_DIRECTION_LTR:
+ case GIMP_TEXT_DIRECTION_RTL:
+ cursor_rect->x = PANGO_PIXELS (cursor_rect->x) + offset_x;
+ cursor_rect->y = PANGO_PIXELS (cursor_rect->y) + offset_y;
+ cursor_rect->width = PANGO_PIXELS (cursor_rect->width);
+ cursor_rect->height = PANGO_PIXELS (cursor_rect->height);
+ break;
+ case GIMP_TEXT_DIRECTION_TTB_RTL:
+ case GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT:
+ {
+ gint temp, width, height;
+
+ gimp_text_layout_get_size (text_tool->layout, &width, &height);
+
+ temp = cursor_rect->x;
+ cursor_rect->x = width - PANGO_PIXELS (cursor_rect->y) + offset_x;
+ cursor_rect->y = PANGO_PIXELS (temp) + offset_y;
+
+ temp = cursor_rect->width;
+ cursor_rect->width = PANGO_PIXELS (cursor_rect->height);
+ cursor_rect->height = PANGO_PIXELS (temp);
+ }
+ break;
+ case GIMP_TEXT_DIRECTION_TTB_LTR:
+ case GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT:
+ {
+ gint temp, width, height;
+
+ gimp_text_layout_get_size (text_tool->layout, &width, &height);
+
+ temp = cursor_rect->x;
+ cursor_rect->x = PANGO_PIXELS (cursor_rect->y) + offset_x;
+ cursor_rect->y = height - PANGO_PIXELS (temp) + offset_y;
+
+ temp = cursor_rect->width;
+ cursor_rect->width = PANGO_PIXELS (cursor_rect->height);
+ cursor_rect->height = PANGO_PIXELS (temp);
+ }
+ break;
+ }
}
void
@@ -1375,6 +1434,8 @@ gimp_text_tool_xy_to_iter (GimpTextTool *text_tool,
layout = gimp_text_layout_get_pango_layout (text_tool->layout);
+ gimp_text_tool_fix_position (text_tool, &x, &y);
+
pango_layout_xy_to_index (layout,
x * PANGO_SCALE,
y * PANGO_SCALE,
@@ -1661,3 +1722,132 @@ gimp_text_tool_editor_copy_selection_to_clipboard (GimpTextTool *text_tool)
gtk_text_buffer_copy_clipboard (buffer, clipboard);
}
}
+
+static void
+gimp_text_tool_fix_position (GimpTextTool *text_tool,
+ gdouble *x,
+ gdouble *y)
+{
+ gint temp, width, height;
+
+ gimp_text_layout_get_size (text_tool->layout, &width, &height);
+ switch (gimp_text_tool_get_direction(text_tool))
+ {
+ case GIMP_TEXT_DIRECTION_RTL:
+ case GIMP_TEXT_DIRECTION_LTR:
+ break;
+ case GIMP_TEXT_DIRECTION_TTB_RTL:
+ case GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT:
+ temp = width - *x;
+ *x = *y;
+ *y = temp;
+ break;
+ case GIMP_TEXT_DIRECTION_TTB_LTR:
+ case GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT:
+ temp = *x;
+ *x = height - *y;
+ *y = temp;
+ break;
+ }
+}
+
+static void
+gimp_text_tool_convert_gdkkeyevent (GimpTextTool *text_tool,
+ GdkEventKey *kevent)
+{
+ switch (gimp_text_tool_get_direction (text_tool))
+ {
+ case GIMP_TEXT_DIRECTION_LTR:
+ case GIMP_TEXT_DIRECTION_RTL:
+ break;
+
+ case GIMP_TEXT_DIRECTION_TTB_RTL:
+ case GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT:
+#ifdef _WIN32
+ switch (kevent->keyval)
+ {
+ case GDK_KEY_Up:
+ kevent->hardware_keycode = 0x25;/* VK_LEFT */
+ kevent->keyval = GDK_KEY_Left;
+ break;
+ case GDK_KEY_Down:
+ kevent->hardware_keycode = 0x27;/* VK_RIGHT */
+ kevent->keyval = GDK_KEY_Right;
+ break;
+ case GDK_KEY_Left:
+ kevent->hardware_keycode = 0x28;/* VK_DOWN */
+ kevent->keyval = GDK_KEY_Down;
+ break;
+ case GDK_KEY_Right:
+ kevent->hardware_keycode = 0x26;/* VK_UP */
+ kevent->keyval = GDK_KEY_Up;
+ break;
+ }
+#else
+ switch (kevent->keyval)
+ {
+ case GDK_KEY_Up:
+ kevent->hardware_keycode = 113;
+ kevent->keyval = GDK_KEY_Left;
+ break;
+ case GDK_KEY_Down:
+ kevent->hardware_keycode = 114;
+ kevent->keyval = GDK_KEY_Right;
+ break;
+ case GDK_KEY_Left:
+ kevent->hardware_keycode = 116;
+ kevent->keyval = GDK_KEY_Down;
+ break;
+ case GDK_KEY_Right:
+ kevent->hardware_keycode = 111;
+ kevent->keyval = GDK_KEY_Up;
+ break;
+ }
+#endif
+ break;
+ case GIMP_TEXT_DIRECTION_TTB_LTR:
+ case GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT:
+#ifdef _WIN32
+ switch (kevent->keyval)
+ {
+ case GDK_KEY_Up:
+ kevent->hardware_keycode = 0x26;/* VK_UP */
+ kevent->keyval = GDK_KEY_Up;
+ break;
+ case GDK_KEY_Down:
+ kevent->hardware_keycode = 0x28;/* VK_DOWN */
+ kevent->keyval = GDK_KEY_Down;
+ break;
+ case GDK_KEY_Left:
+ kevent->hardware_keycode = 0x25;/* VK_LEFT */
+ kevent->keyval = GDK_KEY_Left;
+ break;
+ case GDK_KEY_Right:
+ kevent->hardware_keycode = 0x27;/* VK_RIGHT */
+ kevent->keyval = GDK_KEY_Right;
+ break;
+ }
+#else
+ switch (kevent->keyval)
+ {
+ case GDK_KEY_Up:
+ kevent->hardware_keycode = 114;
+ kevent->keyval = GDK_KEY_Right;
+ break;
+ case GDK_KEY_Down:
+ kevent->hardware_keycode = 113;
+ kevent->keyval = GDK_KEY_Left;
+ break;
+ case GDK_KEY_Left:
+ kevent->hardware_keycode = 111;
+ kevent->keyval = GDK_KEY_Up;
+ break;
+ case GDK_KEY_Right:
+ kevent->hardware_keycode = 116;
+ kevent->keyval = GDK_KEY_Down;
+ break;
+ }
+#endif
+ break;
+ }
+}
diff --git a/app/tools/gimptexttool.c b/app/tools/gimptexttool.c
index 6f4e6742dc..3e9f2eb24a 100644
--- a/app/tools/gimptexttool.c
+++ b/app/tools/gimptexttool.c
@@ -891,10 +891,11 @@ gimp_text_tool_draw (GimpDrawTool *draw_tool)
{
/* If the text buffer has no selection, draw the text cursor */
- GimpCanvasItem *item;
- PangoRectangle cursor_rect;
- gint off_x, off_y;
- gboolean overwrite;
+ GimpCanvasItem *item;
+ PangoRectangle cursor_rect;
+ gint off_x, off_y;
+ gboolean overwrite;
+ GimpTextDirection direction;
gimp_text_tool_editor_get_cursor_rect (text_tool,
text_tool->overwrite_mode,
@@ -906,8 +907,10 @@ gimp_text_tool_draw (GimpDrawTool *draw_tool)
overwrite = text_tool->overwrite_mode && cursor_rect.width != 0;
+ direction = gimp_text_tool_get_direction (text_tool);
+
item = gimp_draw_tool_add_text_cursor (draw_tool, &cursor_rect,
- overwrite);
+ overwrite, direction);
gimp_canvas_item_set_highlight (item, TRUE);
}
@@ -917,17 +920,20 @@ gimp_text_tool_draw (GimpDrawTool *draw_tool)
static void
gimp_text_tool_draw_selection (GimpDrawTool *draw_tool)
{
- GimpTextTool *text_tool = GIMP_TEXT_TOOL (draw_tool);
- GtkTextBuffer *buffer = GTK_TEXT_BUFFER (text_tool->buffer);
- GimpCanvasGroup *group;
- PangoLayout *layout;
- gint offset_x;
- gint offset_y;
- gint off_x, off_y;
- PangoLayoutIter *iter;
- GtkTextIter sel_start, sel_end;
- gint min, max;
- gint i;
+ GimpTextTool *text_tool = GIMP_TEXT_TOOL (draw_tool);
+ GtkTextBuffer *buffer = GTK_TEXT_BUFFER (text_tool->buffer);
+ GimpCanvasGroup *group;
+ PangoLayout *layout;
+ gint offset_x;
+ gint offset_y;
+ gint width;
+ gint height;
+ gint off_x, off_y;
+ PangoLayoutIter *iter;
+ GtkTextIter sel_start, sel_end;
+ gint min, max;
+ gint i;
+ GimpTextDirection direction;
group = gimp_draw_tool_add_stroke_group (draw_tool);
gimp_canvas_item_set_highlight (GIMP_CANVAS_ITEM (group), TRUE);
@@ -941,10 +947,14 @@ gimp_text_tool_draw_selection (GimpDrawTool *draw_tool)
gimp_text_layout_get_offsets (text_tool->layout, &offset_x, &offset_y);
+ gimp_text_layout_get_size (text_tool->layout, &width, &height);
+
gimp_item_get_offset (GIMP_ITEM (text_tool->layer), &off_x, &off_y);
offset_x += off_x;
offset_y += off_y;
+ direction = gimp_text_tool_get_direction (text_tool);
+
iter = pango_layout_get_iter (layout);
gimp_draw_tool_push_group (draw_tool, group);
@@ -971,12 +981,33 @@ gimp_text_tool_draw_selection (GimpDrawTool *draw_tool)
gimp_text_layout_transform_rect (text_tool->layout, &rect);
- rect.x += offset_x;
- rect.y += offset_y;
-
- gimp_draw_tool_add_rectangle (draw_tool, FALSE,
- rect.x, rect.y,
- rect.width, rect.height);
+ switch (direction)
+ {
+ case GIMP_TEXT_DIRECTION_LTR:
+ case GIMP_TEXT_DIRECTION_RTL:
+ rect.x += offset_x;
+ rect.y += offset_y;
+ gimp_draw_tool_add_rectangle (draw_tool, FALSE,
+ rect.x, rect.y,
+ rect.width, rect.height);
+ break;
+ case GIMP_TEXT_DIRECTION_TTB_RTL:
+ case GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT:
+ rect.y = offset_x - rect.y + width;
+ rect.x = offset_y + rect.x;
+ gimp_draw_tool_add_rectangle (draw_tool, FALSE,
+ rect.y, rect.x,
+ -rect.height, rect.width);
+ break;
+ case GIMP_TEXT_DIRECTION_TTB_LTR:
+ case GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT:
+ rect.y = offset_x + rect.y;
+ rect.x = offset_y - rect.x + height;
+ gimp_draw_tool_add_rectangle (draw_tool, FALSE,
+ rect.y, rect.x,
+ rect.height, -rect.width);
+ break;
+ }
}
}
while (pango_layout_iter_next_char (iter));
@@ -2264,3 +2295,10 @@ gimp_text_tool_create_vectors_warped (GimpTextTool *text_tool)
gimp_image_flush (text_tool->image);
}
+
+GimpTextDirection
+gimp_text_tool_get_direction (GimpTextTool *text_tool)
+{
+ GimpTextOptions *options = GIMP_TEXT_TOOL_GET_OPTIONS (text_tool);
+ return options->base_dir;
+}
diff --git a/app/tools/gimptexttool.h b/app/tools/gimptexttool.h
index d382ab9b6a..b463524440 100644
--- a/app/tools/gimptexttool.h
+++ b/app/tools/gimptexttool.h
@@ -119,6 +119,9 @@ void gimp_text_tool_paste_clipboard (GimpTextTool *text_tool);
void gimp_text_tool_create_vectors (GimpTextTool *text_tool);
void gimp_text_tool_create_vectors_warped (GimpTextTool *text_tool);
+GimpTextDirection
+ gimp_text_tool_get_direction (GimpTextTool *text_tool);
+
/* only for the text editor */
void gimp_text_tool_clear_layout (GimpTextTool *text_tool);
gboolean gimp_text_tool_ensure_layout (GimpTextTool *text_tool);
diff --git a/app/widgets/gimptexteditor.c b/app/widgets/gimptexteditor.c
index 953c7e3e80..dc25255cba 100644
--- a/app/widgets/gimptexteditor.c
+++ b/app/widgets/gimptexteditor.c
@@ -214,6 +214,10 @@ gimp_text_editor_new (const gchar *title,
switch (editor->base_dir)
{
case GIMP_TEXT_DIRECTION_LTR:
+ case GIMP_TEXT_DIRECTION_TTB_RTL:
+ case GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT:
+ case GIMP_TEXT_DIRECTION_TTB_LTR:
+ case GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT:
gtk_widget_set_direction (editor->view, GTK_TEXT_DIR_LTR);
break;
case GIMP_TEXT_DIRECTION_RTL:
@@ -286,6 +290,10 @@ gimp_text_editor_set_direction (GimpTextEditor *editor,
switch (editor->base_dir)
{
case GIMP_TEXT_DIRECTION_LTR:
+ case GIMP_TEXT_DIRECTION_TTB_RTL:
+ case GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT:
+ case GIMP_TEXT_DIRECTION_TTB_LTR:
+ case GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT:
gtk_widget_set_direction (editor->view, GTK_TEXT_DIR_LTR);
break;
case GIMP_TEXT_DIRECTION_RTL:
diff --git a/icons/Color/24/gimp-text-dir-ttb-ltr-upright.png
b/icons/Color/24/gimp-text-dir-ttb-ltr-upright.png
new file mode 100644
index 0000000000..f955debd15
Binary files /dev/null and b/icons/Color/24/gimp-text-dir-ttb-ltr-upright.png differ
diff --git a/icons/Color/24/gimp-text-dir-ttb-ltr.png b/icons/Color/24/gimp-text-dir-ttb-ltr.png
new file mode 100644
index 0000000000..6bc4d84577
Binary files /dev/null and b/icons/Color/24/gimp-text-dir-ttb-ltr.png differ
diff --git a/icons/Color/24/gimp-text-dir-ttb-rtl-upright.png
b/icons/Color/24/gimp-text-dir-ttb-rtl-upright.png
new file mode 100644
index 0000000000..66febba0a8
Binary files /dev/null and b/icons/Color/24/gimp-text-dir-ttb-rtl-upright.png differ
diff --git a/icons/Color/24/gimp-text-dir-ttb-rtl.png b/icons/Color/24/gimp-text-dir-ttb-rtl.png
new file mode 100644
index 0000000000..cf97823500
Binary files /dev/null and b/icons/Color/24/gimp-text-dir-ttb-rtl.png differ
diff --git a/icons/Color/scalable/gimp-text-dir-ttb-ltr-upright.svg
b/icons/Color/scalable/gimp-text-dir-ttb-ltr-upright.svg
new file mode 100644
index 0000000000..c66ea41f2e
--- /dev/null
+++ b/icons/Color/scalable/gimp-text-dir-ttb-ltr-upright.svg
@@ -0,0 +1,290 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ inkscape:export-ydpi="90.000000"
+ inkscape:export-xdpi="90.000000"
+ inkscape:export-filename="../24/gimp-text-dir-ttb-ltr-upright.png"
+ width="24"
+ height="24"
+ id="svg11300"
+ sodipodi:version="0.32"
+ inkscape:version="0.92.3 (2405546, 2018-03-11)"
+ sodipodi:docname="gimp-text-dir-ttb-ltr-upright.svg"
+ version="1.0"
+ viewBox="0 0 24 24">
+ <sodipodi:namedview
+ inkscape:cy="-12.270958"
+ inkscape:cx="-37.299263"
+ inkscape:zoom="1.4142136"
+ inkscape:window-height="713"
+ inkscape:window-width="1024"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="0.0"
+ borderopacity="0.17254902"
+ bordercolor="#666"
+ pagecolor="#ffffff"
+ id="base"
+ inkscape:showpageshadow="false"
+ showborder="true"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:current-layer="layer1"
+ width="16px"
+ height="16px"
+ showgrid="true"
+ inkscape:window-maximized="1"
+ inkscape:document-units="px"
+ showguides="true"
+ inkscape:guide-bbox="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4444" />
+ </sodipodi:namedview>
+ <defs
+ id="defs3">
+ <marker
+ inkscape:stockid="Arrow1Send"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="marker1323"
+ style="overflow:visible;"
+ inkscape:isstock="true">
+ <path
+ id="path1321"
+ d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1"
+ transform="scale(0.2) rotate(180) translate(6,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow2Send"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow2Send"
+ style="overflow:visible;"
+ inkscape:isstock="true">
+ <path
+ id="path856"
+
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
+ d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469
6.9831476,1.6157441 8.7185878,4.0337352 z "
+ transform="scale(0.3) rotate(180) translate(-2.3,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow2Mend"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow2Mend"
+ style="overflow:visible;"
+ inkscape:isstock="true">
+ <path
+ id="path850"
+
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
+ d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469
6.9831476,1.6157441 8.7185878,4.0337352 z "
+ transform="scale(0.6) rotate(180) translate(0,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Mend"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow1Mend"
+ style="overflow:visible;"
+ inkscape:isstock="true">
+ <path
+ id="path832"
+ d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1"
+ transform="scale(0.4) rotate(180) translate(10,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Send"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow1Send"
+ style="overflow:visible;"
+ inkscape:isstock="true">
+ <path
+ id="path838"
+ d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1"
+ transform="scale(0.2) rotate(180) translate(6,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Lstart"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow1Lstart"
+ style="overflow:visible"
+ inkscape:isstock="true">
+ <path
+ id="path823"
+ d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1"
+ transform="scale(0.8) translate(12.5,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow2Lend"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow2Lend"
+ style="overflow:visible;"
+ inkscape:isstock="true">
+ <path
+ id="path844"
+
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
+ d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469
6.9831476,1.6157441 8.7185878,4.0337352 z "
+ transform="scale(1.1) rotate(180) translate(1,0)" />
+ </marker>
+ </defs>
+ <sodipodi:namedview
+ stroke="#ef2929"
+ fill="#eeeeec"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="0.25490196"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="-14.198652"
+ inkscape:cy="-5.1663457"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:showpageshadow="false"
+ inkscape:window-width="872"
+ inkscape:window-height="659"
+ inkscape:window-x="403"
+ inkscape:window-y="296"
+ width="32px"
+ height="32px"
+ id="namedview73" />
+ <metadata
+ id="metadata4">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:creator>
+ <cc:Agent>
+ <dc:title>Jakub Steiner</dc:title>
+ </cc:Agent>
+ </dc:creator>
+ <dc:source>http://jimmac.musichall.cz</dc:source>
+ <cc:license
+ rdf:resource="http://creativecommons.org/licenses/by-sa/2.0/" />
+ <dc:title />
+ </cc:Work>
+ <cc:License
+ rdf:about="http://creativecommons.org/licenses/by-sa/2.0/">
+ <cc:permits
+ rdf:resource="http://web.resource.org/cc/Reproduction" />
+ <cc:permits
+ rdf:resource="http://web.resource.org/cc/Distribution" />
+ <cc:requires
+ rdf:resource="http://web.resource.org/cc/Notice" />
+ <cc:requires
+ rdf:resource="http://web.resource.org/cc/Attribution" />
+ <cc:permits
+ rdf:resource="http://web.resource.org/cc/DerivativeWorks" />
+ <cc:requires
+ rdf:resource="http://web.resource.org/cc/ShareAlike" />
+ </cc:License>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ transform="translate(0,8)">
+ <g
+ style="display:inline"
+ id="gimp-text-dir-ttb-ltr-upright"
+ inkscape:label="#gimp-text-dir-ltr-upright-24"
+ inkscape:export-xdpi="96"
+ inkscape:export-ydpi="96"
+ inkscape:export-filename="../24/gimp-text-dir-ttb-ltr-upright.png">
+ <rect
+ ry="2.1219141"
+ rx="0.41507211"
+ y="-8"
+ x="0"
+ height="24"
+ width="24"
+ id="rect4013-8-5-6"
+
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
/>
+ <path
+ sodipodi:nodetypes="cccccccc"
+ inkscape:connector-curvature="0"
+ id="path1105-9"
+ d="M 18.309358,-5.867637 V 8.825596 h -1.520807 l 2.613754,5.306763 2.617991,-5.306763 H 20.478307
V -5.867637 Z"
+
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;strok
e-width:
1.87403953px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
/>
+ <g
+ aria-label="あいうえ "
+
style="font-style:normal;font-weight:normal;font-size:6.5772357px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;writing-mode:tb-rl;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.16443089"
+ id="text92"
+ transform="translate(-15.379221)">
+ <path
+ inkscape:connector-curvature="0"
+ d="m 21.172638,-5.0444666 c 0.03946,-0.092081 0.09208,-0.2630894 0.131545,-0.3485935 l
-0.513024,-0.1249675 c -0.01316,0.1052358 -0.03946,0.2630894 -0.06577,0.361748 l -0.01973,0.059195 c
-0.07235,-0.00658 -0.151276,-0.00658 -0.230203,-0.00658 -0.315707,0 -0.710341,0.059195 -1.065512,0.1644309
0.01973,-0.2696667 0.03946,-0.5327561 0.06577,-0.7826911 0.776114,-0.039463 1.624578,-0.1183902
2.288878,-0.2302032 l -0.0066,-0.4801383 c -0.651146,0.1446992 -1.420683,0.2367805 -2.229683,0.2696667
0.02631,-0.1841626 0.05919,-0.3485935 0.0855,-0.4867154 0.01316,-0.078927 0.03946,-0.1973171
0.07235,-0.2762439 l -0.545911,-0.013154 c 0,0.07235 -0.0066,0.1973171 -0.01315,0.2959756 l
-0.05262,0.4932927 c -0.138122,0.00658 -0.282821,0.00658 -0.420943,0.00658 -0.276244,0 -0.828732,-0.046041
-1.058935,-0.078927 l 0.01973,0.4867154 c 0.263089,0.013154 0.749805,0.032886 1.032626,0.032886 0.11839,0
0.249935,0 0.381479,-0.00658 -0.03289,0.2959756 -0.0592,0.6182601 -0.07235,0.9405447 -
0.874773
,0.3946341 -1.591691,1.2430975 -1.591691,2.0586748 0,0.5393333 0.335439,0.7958455 0.762959,0.7958455
0.342016,0 0.723496,-0.138122 1.07209,-0.3420163 0.03289,0.1249675 0.06577,0.2433577 0.09866,0.3485935 l
0.473561,-0.1381219 c -0.05262,-0.1578537 -0.105236,-0.3354391 -0.151276,-0.5130244 0.532756,-0.4538293
1.04578,-1.1575935 1.400951,-2.0586748 0.591951,0.1644309 0.914236,0.5985284 0.914236,1.0852439 0,0.8155772
-0.703765,1.4075284 -1.854781,1.5324959 l 0.276244,0.4340976 c 1.479878,-0.2367805 2.078406,-1.0392033
2.078406,-1.9468618 0,-0.7037642 -0.480138,-1.2891382 -1.269406,-1.506187 z m -2.23626,0.8681951 c 0,0.473561
0.05919,0.9865853 0.151277,1.4404146 -0.315708,0.2170488 -0.624838,0.3288618 -0.868196,0.3288618 -0.243357,0
-0.368325,-0.1249675 -0.368325,-0.3814797 0,-0.5130244 0.466984,-1.1378618 1.085244,-1.4930325 z m
1.631155,-0.5130244 c -0.269667,0.7037642 -0.64457,1.2102114 -1.065513,1.6114228 -0.07235,-0.3683252
-0.111813,-0.7563822 -0.111813,-1.1575935 v -0.24
9935 c 0
.295976,-0.111813 0.670878,-0.2038943 1.078667,-0.2038943 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path149" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 18.101069,-0.88979127 -0.61826,-0.0131545 c 0.02631,0.15127642 0.03289,0.41436585
0.03289,0.56564227 0,0.37490243 0.0066,1.14443901 0.07235,1.6969268 0.177585,1.644309 0.756382,2.2494146
1.348333,2.2494146 0.447252,0 0.828732,-0.3683252 1.216789,-1.453569 l -0.41437,-0.4538293 c
-0.157854,0.6379919 -0.453829,1.2891382 -0.789268,1.2891382 -0.447252,0 -0.749805,-0.697187
-0.855041,-1.7626992 -0.04604,-0.5196016 -0.05262,-1.10497557 -0.04604,-1.49960972 0,-0.17100812
0.02631,-0.46040649 0.05262,-0.61826015 z m 3.314927,0.17100813 -0.506447,0.17758536 c 0.605105,0.74322763
0.993162,1.99947968 1.098398,3.15049588 l 0.526179,-0.2038943 c -0.09208,-1.0786666 -0.545911,-2.38095931
-1.11813,-3.12418694 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path151" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 21.244988,6.8626315 c 0,1.1378618 -1.07209,1.7495447 -2.61774,1.9402846 l 0.289398,0.4932926
c 1.650887,-0.2499349 2.88083,-1.032626 2.88083,-2.4138455 0,-0.9076585 -0.670878,-1.4141056
-1.578537,-1.4141056 -0.723496,0 -1.453569,0.2038943 -1.907398,0.30913 -0.177586,0.039464 -0.401212,0.078927
-0.578797,0.092081 l 0.157854,0.5919512 c 0.164431,-0.052618 0.348593,-0.1315447 0.539333,-0.1841626
0.38148,-0.111813 1.006317,-0.3222845 1.729813,-0.3222845 0.664301,0 1.085244,0.3749024 1.085244,0.9076588 z
M 18.581207,4.001534 18.502281,4.4882494 c 0.716918,0.1249675 2.006056,0.2565122 2.709821,0.3025529 l
0.07893,-0.4998699 c -0.624841,-0.00658 -2.00606,-0.138122 -2.709825,-0.2893984 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path153" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 18.666711,9.3993055 -0.0855,0.4735609 c 0.776114,0.1446996 1.887667,0.2893986
2.525659,0.3420166 L 21.17264,9.7347445 C 20.567533,9.6952811 19.350744,9.5440046 18.666711,9.3993055 Z m
2.637472,1.8218945 -0.30913,-0.348594 c -0.05919,0.02631 -0.19074,0.05262 -0.295976,0.06577 -0.486715,0.06577
-1.966593,0.164431 -2.334918,0.171008 -0.197317,0.0066 -0.388057,0 -0.532757,-0.01315 l 0.04604,0.565643 c
0.138122,-0.01973 0.302553,-0.03946 0.506447,-0.0592 0.388057,-0.03289 1.460147,-0.124967 1.960017,-0.157853
-0.624838,0.631414 -2.367805,2.361227 -2.624318,2.624317 -0.11839,0.11839 -0.230203,0.210471
-0.315707,0.276244 l 0.493293,0.342016 c 0.368325,-0.460407 1.052358,-1.183902 1.295715,-1.407528
0.144699,-0.138122 0.295976,-0.230204 0.460407,-0.230204 0.177585,0 0.315707,0.111813 0.388057,0.328862
0.0592,0.184163 0.151276,0.559065 0.217048,0.749805 0.138122,0.420943 0.460407,0.539333 0.973431,0.539333
0.335439,0 0.927391,-0.04604 1.19048,-0.09866 l 0.03289,-0.539
334 c -0
.295975,0.07893 -0.789268,0.131545 -1.203634,0.131545 -0.322284,0 -0.473561,-0.09866 -0.545911,-0.342016
-0.07235,-0.203894 -0.151276,-0.526179 -0.217048,-0.716919 -0.0855,-0.249935 -0.230204,-0.42752
-0.486716,-0.453829 -0.05262,-0.01315 -0.171008,-0.02631 -0.230203,-0.01315 0.230203,-0.249935
0.940545,-0.907658 1.183902,-1.131284 0.07235,-0.06577 0.230204,-0.197317 0.348594,-0.282821 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path155" />
+ </g>
+ <g
+ aria-label="ABCD "
+
style="font-style:normal;font-weight:normal;font-size:6.5772357px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;writing-mode:tb-rl;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.16443089"
+ id="text92-9">
+ <path
+ inkscape:connector-curvature="0"
+ d="m 13.241123,-1.9856701 h 0.664301 l -1.861358,-4.8342682 h -0.743228 l -1.8416256,4.8342682 h
0.6379916 l 0.545911,-1.4733008 h 2.052097 z m -2.453309,-1.9468618 0.289398,-0.7695365 c 0.197317,-0.5393334
0.394635,-1.0655122 0.578797,-1.6245773 h 0.02631 c 0.197317,0.5524878 0.388057,1.0786667 0.585374,1.6245773
l 0.289398,0.7695365 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path158" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 10.005123,3.4515662 h 1.775854 c 1.341756,0 2.006056,-0.4275203 2.006056,-1.4141057
0,-0.6379918 -0.407788,-1.0392032 -1.078666,-1.1510162 V 0.8535581 c 0.526179,-0.15785366
0.776114,-0.57221951 0.776114,-1.04578048 0,-0.85504062 -0.677456,-1.19047962 -1.841626,-1.19047962 h
-1.637732 z m 0.605106,-2.77559345 v -1.57853656 h 0.986585 c 0.868195,0 1.275984,0.21047154
1.275984,0.78926828 0,0.54591056 -0.407789,0.78926828 -1.328602,0.78926828 z m 0,2.28887805 V 1.1495337 h
1.078666 c 1.045781,0 1.493033,0.2696667 1.493033,0.8681951 0,0.7103415 -0.473561,0.947122 -1.473301,0.947122
z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path160" />
+ <path
+ inkscape:connector-curvature="0"
+ d="M 13.833074,8.2771191 13.491058,7.882485 c -0.361748,0.3420162 -0.789268,0.5459106
-1.322024,0.5459106 -1.07209,0 -1.775854,-0.7629594 -1.775854,-1.9665935 0,-1.1904797 0.703764,-1.953439
1.789008,-1.953439 0.466984,0 0.874772,0.1907398 1.164171,0.4604065 L 13.694952,4.5741354 C
13.36609,4.2584281 12.846489,3.975607 12.175611,3.975607 c -1.42726,0 -2.4072685,0.9668536
-2.4072685,2.5059268 0,1.5456504 0.9931625,2.4861951 2.3743825,2.4861951 0.723495,0 1.243097,-0.2433577
1.690349,-0.6906098 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path162" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 9.89331,14.326037 h 1.368065 c 1.670618,0 2.558545,-0.907659 2.558545,-2.440155 0,-1.525918
-0.887927,-2.3941133 -2.591431,-2.3941133 H 9.89331 Z M 10.485261,13.81959 V 9.9982158 h 0.703764 c
1.322025,0 2.006057,0.6511462 2.006057,1.8876662 0,1.243098 -0.684032,1.933708 -2.006057,1.933708 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path164" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/icons/Color/scalable/gimp-text-dir-ttb-ltr.svg b/icons/Color/scalable/gimp-text-dir-ttb-ltr.svg
new file mode 100644
index 0000000000..05b0deb01d
--- /dev/null
+++ b/icons/Color/scalable/gimp-text-dir-ttb-ltr.svg
@@ -0,0 +1,290 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ inkscape:export-ydpi="96"
+ inkscape:export-xdpi="96"
+ inkscape:export-filename="../24/gimp-text-dir-ttb-ltr.png"
+ width="24"
+ height="24"
+ id="svg11300"
+ sodipodi:version="0.32"
+ inkscape:version="0.92.3 (2405546, 2018-03-11)"
+ sodipodi:docname="gimp-text-dir-ttb-ltr.svg"
+ version="1.0"
+ viewBox="0 0 24 24">
+ <sodipodi:namedview
+ inkscape:cy="17.681101"
+ inkscape:cx="-3.3900297"
+ inkscape:zoom="8.0000001"
+ inkscape:window-height="713"
+ inkscape:window-width="1024"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="0.0"
+ borderopacity="0.17254902"
+ bordercolor="#666"
+ pagecolor="#ffffff"
+ id="base"
+ inkscape:showpageshadow="false"
+ showborder="true"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:current-layer="layer1"
+ width="16px"
+ height="16px"
+ showgrid="true"
+ inkscape:window-maximized="1"
+ inkscape:document-units="px"
+ showguides="true"
+ inkscape:guide-bbox="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4444" />
+ </sodipodi:namedview>
+ <defs
+ id="defs3">
+ <marker
+ inkscape:stockid="Arrow1Send"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="marker1323"
+ style="overflow:visible;"
+ inkscape:isstock="true">
+ <path
+ id="path1321"
+ d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1"
+ transform="scale(0.2) rotate(180) translate(6,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow2Send"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow2Send"
+ style="overflow:visible;"
+ inkscape:isstock="true">
+ <path
+ id="path856"
+
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
+ d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469
6.9831476,1.6157441 8.7185878,4.0337352 z "
+ transform="scale(0.3) rotate(180) translate(-2.3,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow2Mend"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow2Mend"
+ style="overflow:visible;"
+ inkscape:isstock="true">
+ <path
+ id="path850"
+
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
+ d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469
6.9831476,1.6157441 8.7185878,4.0337352 z "
+ transform="scale(0.6) rotate(180) translate(0,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Mend"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow1Mend"
+ style="overflow:visible;"
+ inkscape:isstock="true">
+ <path
+ id="path832"
+ d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1"
+ transform="scale(0.4) rotate(180) translate(10,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Send"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow1Send"
+ style="overflow:visible;"
+ inkscape:isstock="true">
+ <path
+ id="path838"
+ d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1"
+ transform="scale(0.2) rotate(180) translate(6,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Lstart"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow1Lstart"
+ style="overflow:visible"
+ inkscape:isstock="true">
+ <path
+ id="path823"
+ d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1"
+ transform="scale(0.8) translate(12.5,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow2Lend"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow2Lend"
+ style="overflow:visible;"
+ inkscape:isstock="true">
+ <path
+ id="path844"
+
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
+ d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469
6.9831476,1.6157441 8.7185878,4.0337352 z "
+ transform="scale(1.1) rotate(180) translate(1,0)" />
+ </marker>
+ </defs>
+ <sodipodi:namedview
+ stroke="#ef2929"
+ fill="#eeeeec"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="0.25490196"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="-14.198652"
+ inkscape:cy="-5.1663457"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:showpageshadow="false"
+ inkscape:window-width="872"
+ inkscape:window-height="659"
+ inkscape:window-x="403"
+ inkscape:window-y="296"
+ width="32px"
+ height="32px"
+ id="namedview73" />
+ <metadata
+ id="metadata4">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:creator>
+ <cc:Agent>
+ <dc:title>Jakub Steiner</dc:title>
+ </cc:Agent>
+ </dc:creator>
+ <dc:source>http://jimmac.musichall.cz</dc:source>
+ <cc:license
+ rdf:resource="http://creativecommons.org/licenses/by-sa/2.0/" />
+ <dc:title />
+ </cc:Work>
+ <cc:License
+ rdf:about="http://creativecommons.org/licenses/by-sa/2.0/">
+ <cc:permits
+ rdf:resource="http://web.resource.org/cc/Reproduction" />
+ <cc:permits
+ rdf:resource="http://web.resource.org/cc/Distribution" />
+ <cc:requires
+ rdf:resource="http://web.resource.org/cc/Notice" />
+ <cc:requires
+ rdf:resource="http://web.resource.org/cc/Attribution" />
+ <cc:permits
+ rdf:resource="http://web.resource.org/cc/DerivativeWorks" />
+ <cc:requires
+ rdf:resource="http://web.resource.org/cc/ShareAlike" />
+ </cc:License>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ transform="translate(0,8)">
+ <g
+ style="display:inline"
+ id="gimp-text-dir-ttb-ltr"
+ inkscape:label="#gimp-text-dir-ltr-24"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90"
+ inkscape:export-filename="../24/gimp-text-dir-ttb-rtl.png">
+ <rect
+ ry="2.1219141"
+ rx="0.41507211"
+ y="-8"
+ x="0"
+ height="24"
+ width="24"
+ id="rect4013-8-5-6-4"
+
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
/>
+ <path
+ sodipodi:nodetypes="cccccccc"
+ inkscape:connector-curvature="0"
+ id="path1105-9-5"
+ d="M 18.309358,-5.867637 V 8.825596 h -1.520807 l 2.613754,5.306763 2.617991,-5.306763 H 20.478307
V -5.867637 Z"
+
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;strok
e-width:
1.87403953px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
/>
+ <g
+ aria-label="あいうえ "
+
style="font-style:normal;font-weight:normal;font-size:6.5772357px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;writing-mode:tb-rl;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.16443089"
+ id="text92-93"
+ transform="translate(-15.379221)">
+ <path
+ inkscape:connector-curvature="0"
+ d="m 21.172638,-5.0444666 c 0.03946,-0.092081 0.09208,-0.2630894 0.131545,-0.3485935 l
-0.513024,-0.1249675 c -0.01316,0.1052358 -0.03946,0.2630894 -0.06577,0.361748 l -0.01973,0.059195 c
-0.07235,-0.00658 -0.151276,-0.00658 -0.230203,-0.00658 -0.315707,0 -0.710341,0.059195 -1.065512,0.1644309
0.01973,-0.2696667 0.03946,-0.5327561 0.06577,-0.7826911 0.776114,-0.039463 1.624578,-0.1183902
2.288878,-0.2302032 l -0.0066,-0.4801383 c -0.651146,0.1446992 -1.420683,0.2367805 -2.229683,0.2696667
0.02631,-0.1841626 0.05919,-0.3485935 0.0855,-0.4867154 0.01316,-0.078927 0.03946,-0.1973171
0.07235,-0.2762439 l -0.545911,-0.013154 c 0,0.07235 -0.0066,0.1973171 -0.01315,0.2959756 l
-0.05262,0.4932927 c -0.138122,0.00658 -0.282821,0.00658 -0.420943,0.00658 -0.276244,0 -0.828732,-0.046041
-1.058935,-0.078927 l 0.01973,0.4867154 c 0.263089,0.013154 0.749805,0.032886 1.032626,0.032886 0.11839,0
0.249935,0 0.381479,-0.00658 -0.03289,0.2959756 -0.0592,0.6182601 -0.07235,0.9405447 -
0.874773
,0.3946341 -1.591691,1.2430975 -1.591691,2.0586748 0,0.5393333 0.335439,0.7958455 0.762959,0.7958455
0.342016,0 0.723496,-0.138122 1.07209,-0.3420163 0.03289,0.1249675 0.06577,0.2433577 0.09866,0.3485935 l
0.473561,-0.1381219 c -0.05262,-0.1578537 -0.105236,-0.3354391 -0.151276,-0.5130244 0.532756,-0.4538293
1.04578,-1.1575935 1.400951,-2.0586748 0.591951,0.1644309 0.914236,0.5985284 0.914236,1.0852439 0,0.8155772
-0.703765,1.4075284 -1.854781,1.5324959 l 0.276244,0.4340976 c 1.479878,-0.2367805 2.078406,-1.0392033
2.078406,-1.9468618 0,-0.7037642 -0.480138,-1.2891382 -1.269406,-1.506187 z m -2.23626,0.8681951 c 0,0.473561
0.05919,0.9865853 0.151277,1.4404146 -0.315708,0.2170488 -0.624838,0.3288618 -0.868196,0.3288618 -0.243357,0
-0.368325,-0.1249675 -0.368325,-0.3814797 0,-0.5130244 0.466984,-1.1378618 1.085244,-1.4930325 z m
1.631155,-0.5130244 c -0.269667,0.7037642 -0.64457,1.2102114 -1.065513,1.6114228 -0.07235,-0.3683252
-0.111813,-0.7563822 -0.111813,-1.1575935 v -0.24
9935 c 0
.295976,-0.111813 0.670878,-0.2038943 1.078667,-0.2038943 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path149-5" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 18.101069,-0.88979127 -0.61826,-0.0131545 c 0.02631,0.15127642 0.03289,0.41436585
0.03289,0.56564227 0,0.37490243 0.0066,1.14443901 0.07235,1.6969268 0.177585,1.644309 0.756382,2.2494146
1.348333,2.2494146 0.447252,0 0.828732,-0.3683252 1.216789,-1.453569 l -0.41437,-0.4538293 c
-0.157854,0.6379919 -0.453829,1.2891382 -0.789268,1.2891382 -0.447252,0 -0.749805,-0.697187
-0.855041,-1.7626992 -0.04604,-0.5196016 -0.05262,-1.10497557 -0.04604,-1.49960972 0,-0.17100812
0.02631,-0.46040649 0.05262,-0.61826015 z m 3.314927,0.17100813 -0.506447,0.17758536 c 0.605105,0.74322763
0.993162,1.99947968 1.098398,3.15049588 l 0.526179,-0.2038943 c -0.09208,-1.0786666 -0.545911,-2.38095931
-1.11813,-3.12418694 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path151-7" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 21.244988,6.8626315 c 0,1.1378618 -1.07209,1.7495447 -2.61774,1.9402846 l 0.289398,0.4932926
c 1.650887,-0.2499349 2.88083,-1.032626 2.88083,-2.4138455 0,-0.9076585 -0.670878,-1.4141056
-1.578537,-1.4141056 -0.723496,0 -1.453569,0.2038943 -1.907398,0.30913 -0.177586,0.039464 -0.401212,0.078927
-0.578797,0.092081 l 0.157854,0.5919512 c 0.164431,-0.052618 0.348593,-0.1315447 0.539333,-0.1841626
0.38148,-0.111813 1.006317,-0.3222845 1.729813,-0.3222845 0.664301,0 1.085244,0.3749024 1.085244,0.9076588 z
M 18.581207,4.001534 18.502281,4.4882494 c 0.716918,0.1249675 2.006056,0.2565122 2.709821,0.3025529 l
0.07893,-0.4998699 c -0.624841,-0.00658 -2.00606,-0.138122 -2.709825,-0.2893984 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path153-0" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 18.666711,9.3993055 -0.0855,0.4735609 c 0.776114,0.1446996 1.887667,0.2893986
2.525659,0.3420166 L 21.17264,9.7347445 C 20.567533,9.6952811 19.350744,9.5440046 18.666711,9.3993055 Z m
2.637472,1.8218945 -0.30913,-0.348594 c -0.05919,0.02631 -0.19074,0.05262 -0.295976,0.06577 -0.486715,0.06577
-1.966593,0.164431 -2.334918,0.171008 -0.197317,0.0066 -0.388057,0 -0.532757,-0.01315 l 0.04604,0.565643 c
0.138122,-0.01973 0.302553,-0.03946 0.506447,-0.0592 0.388057,-0.03289 1.460147,-0.124967 1.960017,-0.157853
-0.624838,0.631414 -2.367805,2.361227 -2.624318,2.624317 -0.11839,0.11839 -0.230203,0.210471
-0.315707,0.276244 l 0.493293,0.342016 c 0.368325,-0.460407 1.052358,-1.183902 1.295715,-1.407528
0.144699,-0.138122 0.295976,-0.230204 0.460407,-0.230204 0.177585,0 0.315707,0.111813 0.388057,0.328862
0.0592,0.184163 0.151276,0.559065 0.217048,0.749805 0.138122,0.420943 0.460407,0.539333 0.973431,0.539333
0.335439,0 0.927391,-0.04604 1.19048,-0.09866 l 0.03289,-0.539
334 c -0
.295975,0.07893 -0.789268,0.131545 -1.203634,0.131545 -0.322284,0 -0.473561,-0.09866 -0.545911,-0.342016
-0.07235,-0.203894 -0.151276,-0.526179 -0.217048,-0.716919 -0.0855,-0.249935 -0.230204,-0.42752
-0.486716,-0.453829 -0.05262,-0.01315 -0.171008,-0.02631 -0.230203,-0.01315 0.230203,-0.249935
0.940545,-0.907658 1.183902,-1.131284 0.07235,-0.06577 0.230204,-0.197317 0.348594,-0.282821 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path155-8" />
+ </g>
+ <g
+ aria-label="ABCD "
+
style="font-style:normal;font-weight:normal;font-size:6.5772357px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;writing-mode:tb-rl;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.16443089"
+ id="text92-9-1">
+ <path
+ inkscape:connector-curvature="0"
+ d="m 9.2651841,-2.8439994 v 0.664301 l 4.8342679,-1.861358 v -0.743228 L 9.2651841,-6.62591 v
0.6379916 l 1.4733009,0.545911 v 2.052097 z m 1.9468619,-2.453309 0.769536,0.289398 c 0.539334,0.197317
1.065513,0.394635 1.624578,0.578797 v 0.02631 c -0.552488,0.197317 -1.078667,0.388057 -1.624578,0.585374 l
-0.769536,0.289398 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path158-9" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 9.4789439,-0.8565229 v 1.775854 c 0,1.341756 0.4275203,2.006056 1.4141061,2.006056
0.637991,0 1.039203,-0.407788 1.151016,-1.078666 h 0.03289 c 0.157854,0.526179 0.57222,0.776114
1.04578,0.776114 0.855041,0 1.19048,-0.677456 1.19048,-1.841626 v -1.637732 z m 2.7755931,0.605106 h 1.578537
v 0.986585 c 0,0.868195 -0.210472,1.275984 -0.789268,1.275984 -0.545911,0 -0.789269,-0.407789
-0.789269,-1.328602 z m -2.2888777,0 h 1.8153167 v 1.078666 c 0,1.045781 -0.269666,1.493033
-0.868195,1.493033 -0.710341,0 -0.9471217,-0.473561 -0.9471217,-1.473301 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path160-9" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 9.9952571,8.5040337 0.3946339,-0.342016 c -0.342016,-0.361748 -0.5459104,-0.789268
-0.5459104,-1.322024 0,-1.07209 0.7629594,-1.775854 1.9665934,-1.775854 1.19048,0 1.953439,0.703764
1.953439,1.789008 0,0.466984 -0.19074,0.874772 -0.460406,1.164171 l 0.394634,0.348593 c 0.315707,-0.328862
0.598528,-0.848463 0.598528,-1.519341 0,-1.42726 -0.966853,-2.4072685 -2.505927,-2.4072685 -1.54565,0
-2.4861947,0.9931625 -2.4861947,2.3743825 0,0.723495 0.2433577,1.243097 0.6906098,1.690349 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path162-7" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 9.4394808,9.9455978 v 1.3680652 c 0,1.670618 0.9076592,2.558545 2.4401552,2.558545
1.525918,0 2.394113,-0.887927 2.394113,-2.591431 V 9.9455978 Z m 0.506447,0.5919512 h 3.8213742 v 0.703764 c
0,1.322025 -0.651146,2.006057 -1.887666,2.006057 -1.243098,0 -1.9337082,-0.684032 -1.9337082,-2.006057 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path164-8" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/icons/Color/scalable/gimp-text-dir-ttb-rtl-upright.svg
b/icons/Color/scalable/gimp-text-dir-ttb-rtl-upright.svg
new file mode 100644
index 0000000000..714306ec0f
--- /dev/null
+++ b/icons/Color/scalable/gimp-text-dir-ttb-rtl-upright.svg
@@ -0,0 +1,190 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ inkscape:export-ydpi="90.000000"
+ inkscape:export-xdpi="90.000000"
+ inkscape:export-filename="../24/gimp-text-dir-ttb-rtl-upright.png"
+ width="24"
+ height="24"
+ id="svg11300"
+ sodipodi:version="0.32"
+ inkscape:version="0.92.3 (2405546, 2018-03-11)"
+ sodipodi:docname="gimp-text-dir-ttb-rtl-upright.svg"
+ version="1.0"
+ viewBox="0 0 24 24">
+ <sodipodi:namedview
+ inkscape:cy="19.180643"
+ inkscape:cx="-9.3218635"
+ inkscape:zoom="4.8449868"
+ inkscape:window-height="713"
+ inkscape:window-width="1024"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="0.0"
+ borderopacity="0.17254902"
+ bordercolor="#666"
+ pagecolor="#ffffff"
+ id="base"
+ inkscape:showpageshadow="false"
+ showborder="true"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:current-layer="layer1"
+ width="16px"
+ height="16px"
+ showgrid="true"
+ inkscape:window-maximized="1"
+ inkscape:document-units="px"
+ showguides="true"
+ inkscape:guide-bbox="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4444" />
+ </sodipodi:namedview>
+ <defs
+ id="defs3" />
+ <sodipodi:namedview
+ stroke="#ef2929"
+ fill="#eeeeec"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="0.25490196"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="-14.198652"
+ inkscape:cy="-5.1663457"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:showpageshadow="false"
+ inkscape:window-width="872"
+ inkscape:window-height="659"
+ inkscape:window-x="403"
+ inkscape:window-y="296"
+ width="32px"
+ height="32px"
+ id="namedview73" />
+ <metadata
+ id="metadata4">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:creator>
+ <cc:Agent>
+ <dc:title>Jakub Steiner</dc:title>
+ </cc:Agent>
+ </dc:creator>
+ <dc:source>http://jimmac.musichall.cz</dc:source>
+ <cc:license
+ rdf:resource="http://creativecommons.org/licenses/by-sa/2.0/" />
+ <dc:title />
+ </cc:Work>
+ <cc:License
+ rdf:about="http://creativecommons.org/licenses/by-sa/2.0/">
+ <cc:permits
+ rdf:resource="http://web.resource.org/cc/Reproduction" />
+ <cc:permits
+ rdf:resource="http://web.resource.org/cc/Distribution" />
+ <cc:requires
+ rdf:resource="http://web.resource.org/cc/Notice" />
+ <cc:requires
+ rdf:resource="http://web.resource.org/cc/Attribution" />
+ <cc:permits
+ rdf:resource="http://web.resource.org/cc/DerivativeWorks" />
+ <cc:requires
+ rdf:resource="http://web.resource.org/cc/ShareAlike" />
+ </cc:License>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ transform="translate(0,8)">
+ <g
+ style="display:inline"
+ id="gimp-text-dir-ttb-rtl-upright"
+ inkscape:label="#gimp-text-dir-rtl-upright-24"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90"
+ inkscape:export-filename="../24/gimp-text-dir-ttb-rtl-upright.png">
+ <rect
+ ry="2.1219141"
+ rx="0.41507211"
+ y="-8"
+ x="0"
+ height="24"
+ width="24"
+ id="rect4013-8-5-6-7"
+
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
/>
+ <path
+ sodipodi:nodetypes="cccccccc"
+ inkscape:connector-curvature="0"
+ id="path1105-4"
+ d="M 3.1406495,-5.867637 V 8.825596 h -1.520807 l 2.613754,5.306763 2.617991,-5.306763 H 5.3095985
V -5.867637 Z"
+
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;strok
e-width:
1.87403953px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
/>
+ <g
+ aria-label="あいうえ "
+
style="font-style:normal;font-weight:normal;font-size:6.5772357px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;writing-mode:tb-rl;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.16443089"
+ id="text92">
+ <path
+ inkscape:connector-curvature="0"
+ d="m 21.172638,-5.0444666 c 0.03946,-0.092081 0.09208,-0.2630894 0.131545,-0.3485935 l
-0.513024,-0.1249675 c -0.01316,0.1052358 -0.03946,0.2630894 -0.06577,0.361748 l -0.01973,0.059195 c
-0.07235,-0.00658 -0.151276,-0.00658 -0.230203,-0.00658 -0.315707,0 -0.710341,0.059195 -1.065512,0.1644309
0.01973,-0.2696667 0.03946,-0.5327561 0.06577,-0.7826911 0.776114,-0.039463 1.624578,-0.1183902
2.288878,-0.2302032 l -0.0066,-0.4801383 c -0.651146,0.1446992 -1.420683,0.2367805 -2.229683,0.2696667
0.02631,-0.1841626 0.05919,-0.3485935 0.0855,-0.4867154 0.01316,-0.078927 0.03946,-0.1973171
0.07235,-0.2762439 l -0.545911,-0.013154 c 0,0.07235 -0.0066,0.1973171 -0.01315,0.2959756 l
-0.05262,0.4932927 c -0.138122,0.00658 -0.282821,0.00658 -0.420943,0.00658 -0.276244,0 -0.828732,-0.046041
-1.058935,-0.078927 l 0.01973,0.4867154 c 0.263089,0.013154 0.749805,0.032886 1.032626,0.032886 0.11839,0
0.249935,0 0.381479,-0.00658 -0.03289,0.2959756 -0.0592,0.6182601 -0.07235,0.9405447 -
0.874773
,0.3946341 -1.591691,1.2430975 -1.591691,2.0586748 0,0.5393333 0.335439,0.7958455 0.762959,0.7958455
0.342016,0 0.723496,-0.138122 1.07209,-0.3420163 0.03289,0.1249675 0.06577,0.2433577 0.09866,0.3485935 l
0.473561,-0.1381219 c -0.05262,-0.1578537 -0.105236,-0.3354391 -0.151276,-0.5130244 0.532756,-0.4538293
1.04578,-1.1575935 1.400951,-2.0586748 0.591951,0.1644309 0.914236,0.5985284 0.914236,1.0852439 0,0.8155772
-0.703765,1.4075284 -1.854781,1.5324959 l 0.276244,0.4340976 c 1.479878,-0.2367805 2.078406,-1.0392033
2.078406,-1.9468618 0,-0.7037642 -0.480138,-1.2891382 -1.269406,-1.506187 z m -2.23626,0.8681951 c 0,0.473561
0.05919,0.9865853 0.151277,1.4404146 -0.315708,0.2170488 -0.624838,0.3288618 -0.868196,0.3288618 -0.243357,0
-0.368325,-0.1249675 -0.368325,-0.3814797 0,-0.5130244 0.466984,-1.1378618 1.085244,-1.4930325 z m
1.631155,-0.5130244 c -0.269667,0.7037642 -0.64457,1.2102114 -1.065513,1.6114228 -0.07235,-0.3683252
-0.111813,-0.7563822 -0.111813,-1.1575935 v -0.24
9935 c 0
.295976,-0.111813 0.670878,-0.2038943 1.078667,-0.2038943 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path149" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 18.101069,-0.88979127 -0.61826,-0.0131545 c 0.02631,0.15127642 0.03289,0.41436585
0.03289,0.56564227 0,0.37490243 0.0066,1.14443901 0.07235,1.6969268 0.177585,1.644309 0.756382,2.2494146
1.348333,2.2494146 0.447252,0 0.828732,-0.3683252 1.216789,-1.453569 l -0.41437,-0.4538293 c
-0.157854,0.6379919 -0.453829,1.2891382 -0.789268,1.2891382 -0.447252,0 -0.749805,-0.697187
-0.855041,-1.7626992 -0.04604,-0.5196016 -0.05262,-1.10497557 -0.04604,-1.49960972 0,-0.17100812
0.02631,-0.46040649 0.05262,-0.61826015 z m 3.314927,0.17100813 -0.506447,0.17758536 c 0.605105,0.74322763
0.993162,1.99947968 1.098398,3.15049588 l 0.526179,-0.2038943 c -0.09208,-1.0786666 -0.545911,-2.38095931
-1.11813,-3.12418694 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path151" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 21.244988,6.8626315 c 0,1.1378618 -1.07209,1.7495447 -2.61774,1.9402846 l 0.289398,0.4932926
c 1.650887,-0.2499349 2.88083,-1.032626 2.88083,-2.4138455 0,-0.9076585 -0.670878,-1.4141056
-1.578537,-1.4141056 -0.723496,0 -1.453569,0.2038943 -1.907398,0.30913 -0.177586,0.039464 -0.401212,0.078927
-0.578797,0.092081 l 0.157854,0.5919512 c 0.164431,-0.052618 0.348593,-0.1315447 0.539333,-0.1841626
0.38148,-0.111813 1.006317,-0.3222845 1.729813,-0.3222845 0.664301,0 1.085244,0.3749024 1.085244,0.9076588 z
M 18.581207,4.001534 18.502281,4.4882494 c 0.716918,0.1249675 2.006056,0.2565122 2.709821,0.3025529 l
0.07893,-0.4998699 c -0.624841,-0.00658 -2.00606,-0.138122 -2.709825,-0.2893984 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path153" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 18.666711,9.3993055 -0.0855,0.4735609 c 0.776114,0.1446996 1.887667,0.2893986
2.525659,0.3420166 L 21.17264,9.7347445 C 20.567533,9.6952811 19.350744,9.5440046 18.666711,9.3993055 Z m
2.637472,1.8218945 -0.30913,-0.348594 c -0.05919,0.02631 -0.19074,0.05262 -0.295976,0.06577 -0.486715,0.06577
-1.966593,0.164431 -2.334918,0.171008 -0.197317,0.0066 -0.388057,0 -0.532757,-0.01315 l 0.04604,0.565643 c
0.138122,-0.01973 0.302553,-0.03946 0.506447,-0.0592 0.388057,-0.03289 1.460147,-0.124967 1.960017,-0.157853
-0.624838,0.631414 -2.367805,2.361227 -2.624318,2.624317 -0.11839,0.11839 -0.230203,0.210471
-0.315707,0.276244 l 0.493293,0.342016 c 0.368325,-0.460407 1.052358,-1.183902 1.295715,-1.407528
0.144699,-0.138122 0.295976,-0.230204 0.460407,-0.230204 0.177585,0 0.315707,0.111813 0.388057,0.328862
0.0592,0.184163 0.151276,0.559065 0.217048,0.749805 0.138122,0.420943 0.460407,0.539333 0.973431,0.539333
0.335439,0 0.927391,-0.04604 1.19048,-0.09866 l 0.03289,-0.539
334 c -0
.295975,0.07893 -0.789268,0.131545 -1.203634,0.131545 -0.322284,0 -0.473561,-0.09866 -0.545911,-0.342016
-0.07235,-0.203894 -0.151276,-0.526179 -0.217048,-0.716919 -0.0855,-0.249935 -0.230204,-0.42752
-0.486716,-0.453829 -0.05262,-0.01315 -0.171008,-0.02631 -0.230203,-0.01315 0.230203,-0.249935
0.940545,-0.907658 1.183902,-1.131284 0.07235,-0.06577 0.230204,-0.197317 0.348594,-0.282821 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path155" />
+ </g>
+ <g
+ aria-label="ABCD "
+
style="font-style:normal;font-weight:normal;font-size:6.5772357px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;writing-mode:tb-rl;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.16443089"
+ id="text92-9">
+ <path
+ inkscape:connector-curvature="0"
+ d="m 13.241123,-1.9856701 h 0.664301 l -1.861358,-4.8342682 h -0.743228 l -1.8416256,4.8342682 h
0.6379916 l 0.545911,-1.4733008 h 2.052097 z m -2.453309,-1.9468618 0.289398,-0.7695365 c 0.197317,-0.5393334
0.394635,-1.0655122 0.578797,-1.6245773 h 0.02631 c 0.197317,0.5524878 0.388057,1.0786667 0.585374,1.6245773
l 0.289398,0.7695365 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path158" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 10.005123,3.4515662 h 1.775854 c 1.341756,0 2.006056,-0.4275203 2.006056,-1.4141057
0,-0.6379918 -0.407788,-1.0392032 -1.078666,-1.1510162 V 0.8535581 c 0.526179,-0.15785366
0.776114,-0.57221951 0.776114,-1.04578048 0,-0.85504062 -0.677456,-1.19047962 -1.841626,-1.19047962 h
-1.637732 z m 0.605106,-2.77559345 v -1.57853656 h 0.986585 c 0.868195,0 1.275984,0.21047154
1.275984,0.78926828 0,0.54591056 -0.407789,0.78926828 -1.328602,0.78926828 z m 0,2.28887805 V 1.1495337 h
1.078666 c 1.045781,0 1.493033,0.2696667 1.493033,0.8681951 0,0.7103415 -0.473561,0.947122 -1.473301,0.947122
z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path160" />
+ <path
+ inkscape:connector-curvature="0"
+ d="M 13.833074,8.2771191 13.491058,7.882485 c -0.361748,0.3420162 -0.789268,0.5459106
-1.322024,0.5459106 -1.07209,0 -1.775854,-0.7629594 -1.775854,-1.9665935 0,-1.1904797 0.703764,-1.953439
1.789008,-1.953439 0.466984,0 0.874772,0.1907398 1.164171,0.4604065 L 13.694952,4.5741354 C
13.36609,4.2584281 12.846489,3.975607 12.175611,3.975607 c -1.42726,0 -2.4072685,0.9668536
-2.4072685,2.5059268 0,1.5456504 0.9931625,2.4861951 2.3743825,2.4861951 0.723495,0 1.243097,-0.2433577
1.690349,-0.6906098 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path162" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 9.89331,14.326037 h 1.368065 c 1.670618,0 2.558545,-0.907659 2.558545,-2.440155 0,-1.525918
-0.887927,-2.3941133 -2.591431,-2.3941133 H 9.89331 Z M 10.485261,13.81959 V 9.9982158 h 0.703764 c
1.322025,0 2.006057,0.6511462 2.006057,1.8876662 0,1.243098 -0.684032,1.933708 -2.006057,1.933708 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path164" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/icons/Color/scalable/gimp-text-dir-ttb-rtl.svg b/icons/Color/scalable/gimp-text-dir-ttb-rtl.svg
new file mode 100644
index 0000000000..7606d33038
--- /dev/null
+++ b/icons/Color/scalable/gimp-text-dir-ttb-rtl.svg
@@ -0,0 +1,208 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ inkscape:export-ydpi="96"
+ inkscape:export-xdpi="96"
+ inkscape:export-filename="../24/gimp-text-dir-ttb-rtl.png"
+ width="24"
+ height="24"
+ id="svg11300"
+ sodipodi:version="0.32"
+ inkscape:version="0.92.3 (2405546, 2018-03-11)"
+ sodipodi:docname="gimp-text-dir-ttb-rtl.svg"
+ version="1.0"
+ viewBox="0 0 24 24">
+ <sodipodi:namedview
+ inkscape:cy="6.7858715"
+ inkscape:cx="5.4859635"
+ inkscape:zoom="11.313708"
+ inkscape:window-height="713"
+ inkscape:window-width="1024"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="0.0"
+ borderopacity="0.17254902"
+ bordercolor="#666"
+ pagecolor="#ffffff"
+ id="base"
+ inkscape:showpageshadow="false"
+ showborder="true"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:current-layer="layer1"
+ width="16px"
+ height="16px"
+ showgrid="true"
+ inkscape:window-maximized="1"
+ inkscape:document-units="px"
+ showguides="true"
+ inkscape:guide-bbox="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4444" />
+ </sodipodi:namedview>
+ <defs
+ id="defs3" />
+ <sodipodi:namedview
+ stroke="#ef2929"
+ fill="#eeeeec"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="0.25490196"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="-14.198652"
+ inkscape:cy="-5.1663457"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:showpageshadow="false"
+ inkscape:window-width="872"
+ inkscape:window-height="659"
+ inkscape:window-x="403"
+ inkscape:window-y="296"
+ width="32px"
+ height="32px"
+ id="namedview73" />
+ <metadata
+ id="metadata4">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:creator>
+ <cc:Agent>
+ <dc:title>Jakub Steiner</dc:title>
+ </cc:Agent>
+ </dc:creator>
+ <dc:source>http://jimmac.musichall.cz</dc:source>
+ <cc:license
+ rdf:resource="http://creativecommons.org/licenses/by-sa/2.0/" />
+ <dc:title />
+ </cc:Work>
+ <cc:License
+ rdf:about="http://creativecommons.org/licenses/by-sa/2.0/">
+ <cc:permits
+ rdf:resource="http://web.resource.org/cc/Reproduction" />
+ <cc:permits
+ rdf:resource="http://web.resource.org/cc/Distribution" />
+ <cc:requires
+ rdf:resource="http://web.resource.org/cc/Notice" />
+ <cc:requires
+ rdf:resource="http://web.resource.org/cc/Attribution" />
+ <cc:permits
+ rdf:resource="http://web.resource.org/cc/DerivativeWorks" />
+ <cc:requires
+ rdf:resource="http://web.resource.org/cc/ShareAlike" />
+ </cc:License>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ transform="translate(0,8)">
+ <g
+ style="display:inline"
+ id="gimp-text-dir-ttb-rtl"
+ inkscape:label="#gimp-text-dir-rtl-24"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90"
+ inkscape:export-filename="../24/gimp-text-dir-ttb-rtl.png">
+ <rect
+ ry="2.1219141"
+ rx="0.41507211"
+ y="-8"
+ x="0"
+ height="24"
+ width="24"
+ id="rect4013-8-5-6"
+
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
/>
+ <path
+ sodipodi:nodetypes="cccccccc"
+ inkscape:connector-curvature="0"
+ id="path1105"
+ d="M 3.1406495,-5.867637 V 8.825596 h -1.520807 l 2.613754,5.306763 2.617991,-5.306763 H 5.3095985
V -5.867637 Z"
+
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;strok
e-width:
1.87403953px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
/>
+ <g
+ aria-label="あいうえ
+"
+
style="font-style:normal;font-weight:normal;font-size:6.5772357px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;writing-mode:tb-rl;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.16443089"
+ id="text92">
+ <path
+ d="m 21.172638,-5.0444666 c 0.03946,-0.092081 0.09208,-0.2630894 0.131545,-0.3485935 l
-0.513024,-0.1249675 c -0.01316,0.1052358 -0.03946,0.2630894 -0.06577,0.361748 l -0.01973,0.059195 c
-0.07235,-0.00658 -0.151276,-0.00658 -0.230203,-0.00658 -0.315707,0 -0.710341,0.059195 -1.065512,0.1644309
0.01973,-0.2696667 0.03946,-0.5327561 0.06577,-0.7826911 0.776114,-0.039463 1.624578,-0.1183902
2.288878,-0.2302032 l -0.0066,-0.4801383 c -0.651146,0.1446992 -1.420683,0.2367805 -2.229683,0.2696667
0.02631,-0.1841626 0.05919,-0.3485935 0.0855,-0.4867154 0.01316,-0.078927 0.03946,-0.1973171
0.07235,-0.2762439 l -0.545911,-0.013154 c 0,0.07235 -0.0066,0.1973171 -0.01315,0.2959756 l
-0.05262,0.4932927 c -0.138122,0.00658 -0.282821,0.00658 -0.420943,0.00658 -0.276244,0 -0.828732,-0.046041
-1.058935,-0.078927 l 0.01973,0.4867154 c 0.263089,0.013154 0.749805,0.032886 1.032626,0.032886 0.11839,0
0.249935,0 0.381479,-0.00658 -0.03289,0.2959756 -0.0592,0.6182601 -0.07235,0.9405447 -
0.874773
,0.3946341 -1.591691,1.2430975 -1.591691,2.0586748 0,0.5393333 0.335439,0.7958455 0.762959,0.7958455
0.342016,0 0.723496,-0.138122 1.07209,-0.3420163 0.03289,0.1249675 0.06577,0.2433577 0.09866,0.3485935 l
0.473561,-0.1381219 c -0.05262,-0.1578537 -0.105236,-0.3354391 -0.151276,-0.5130244 0.532756,-0.4538293
1.04578,-1.1575935 1.400951,-2.0586748 0.591951,0.1644309 0.914236,0.5985284 0.914236,1.0852439 0,0.8155772
-0.703765,1.4075284 -1.854781,1.5324959 l 0.276244,0.4340976 c 1.479878,-0.2367805 2.078406,-1.0392033
2.078406,-1.9468618 0,-0.7037642 -0.480138,-1.2891382 -1.269406,-1.506187 z m -2.23626,0.8681951 c 0,0.473561
0.05919,0.9865853 0.151277,1.4404146 -0.315708,0.2170488 -0.624838,0.3288618 -0.868196,0.3288618 -0.243357,0
-0.368325,-0.1249675 -0.368325,-0.3814797 0,-0.5130244 0.466984,-1.1378618 1.085244,-1.4930325 z m
1.631155,-0.5130244 c -0.269667,0.7037642 -0.64457,1.2102114 -1.065513,1.6114228 -0.07235,-0.3683252
-0.111813,-0.7563822 -0.111813,-1.1575935 v -0.24
9935 c 0
.295976,-0.111813 0.670878,-0.2038943 1.078667,-0.2038943 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path149" />
+ <path
+ d="m 18.101069,-0.88979127 -0.61826,-0.0131545 c 0.02631,0.15127642 0.03289,0.41436585
0.03289,0.56564227 0,0.37490243 0.0066,1.14443901 0.07235,1.69692677 0.177585,1.644309 0.756382,2.2494146
1.348333,2.2494146 0.447252,0 0.828732,-0.3683252 1.216789,-1.453569 L 19.738801,1.7016396 c
-0.157854,0.6379919 -0.453829,1.2891382 -0.789268,1.2891382 -0.447252,0 -0.749805,-0.697187
-0.855041,-1.7626992 -0.04604,-0.5196016 -0.05262,-1.10497557 -0.04604,-1.49960972 0,-0.17100812
0.02631,-0.46040649 0.05262,-0.61826015 z m 3.314927,0.17100813 -0.506447,0.17758536 c 0.605105,0.74322763
0.993162,1.99947968 1.098398,3.15049588 l 0.526179,-0.2038943 c -0.09208,-1.0786666 -0.545911,-2.38095931
-1.11813,-3.12418694 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path151" />
+ <path
+ d="m 21.244988,6.8626315 c 0,1.1378618 -1.07209,1.7495447 -2.61774,1.9402846 l 0.289398,0.4932926
c 1.650887,-0.2499349 2.88083,-1.032626 2.88083,-2.4138455 0,-0.9076585 -0.670878,-1.4141056
-1.578537,-1.4141056 -0.723496,0 -1.453569,0.2038943 -1.907398,0.30913 -0.177586,0.039464 -0.401212,0.078927
-0.578797,0.092081 l 0.157854,0.5919512 c 0.164431,-0.052618 0.348593,-0.1315447 0.539333,-0.1841626
0.38148,-0.111813 1.006317,-0.3222845 1.729813,-0.3222845 0.664301,0 1.085244,0.3749024 1.085244,0.9076585 z
M 18.581207,4.001534 18.502281,4.4882494 c 0.716918,0.1249675 2.006056,0.2565122 2.709821,0.3025529 l
0.07893,-0.4998699 C 20.666191,4.2843551 19.284972,4.1528104 18.581207,4.001534 Z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path153" />
+ <path
+ d="m 18.666711,9.3993055 -0.0855,0.4735609 c 0.776114,0.1446996 1.887667,0.2893986
2.525659,0.3420166 l 0.06577,-0.4801385 C 20.567533,9.6952811 19.350744,9.5440046 18.666711,9.3993055 Z m
2.637472,1.8218945 -0.30913,-0.348594 c -0.05919,0.02631 -0.19074,0.05262 -0.295976,0.06577 -0.486715,0.06577
-1.966593,0.164431 -2.334918,0.171008 -0.197317,0.0066 -0.388057,0 -0.532757,-0.01315 l 0.04604,0.565643 c
0.138122,-0.01973 0.302553,-0.03946 0.506447,-0.0592 0.388057,-0.03289 1.460147,-0.124967 1.960017,-0.157853
-0.624838,0.631414 -2.367805,2.361227 -2.624318,2.624317 -0.11839,0.11839 -0.230203,0.210471
-0.315707,0.276244 l 0.493293,0.342016 c 0.368325,-0.460407 1.052358,-1.183902 1.295715,-1.407528
0.144699,-0.138122 0.295976,-0.230204 0.460407,-0.230204 0.177585,0 0.315707,0.111813 0.388057,0.328862
0.0592,0.184163 0.151276,0.559065 0.217048,0.749805 0.138122,0.420943 0.460407,0.539333 0.973431,0.539333
0.335439,0 0.927391,-0.04604 1.19048,-0.09866 l 0.03289,-0.539
334 c -0
.295975,0.07893 -0.789268,0.131545 -1.203634,0.131545 -0.322284,0 -0.473561,-0.09866 -0.545911,-0.342016
-0.07235,-0.203894 -0.151276,-0.526179 -0.217048,-0.716919 -0.0855,-0.249935 -0.230204,-0.42752
-0.486716,-0.453829 -0.05262,-0.01315 -0.171008,-0.02631 -0.230203,-0.01315 0.230203,-0.249935
0.940545,-0.907658 1.183902,-1.131284 0.07235,-0.06577 0.230204,-0.197317 0.348594,-0.282821 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path155" />
+ </g>
+ <g
+ aria-label="ABCD
+"
+
style="font-style:normal;font-weight:normal;font-size:6.5772357px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;writing-mode:tb-rl;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.16443089"
+ id="text92-9">
+ <path
+ d="m 9.2651841,-2.8439994 v 0.664301 l 4.8342679,-1.861358 v -0.743228 L 9.2651841,-6.62591 v
0.6379916 l 1.4733009,0.545911 v 2.052097 z m 1.9468619,-2.453309 0.769536,0.289398 c 0.539334,0.197317
1.065513,0.394635 1.624578,0.578797 v 0.02631 c -0.552488,0.197317 -1.078667,0.388057 -1.624578,0.585374 l
-0.769536,0.289398 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path158"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 9.4789439,-0.85652291 v 1.775854 c 0,1.34175601 0.4275203,2.00605601 1.4141061,2.00605601
0.637991,0 1.039203,-0.407788 1.151016,-1.078666 h 0.03289 c 0.157854,0.526179 0.57222,0.776114
1.04578,0.776114 0.855041,0 1.19048,-0.677456 1.19048,-1.84162601 v -1.637732 z m 2.7755931,0.605106 h
1.578537 v 0.986585 c 0,0.86819501 -0.210472,1.27598401 -0.789268,1.27598401 -0.545911,0 -0.789269,-0.407789
-0.789269,-1.32860201 z m -2.2888777,0 h 1.8153167 v 1.078666 c 0,1.04578101 -0.269666,1.49303301
-0.868195,1.49303301 -0.710341,0 -0.9471217,-0.473561 -0.9471217,-1.47330101 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path160"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 9.9952571,8.5040337 0.3946339,-0.342016 c -0.342016,-0.361748 -0.5459104,-0.789268
-0.5459104,-1.322024 0,-1.07209 0.7629594,-1.775854 1.9665934,-1.775854 1.19048,0 1.953439,0.703764
1.953439,1.789008 0,0.466984 -0.19074,0.874772 -0.460406,1.164171 l 0.394634,0.348593 c 0.315707,-0.328862
0.598528,-0.848463 0.598528,-1.519341 0,-1.42726 -0.966853,-2.4072685 -2.505927,-2.4072685 -1.54565,0
-2.4861947,0.9931625 -2.4861947,2.3743825 0,0.723495 0.2433577,1.243097 0.6906098,1.690349 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path162"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 9.4394808,9.9455978 v 1.3680652 c 0,1.670618 0.9076592,2.558545 2.4401552,2.558545
1.525918,0 2.394113,-0.887927 2.394113,-2.591431 V 9.9455978 Z m 0.506447,0.5919512 h 3.8213742 v 0.703764 c
0,1.322025 -0.651146,2.006057 -1.887666,2.006057 -1.243098,0 -1.9337082,-0.684032 -1.9337082,-2.006057 z"
+ style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089"
+ id="path164"
+ inkscape:connector-curvature="0" />
+ </g>
+ </g>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:40px;line-height:1.25;font-family:'Noto Sans
CJK
JP';letter-spacing:0px;word-spacing:0px;writing-mode:tb-rl;fill:#000000;fill-opacity:1;stroke:none;-inkscape-font-specification:'Noto
Sans CJK JP';font-stretch:normal;font-variant:normal;"
+ x="-50"
+ y="-49"
+ id="text84"><tspan
+ sodipodi:role="line"
+ id="tspan82"
+ x="-49"
+ y="-75" /></text>
+ <text
+ xml:space="preserve"
+
style="font-style:normal;font-weight:normal;font-size:40px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;writing-mode:tb-rl;"
+ x="-100"
+ y="-109"
+ id="text88"><tspan
+ sodipodi:role="line"
+ id="tspan86"
+ x="-100"
+ y="-68.800003" /></text>
+ </g>
+</svg>
diff --git a/icons/Legacy/24/gimp-text-dir-ttb-ltr-upright.png
b/icons/Legacy/24/gimp-text-dir-ttb-ltr-upright.png
new file mode 100644
index 0000000000..08556b3b2a
Binary files /dev/null and b/icons/Legacy/24/gimp-text-dir-ttb-ltr-upright.png differ
diff --git a/icons/Legacy/24/gimp-text-dir-ttb-ltr-upright.xcf
b/icons/Legacy/24/gimp-text-dir-ttb-ltr-upright.xcf
new file mode 100644
index 0000000000..f4ef93ff42
Binary files /dev/null and b/icons/Legacy/24/gimp-text-dir-ttb-ltr-upright.xcf differ
diff --git a/icons/Legacy/24/gimp-text-dir-ttb-ltr.png b/icons/Legacy/24/gimp-text-dir-ttb-ltr.png
new file mode 100644
index 0000000000..5445cb8509
Binary files /dev/null and b/icons/Legacy/24/gimp-text-dir-ttb-ltr.png differ
diff --git a/icons/Legacy/24/gimp-text-dir-ttb-ltr.xcf b/icons/Legacy/24/gimp-text-dir-ttb-ltr.xcf
new file mode 100644
index 0000000000..7eab269f9a
Binary files /dev/null and b/icons/Legacy/24/gimp-text-dir-ttb-ltr.xcf differ
diff --git a/icons/Legacy/24/gimp-text-dir-ttb-rtl-upright.png
b/icons/Legacy/24/gimp-text-dir-ttb-rtl-upright.png
new file mode 100644
index 0000000000..7361e95bf5
Binary files /dev/null and b/icons/Legacy/24/gimp-text-dir-ttb-rtl-upright.png differ
diff --git a/icons/Legacy/24/gimp-text-dir-ttb-rtl-upright.xcf
b/icons/Legacy/24/gimp-text-dir-ttb-rtl-upright.xcf
new file mode 100644
index 0000000000..711c0c6563
Binary files /dev/null and b/icons/Legacy/24/gimp-text-dir-ttb-rtl-upright.xcf differ
diff --git a/icons/Legacy/24/gimp-text-dir-ttb-rtl.png b/icons/Legacy/24/gimp-text-dir-ttb-rtl.png
new file mode 100644
index 0000000000..3d622f4df3
Binary files /dev/null and b/icons/Legacy/24/gimp-text-dir-ttb-rtl.png differ
diff --git a/icons/Legacy/24/gimp-text-dir-ttb-rtl.xcf b/icons/Legacy/24/gimp-text-dir-ttb-rtl.xcf
new file mode 100644
index 0000000000..d4746f028b
Binary files /dev/null and b/icons/Legacy/24/gimp-text-dir-ttb-rtl.xcf differ
diff --git a/icons/Legacy/Makefile.am b/icons/Legacy/Makefile.am
index a5f8d57cbf..a16c12634a 100644
--- a/icons/Legacy/Makefile.am
+++ b/icons/Legacy/Makefile.am
@@ -389,6 +389,10 @@ icons24_DATA = \
24/gimp-print-resolution.png \
24/gimp-sample-point.png \
24/gimp-template.png \
+ 24/gimp-text-dir-ttb-rtl.png \
+ 24/gimp-text-dir-ttb-rtl-upright.png \
+ 24/gimp-text-dir-ttb-ltr.png \
+ 24/gimp-text-dir-ttb-ltr-upright.png \
24/gimp-text-layer.png \
24/gimp-toilet-paper.png \
24/gimp-tool-options.png \
diff --git a/icons/Symbolic/24/gimp-text-dir-ttb-ltr-upright.png
b/icons/Symbolic/24/gimp-text-dir-ttb-ltr-upright.png
new file mode 100644
index 0000000000..87461c4937
Binary files /dev/null and b/icons/Symbolic/24/gimp-text-dir-ttb-ltr-upright.png differ
diff --git a/icons/Symbolic/24/gimp-text-dir-ttb-ltr.png b/icons/Symbolic/24/gimp-text-dir-ttb-ltr.png
new file mode 100644
index 0000000000..03412a184f
Binary files /dev/null and b/icons/Symbolic/24/gimp-text-dir-ttb-ltr.png differ
diff --git a/icons/Symbolic/24/gimp-text-dir-ttb-rtl-upright.png
b/icons/Symbolic/24/gimp-text-dir-ttb-rtl-upright.png
new file mode 100644
index 0000000000..90fdf0156c
Binary files /dev/null and b/icons/Symbolic/24/gimp-text-dir-ttb-rtl-upright.png differ
diff --git a/icons/Symbolic/24/gimp-text-dir-ttb-rtl.png b/icons/Symbolic/24/gimp-text-dir-ttb-rtl.png
new file mode 100644
index 0000000000..830a9c7a60
Binary files /dev/null and b/icons/Symbolic/24/gimp-text-dir-ttb-rtl.png differ
diff --git a/icons/Symbolic/scalable/gimp-text-dir-ttb-ltr-symbolic.svg
b/icons/Symbolic/scalable/gimp-text-dir-ttb-ltr-symbolic.svg
new file mode 100644
index 0000000000..4c5db3a24c
--- /dev/null
+++ b/icons/Symbolic/scalable/gimp-text-dir-ttb-ltr-symbolic.svg
@@ -0,0 +1,174 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:osb="http://www.openswatchbook.org/uri/2009/osb"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ viewBox="0 0 23.999999 24"
+ id="svg7384"
+ height="24"
+ width="24"
+ version="1.1"
+ inkscape:version="0.92.3 (2405546, 2018-03-11)"
+ sodipodi:docname="gimp-text-dir-ttb-ltr.svg"
+ inkscape:export-filename="../24/gimp-text-dir-ttb-ltr.png"
+ inkscape:export-xdpi="96"
+ inkscape:export-ydpi="96">
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1024"
+ inkscape:window-height="713"
+ id="namedview1510"
+ showgrid="false"
+ inkscape:zoom="1.7383042"
+ inkscape:cx="-91.191779"
+ inkscape:cy="65.026482"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="svg7384" />
+ <metadata
+ id="metadata90">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ <dc:contributor>
+ <cc:Agent>
+ <dc:title>Barbara Muraus, Jakub Steiner, Klaus Staedtler</dc:title>
+ </cc:Agent>
+ </dc:contributor>
+ <dc:description>Images originally created as the "Art Libre" icon set. Extended and
adopted for GIMP</dc:description>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs7386">
+ <linearGradient
+ gradientTransform="matrix(0.34682586,0,0,0.30620888,-154.35207,-275.32368)"
+ osb:paint="solid"
+ id="linearGradient19282-4">
+ <stop
+ id="stop19284-0"
+ offset="0"
+ style="stop-color:#bebebe;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(999.31744,213.33274)"
+ gradientUnits="userSpaceOnUse"
+ y2="1037.3622"
+ x2="21"
+ y1="1037.3622"
+ x1="13"
+ id="linearGradient9986"
+ xlink:href="#linearGradient19282-4" />
+ <linearGradient
+ gradientTransform="translate(999.31744,213.33274)"
+ gradientUnits="userSpaceOnUse"
+ y2="1037.8621"
+ x2="9"
+ y1="1037.8621"
+ x1="0.99999964"
+ id="linearGradient9992"
+ xlink:href="#linearGradient19282-4" />
+ <linearGradient
+ gradientTransform="translate(999.31744,213.33274)"
+ gradientUnits="userSpaceOnUse"
+ y2="1045.3622"
+ x2="19"
+ y1="1045.3622"
+ x1="5"
+ id="linearGradient9998"
+ xlink:href="#linearGradient19282-4" />
+ </defs>
+ <g
+ transform="translate(0,8)"
+ style="display:inline"
+ id="gimp-text-dir-ttb-ltr"
+ inkscape:label="#gimp-text-dir-ltr-24"
+ inkscape:export-xdpi="96"
+ inkscape:export-ydpi="96"
+ inkscape:export-filename="../24/gimp-text-dir-ttb-ltr.png">
+ <rect
+ ry="2.1219141"
+ rx="0.41507211"
+ y="-8"
+ x="0"
+ height="24"
+ width="24"
+ id="rect4013-8-5-6-4"
+
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
/>
+ <path
+ sodipodi:nodetypes="cccccccc"
+ inkscape:connector-curvature="0"
+ id="path1105-9-5"
+ d="M 18.309358,-5.867637 V 8.825596 h -1.520807 l 2.613754,5.306763 2.617991,-5.306763 H 20.478307 V
-5.867637 Z"
+
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-
width:1.
87403953px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
/>
+ <g
+ aria-label="あいうえ "
+
style="font-style:normal;font-weight:normal;font-size:6.5772357px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;writing-mode:tb-rl;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:0.16443089"
+ id="text92-93"
+ transform="translate(-15.379221)">
+ <path
+ inkscape:connector-curvature="0"
+ d="m 21.172638,-5.0444666 c 0.03946,-0.092081 0.09208,-0.2630894 0.131545,-0.3485935 l
-0.513024,-0.1249675 c -0.01316,0.1052358 -0.03946,0.2630894 -0.06577,0.361748 l -0.01973,0.059195 c
-0.07235,-0.00658 -0.151276,-0.00658 -0.230203,-0.00658 -0.315707,0 -0.710341,0.059195 -1.065512,0.1644309
0.01973,-0.2696667 0.03946,-0.5327561 0.06577,-0.7826911 0.776114,-0.039463 1.624578,-0.1183902
2.288878,-0.2302032 l -0.0066,-0.4801383 c -0.651146,0.1446992 -1.420683,0.2367805 -2.229683,0.2696667
0.02631,-0.1841626 0.05919,-0.3485935 0.0855,-0.4867154 0.01316,-0.078927 0.03946,-0.1973171
0.07235,-0.2762439 l -0.545911,-0.013154 c 0,0.07235 -0.0066,0.1973171 -0.01315,0.2959756 l
-0.05262,0.4932927 c -0.138122,0.00658 -0.282821,0.00658 -0.420943,0.00658 -0.276244,0 -0.828732,-0.046041
-1.058935,-0.078927 l 0.01973,0.4867154 c 0.263089,0.013154 0.749805,0.032886 1.032626,0.032886 0.11839,0
0.249935,0 0.381479,-0.00658 -0.03289,0.2959756 -0.0592,0.6182601 -0.07235,0.9405447 -0.
874773,0
.3946341 -1.591691,1.2430975 -1.591691,2.0586748 0,0.5393333 0.335439,0.7958455 0.762959,0.7958455
0.342016,0 0.723496,-0.138122 1.07209,-0.3420163 0.03289,0.1249675 0.06577,0.2433577 0.09866,0.3485935 l
0.473561,-0.1381219 c -0.05262,-0.1578537 -0.105236,-0.3354391 -0.151276,-0.5130244 0.532756,-0.4538293
1.04578,-1.1575935 1.400951,-2.0586748 0.591951,0.1644309 0.914236,0.5985284 0.914236,1.0852439 0,0.8155772
-0.703765,1.4075284 -1.854781,1.5324959 l 0.276244,0.4340976 c 1.479878,-0.2367805 2.078406,-1.0392033
2.078406,-1.9468618 0,-0.7037642 -0.480138,-1.2891382 -1.269406,-1.506187 z m -2.23626,0.8681951 c 0,0.473561
0.05919,0.9865853 0.151277,1.4404146 -0.315708,0.2170488 -0.624838,0.3288618 -0.868196,0.3288618 -0.243357,0
-0.368325,-0.1249675 -0.368325,-0.3814797 0,-0.5130244 0.466984,-1.1378618 1.085244,-1.4930325 z m
1.631155,-0.5130244 c -0.269667,0.7037642 -0.64457,1.2102114 -1.065513,1.6114228 -0.07235,-0.3683252
-0.111813,-0.7563822 -0.111813,-1.1575935 v -0.2499
35 c 0.2
95976,-0.111813 0.670878,-0.2038943 1.078667,-0.2038943 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path149-5" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 18.101069,-0.88979127 -0.61826,-0.0131545 c 0.02631,0.15127642 0.03289,0.41436585
0.03289,0.56564227 0,0.37490243 0.0066,1.14443901 0.07235,1.6969268 0.177585,1.644309 0.756382,2.2494146
1.348333,2.2494146 0.447252,0 0.828732,-0.3683252 1.216789,-1.453569 l -0.41437,-0.4538293 c
-0.157854,0.6379919 -0.453829,1.2891382 -0.789268,1.2891382 -0.447252,0 -0.749805,-0.697187
-0.855041,-1.7626992 -0.04604,-0.5196016 -0.05262,-1.10497557 -0.04604,-1.49960972 0,-0.17100812
0.02631,-0.46040649 0.05262,-0.61826015 z m 3.314927,0.17100813 -0.506447,0.17758536 c 0.605105,0.74322763
0.993162,1.99947968 1.098398,3.15049588 l 0.526179,-0.2038943 c -0.09208,-1.0786666 -0.545911,-2.38095931
-1.11813,-3.12418694 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path151-7" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 21.244988,6.8626315 c 0,1.1378618 -1.07209,1.7495447 -2.61774,1.9402846 l 0.289398,0.4932926 c
1.650887,-0.2499349 2.88083,-1.032626 2.88083,-2.4138455 0,-0.9076585 -0.670878,-1.4141056
-1.578537,-1.4141056 -0.723496,0 -1.453569,0.2038943 -1.907398,0.30913 -0.177586,0.039464 -0.401212,0.078927
-0.578797,0.092081 l 0.157854,0.5919512 c 0.164431,-0.052618 0.348593,-0.1315447 0.539333,-0.1841626
0.38148,-0.111813 1.006317,-0.3222845 1.729813,-0.3222845 0.664301,0 1.085244,0.3749024 1.085244,0.9076588 z
M 18.581207,4.001534 18.502281,4.4882494 c 0.716918,0.1249675 2.006056,0.2565122 2.709821,0.3025529 l
0.07893,-0.4998699 c -0.624841,-0.00658 -2.00606,-0.138122 -2.709825,-0.2893984 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path153-0" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 18.666711,9.3993055 -0.0855,0.4735609 c 0.776114,0.1446996 1.887667,0.2893986
2.525659,0.3420166 L 21.17264,9.7347445 C 20.567533,9.6952811 19.350744,9.5440046 18.666711,9.3993055 Z m
2.637472,1.8218945 -0.30913,-0.348594 c -0.05919,0.02631 -0.19074,0.05262 -0.295976,0.06577 -0.486715,0.06577
-1.966593,0.164431 -2.334918,0.171008 -0.197317,0.0066 -0.388057,0 -0.532757,-0.01315 l 0.04604,0.565643 c
0.138122,-0.01973 0.302553,-0.03946 0.506447,-0.0592 0.388057,-0.03289 1.460147,-0.124967 1.960017,-0.157853
-0.624838,0.631414 -2.367805,2.361227 -2.624318,2.624317 -0.11839,0.11839 -0.230203,0.210471
-0.315707,0.276244 l 0.493293,0.342016 c 0.368325,-0.460407 1.052358,-1.183902 1.295715,-1.407528
0.144699,-0.138122 0.295976,-0.230204 0.460407,-0.230204 0.177585,0 0.315707,0.111813 0.388057,0.328862
0.0592,0.184163 0.151276,0.559065 0.217048,0.749805 0.138122,0.420943 0.460407,0.539333 0.973431,0.539333
0.335439,0 0.927391,-0.04604 1.19048,-0.09866 l 0.03289,-0.53933
4 c -0.2
95975,0.07893 -0.789268,0.131545 -1.203634,0.131545 -0.322284,0 -0.473561,-0.09866 -0.545911,-0.342016
-0.07235,-0.203894 -0.151276,-0.526179 -0.217048,-0.716919 -0.0855,-0.249935 -0.230204,-0.42752
-0.486716,-0.453829 -0.05262,-0.01315 -0.171008,-0.02631 -0.230203,-0.01315 0.230203,-0.249935
0.940545,-0.907658 1.183902,-1.131284 0.07235,-0.06577 0.230204,-0.197317 0.348594,-0.282821 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path155-8" />
+ </g>
+ <g
+ aria-label="ABCD "
+
style="font-style:normal;font-weight:normal;font-size:6.5772357px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;writing-mode:tb-rl;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:0.16443089"
+ id="text92-9-1">
+ <path
+ inkscape:connector-curvature="0"
+ d="m 9.2651841,-2.8439994 v 0.664301 l 4.8342679,-1.861358 v -0.743228 L 9.2651841,-6.62591 v
0.6379916 l 1.4733009,0.545911 v 2.052097 z m 1.9468619,-2.453309 0.769536,0.289398 c 0.539334,0.197317
1.065513,0.394635 1.624578,0.578797 v 0.02631 c -0.552488,0.197317 -1.078667,0.388057 -1.624578,0.585374 l
-0.769536,0.289398 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path158-9" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 9.4789439,-0.8565229 v 1.775854 c 0,1.341756 0.4275203,2.006056 1.4141061,2.006056 0.637991,0
1.039203,-0.407788 1.151016,-1.078666 h 0.03289 c 0.157854,0.526179 0.57222,0.776114 1.04578,0.776114
0.855041,0 1.19048,-0.677456 1.19048,-1.841626 v -1.637732 z m 2.7755931,0.605106 h 1.578537 v 0.986585 c
0,0.868195 -0.210472,1.275984 -0.789268,1.275984 -0.545911,0 -0.789269,-0.407789 -0.789269,-1.328602 z m
-2.2888777,0 h 1.8153167 v 1.078666 c 0,1.045781 -0.269666,1.493033 -0.868195,1.493033 -0.710341,0
-0.9471217,-0.473561 -0.9471217,-1.473301 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path160-9" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 9.9952571,8.5040337 0.3946339,-0.342016 c -0.342016,-0.361748 -0.5459104,-0.789268
-0.5459104,-1.322024 0,-1.07209 0.7629594,-1.775854 1.9665934,-1.775854 1.19048,0 1.953439,0.703764
1.953439,1.789008 0,0.466984 -0.19074,0.874772 -0.460406,1.164171 l 0.394634,0.348593 c 0.315707,-0.328862
0.598528,-0.848463 0.598528,-1.519341 0,-1.42726 -0.966853,-2.4072685 -2.505927,-2.4072685 -1.54565,0
-2.4861947,0.9931625 -2.4861947,2.3743825 0,0.723495 0.2433577,1.243097 0.6906098,1.690349 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path162-7" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 9.4394808,9.9455978 v 1.3680652 c 0,1.670618 0.9076592,2.558545 2.4401552,2.558545 1.525918,0
2.394113,-0.887927 2.394113,-2.591431 V 9.9455978 Z m 0.506447,0.5919512 h 3.8213742 v 0.703764 c 0,1.322025
-0.651146,2.006057 -1.887666,2.006057 -1.243098,0 -1.9337082,-0.684032 -1.9337082,-2.006057 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path164-8" />
+ </g>
+ </g>
+</svg>
diff --git a/icons/Symbolic/scalable/gimp-text-dir-ttb-ltr-upright-symbolic.svg
b/icons/Symbolic/scalable/gimp-text-dir-ttb-ltr-upright-symbolic.svg
new file mode 100644
index 0000000000..c7512b02f4
--- /dev/null
+++ b/icons/Symbolic/scalable/gimp-text-dir-ttb-ltr-upright-symbolic.svg
@@ -0,0 +1,174 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:osb="http://www.openswatchbook.org/uri/2009/osb"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ viewBox="0 0 23.999999 24"
+ id="svg7384"
+ height="24"
+ width="24"
+ version="1.1"
+ inkscape:version="0.92.3 (2405546, 2018-03-11)"
+ sodipodi:docname="gimp-text-dir-ttb-ltr-upright.svg"
+ inkscape:export-filename="../24/gimp-text-dir-ttb-ltr-upright.png"
+ inkscape:export-xdpi="96"
+ inkscape:export-ydpi="96">
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1024"
+ inkscape:window-height="713"
+ id="namedview1510"
+ showgrid="false"
+ inkscape:zoom="4.9166667"
+ inkscape:cx="-34.497377"
+ inkscape:cy="8.0505873"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="svg7384" />
+ <metadata
+ id="metadata90">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ <dc:contributor>
+ <cc:Agent>
+ <dc:title>Barbara Muraus, Jakub Steiner, Klaus Staedtler</dc:title>
+ </cc:Agent>
+ </dc:contributor>
+ <dc:description>Images originally created as the "Art Libre" icon set. Extended and
adopted for GIMP</dc:description>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs7386">
+ <linearGradient
+ gradientTransform="matrix(0.34682586,0,0,0.30620888,-154.35207,-275.32368)"
+ osb:paint="solid"
+ id="linearGradient19282-4">
+ <stop
+ id="stop19284-0"
+ offset="0"
+ style="stop-color:#bebebe;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(999.31744,213.33274)"
+ gradientUnits="userSpaceOnUse"
+ y2="1037.3622"
+ x2="21"
+ y1="1037.3622"
+ x1="13"
+ id="linearGradient9986"
+ xlink:href="#linearGradient19282-4" />
+ <linearGradient
+ gradientTransform="translate(999.31744,213.33274)"
+ gradientUnits="userSpaceOnUse"
+ y2="1037.8621"
+ x2="9"
+ y1="1037.8621"
+ x1="0.99999964"
+ id="linearGradient9992"
+ xlink:href="#linearGradient19282-4" />
+ <linearGradient
+ gradientTransform="translate(999.31744,213.33274)"
+ gradientUnits="userSpaceOnUse"
+ y2="1045.3622"
+ x2="19"
+ y1="1045.3622"
+ x1="5"
+ id="linearGradient9998"
+ xlink:href="#linearGradient19282-4" />
+ </defs>
+ <g
+ transform="translate(0,8)"
+ style="display:inline"
+ id="gimp-text-dir-ttb-ltr-upright"
+ inkscape:label="#gimp-text-dir-ltr-upright-24"
+ inkscape:export-xdpi="96"
+ inkscape:export-ydpi="96"
+ inkscape:export-filename="../24/gimp-text-dir-ttb-ltr-upright.png">
+ <rect
+ ry="2.1219141"
+ rx="0.41507211"
+ y="-8"
+ x="0"
+ height="24"
+ width="24"
+ id="rect4013-8-5-6"
+
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
/>
+ <path
+ sodipodi:nodetypes="cccccccc"
+ inkscape:connector-curvature="0"
+ id="path1105-9"
+ d="M 18.309358,-5.867637 V 8.825596 h -1.520807 l 2.613754,5.306763 2.617991,-5.306763 H 20.478307 V
-5.867637 Z"
+
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-
width:1.
87403953px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
/>
+ <g
+ aria-label="あいうえ "
+
style="font-style:normal;font-weight:normal;font-size:6.5772357px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;writing-mode:tb-rl;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:0.16443089"
+ id="text92"
+ transform="translate(-15.379221)">
+ <path
+ inkscape:connector-curvature="0"
+ d="m 21.172638,-5.0444666 c 0.03946,-0.092081 0.09208,-0.2630894 0.131545,-0.3485935 l
-0.513024,-0.1249675 c -0.01316,0.1052358 -0.03946,0.2630894 -0.06577,0.361748 l -0.01973,0.059195 c
-0.07235,-0.00658 -0.151276,-0.00658 -0.230203,-0.00658 -0.315707,0 -0.710341,0.059195 -1.065512,0.1644309
0.01973,-0.2696667 0.03946,-0.5327561 0.06577,-0.7826911 0.776114,-0.039463 1.624578,-0.1183902
2.288878,-0.2302032 l -0.0066,-0.4801383 c -0.651146,0.1446992 -1.420683,0.2367805 -2.229683,0.2696667
0.02631,-0.1841626 0.05919,-0.3485935 0.0855,-0.4867154 0.01316,-0.078927 0.03946,-0.1973171
0.07235,-0.2762439 l -0.545911,-0.013154 c 0,0.07235 -0.0066,0.1973171 -0.01315,0.2959756 l
-0.05262,0.4932927 c -0.138122,0.00658 -0.282821,0.00658 -0.420943,0.00658 -0.276244,0 -0.828732,-0.046041
-1.058935,-0.078927 l 0.01973,0.4867154 c 0.263089,0.013154 0.749805,0.032886 1.032626,0.032886 0.11839,0
0.249935,0 0.381479,-0.00658 -0.03289,0.2959756 -0.0592,0.6182601 -0.07235,0.9405447 -0.
874773,0
.3946341 -1.591691,1.2430975 -1.591691,2.0586748 0,0.5393333 0.335439,0.7958455 0.762959,0.7958455
0.342016,0 0.723496,-0.138122 1.07209,-0.3420163 0.03289,0.1249675 0.06577,0.2433577 0.09866,0.3485935 l
0.473561,-0.1381219 c -0.05262,-0.1578537 -0.105236,-0.3354391 -0.151276,-0.5130244 0.532756,-0.4538293
1.04578,-1.1575935 1.400951,-2.0586748 0.591951,0.1644309 0.914236,0.5985284 0.914236,1.0852439 0,0.8155772
-0.703765,1.4075284 -1.854781,1.5324959 l 0.276244,0.4340976 c 1.479878,-0.2367805 2.078406,-1.0392033
2.078406,-1.9468618 0,-0.7037642 -0.480138,-1.2891382 -1.269406,-1.506187 z m -2.23626,0.8681951 c 0,0.473561
0.05919,0.9865853 0.151277,1.4404146 -0.315708,0.2170488 -0.624838,0.3288618 -0.868196,0.3288618 -0.243357,0
-0.368325,-0.1249675 -0.368325,-0.3814797 0,-0.5130244 0.466984,-1.1378618 1.085244,-1.4930325 z m
1.631155,-0.5130244 c -0.269667,0.7037642 -0.64457,1.2102114 -1.065513,1.6114228 -0.07235,-0.3683252
-0.111813,-0.7563822 -0.111813,-1.1575935 v -0.2499
35 c 0.2
95976,-0.111813 0.670878,-0.2038943 1.078667,-0.2038943 z"
+
style="line-height:0;letter-spacing:-1.13999999px;fill:#bebebe;fill-opacity:1;stroke-width:0.16443089"
+ id="path149" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 18.101069,-0.88979127 -0.61826,-0.0131545 c 0.02631,0.15127642 0.03289,0.41436585
0.03289,0.56564227 0,0.37490243 0.0066,1.14443901 0.07235,1.6969268 0.177585,1.644309 0.756382,2.2494146
1.348333,2.2494146 0.447252,0 0.828732,-0.3683252 1.216789,-1.453569 l -0.41437,-0.4538293 c
-0.157854,0.6379919 -0.453829,1.2891382 -0.789268,1.2891382 -0.447252,0 -0.749805,-0.697187
-0.855041,-1.7626992 -0.04604,-0.5196016 -0.05262,-1.10497557 -0.04604,-1.49960972 0,-0.17100812
0.02631,-0.46040649 0.05262,-0.61826015 z m 3.314927,0.17100813 -0.506447,0.17758536 c 0.605105,0.74322763
0.993162,1.99947968 1.098398,3.15049588 l 0.526179,-0.2038943 c -0.09208,-1.0786666 -0.545911,-2.38095931
-1.11813,-3.12418694 z"
+
style="line-height:0;letter-spacing:-1.13999999px;fill:#bebebe;fill-opacity:1;stroke-width:0.16443089"
+ id="path151" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 21.244988,6.8626315 c 0,1.1378618 -1.07209,1.7495447 -2.61774,1.9402846 l 0.289398,0.4932926 c
1.650887,-0.2499349 2.88083,-1.032626 2.88083,-2.4138455 0,-0.9076585 -0.670878,-1.4141056
-1.578537,-1.4141056 -0.723496,0 -1.453569,0.2038943 -1.907398,0.30913 -0.177586,0.039464 -0.401212,0.078927
-0.578797,0.092081 l 0.157854,0.5919512 c 0.164431,-0.052618 0.348593,-0.1315447 0.539333,-0.1841626
0.38148,-0.111813 1.006317,-0.3222845 1.729813,-0.3222845 0.664301,0 1.085244,0.3749024 1.085244,0.9076588 z
M 18.581207,4.001534 18.502281,4.4882494 c 0.716918,0.1249675 2.006056,0.2565122 2.709821,0.3025529 l
0.07893,-0.4998699 c -0.624841,-0.00658 -2.00606,-0.138122 -2.709825,-0.2893984 z"
+
style="line-height:0;letter-spacing:-1.13999999px;fill:#bebebe;fill-opacity:1;stroke-width:0.16443089"
+ id="path153" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 18.666711,9.3993055 -0.0855,0.4735609 c 0.776114,0.1446996 1.887667,0.2893986
2.525659,0.3420166 L 21.17264,9.7347445 C 20.567533,9.6952811 19.350744,9.5440046 18.666711,9.3993055 Z m
2.637472,1.8218945 -0.30913,-0.348594 c -0.05919,0.02631 -0.19074,0.05262 -0.295976,0.06577 -0.486715,0.06577
-1.966593,0.164431 -2.334918,0.171008 -0.197317,0.0066 -0.388057,0 -0.532757,-0.01315 l 0.04604,0.565643 c
0.138122,-0.01973 0.302553,-0.03946 0.506447,-0.0592 0.388057,-0.03289 1.460147,-0.124967 1.960017,-0.157853
-0.624838,0.631414 -2.367805,2.361227 -2.624318,2.624317 -0.11839,0.11839 -0.230203,0.210471
-0.315707,0.276244 l 0.493293,0.342016 c 0.368325,-0.460407 1.052358,-1.183902 1.295715,-1.407528
0.144699,-0.138122 0.295976,-0.230204 0.460407,-0.230204 0.177585,0 0.315707,0.111813 0.388057,0.328862
0.0592,0.184163 0.151276,0.559065 0.217048,0.749805 0.138122,0.420943 0.460407,0.539333 0.973431,0.539333
0.335439,0 0.927391,-0.04604 1.19048,-0.09866 l 0.03289,-0.53933
4 c -0.2
95975,0.07893 -0.789268,0.131545 -1.203634,0.131545 -0.322284,0 -0.473561,-0.09866 -0.545911,-0.342016
-0.07235,-0.203894 -0.151276,-0.526179 -0.217048,-0.716919 -0.0855,-0.249935 -0.230204,-0.42752
-0.486716,-0.453829 -0.05262,-0.01315 -0.171008,-0.02631 -0.230203,-0.01315 0.230203,-0.249935
0.940545,-0.907658 1.183902,-1.131284 0.07235,-0.06577 0.230204,-0.197317 0.348594,-0.282821 z"
+
style="line-height:0;letter-spacing:-1.13999999px;fill:#bebebe;fill-opacity:1;stroke-width:0.16443089"
+ id="path155" />
+ </g>
+ <g
+ aria-label="ABCD "
+
style="font-style:normal;font-weight:normal;font-size:6.5772357px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;writing-mode:tb-rl;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:0.16443089"
+ id="text92-9">
+ <path
+ inkscape:connector-curvature="0"
+ d="m 13.241123,-1.9856701 h 0.664301 l -1.861358,-4.8342682 h -0.743228 l -1.8416256,4.8342682 h
0.6379916 l 0.545911,-1.4733008 h 2.052097 z m -2.453309,-1.9468618 0.289398,-0.7695365 c 0.197317,-0.5393334
0.394635,-1.0655122 0.578797,-1.6245773 h 0.02631 c 0.197317,0.5524878 0.388057,1.0786667 0.585374,1.6245773
l 0.289398,0.7695365 z"
+
style="line-height:0;letter-spacing:-1.13999999px;fill:#bebebe;fill-opacity:1;stroke-width:0.16443089"
+ id="path158" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 10.005123,3.4515662 h 1.775854 c 1.341756,0 2.006056,-0.4275203 2.006056,-1.4141057
0,-0.6379918 -0.407788,-1.0392032 -1.078666,-1.1510162 V 0.8535581 c 0.526179,-0.15785366
0.776114,-0.57221951 0.776114,-1.04578048 0,-0.85504062 -0.677456,-1.19047962 -1.841626,-1.19047962 h
-1.637732 z m 0.605106,-2.77559345 v -1.57853656 h 0.986585 c 0.868195,0 1.275984,0.21047154
1.275984,0.78926828 0,0.54591056 -0.407789,0.78926828 -1.328602,0.78926828 z m 0,2.28887805 V 1.1495337 h
1.078666 c 1.045781,0 1.493033,0.2696667 1.493033,0.8681951 0,0.7103415 -0.473561,0.947122 -1.473301,0.947122
z"
+
style="line-height:0;letter-spacing:-1.13999999px;fill:#bebebe;fill-opacity:1;stroke-width:0.16443089"
+ id="path160" />
+ <path
+ inkscape:connector-curvature="0"
+ d="M 13.833074,8.2771191 13.491058,7.882485 c -0.361748,0.3420162 -0.789268,0.5459106
-1.322024,0.5459106 -1.07209,0 -1.775854,-0.7629594 -1.775854,-1.9665935 0,-1.1904797 0.703764,-1.953439
1.789008,-1.953439 0.466984,0 0.874772,0.1907398 1.164171,0.4604065 L 13.694952,4.5741354 C
13.36609,4.2584281 12.846489,3.975607 12.175611,3.975607 c -1.42726,0 -2.4072685,0.9668536
-2.4072685,2.5059268 0,1.5456504 0.9931625,2.4861951 2.3743825,2.4861951 0.723495,0 1.243097,-0.2433577
1.690349,-0.6906098 z"
+
style="line-height:0;letter-spacing:-1.13999999px;fill:#bebebe;fill-opacity:1;stroke-width:0.16443089"
+ id="path162" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 9.89331,14.326037 h 1.368065 c 1.670618,0 2.558545,-0.907659 2.558545,-2.440155 0,-1.525918
-0.887927,-2.3941133 -2.591431,-2.3941133 H 9.89331 Z M 10.485261,13.81959 V 9.9982158 h 0.703764 c
1.322025,0 2.006057,0.6511462 2.006057,1.8876662 0,1.243098 -0.684032,1.933708 -2.006057,1.933708 z"
+
style="line-height:0;letter-spacing:-1.13999999px;fill:#bebebe;fill-opacity:1;stroke-width:0.16443089"
+ id="path164" />
+ </g>
+ </g>
+</svg>
diff --git a/icons/Symbolic/scalable/gimp-text-dir-ttb-rtl-symbolic.svg
b/icons/Symbolic/scalable/gimp-text-dir-ttb-rtl-symbolic.svg
new file mode 100644
index 0000000000..9fa67ff9f4
--- /dev/null
+++ b/icons/Symbolic/scalable/gimp-text-dir-ttb-rtl-symbolic.svg
@@ -0,0 +1,173 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:osb="http://www.openswatchbook.org/uri/2009/osb"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ viewBox="0 0 23.999999 24"
+ id="svg7384"
+ height="24"
+ width="24"
+ version="1.1"
+ inkscape:version="0.92.3 (2405546, 2018-03-11)"
+ sodipodi:docname="gimp-text-dir-ttb-rtl.svg"
+ inkscape:export-filename="../24/gimp-text-dir-ttb-rtl.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1024"
+ inkscape:window-height="713"
+ id="namedview1510"
+ showgrid="false"
+ inkscape:zoom="2.4583333"
+ inkscape:cx="-47.112597"
+ inkscape:cy="49.124065"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="svg7384" />
+ <metadata
+ id="metadata90">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ <dc:contributor>
+ <cc:Agent>
+ <dc:title>Barbara Muraus, Jakub Steiner, Klaus Staedtler</dc:title>
+ </cc:Agent>
+ </dc:contributor>
+ <dc:description>Images originally created as the "Art Libre" icon set. Extended and
adopted for GIMP</dc:description>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs7386">
+ <linearGradient
+ gradientTransform="matrix(0.34682586,0,0,0.30620888,-154.35207,-275.32368)"
+ osb:paint="solid"
+ id="linearGradient19282-4">
+ <stop
+ id="stop19284-0"
+ offset="0"
+ style="stop-color:#bebebe;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(999.31744,213.33274)"
+ gradientUnits="userSpaceOnUse"
+ y2="1037.3622"
+ x2="21"
+ y1="1037.3622"
+ x1="13"
+ id="linearGradient9986"
+ xlink:href="#linearGradient19282-4" />
+ <linearGradient
+ gradientTransform="translate(999.31744,213.33274)"
+ gradientUnits="userSpaceOnUse"
+ y2="1037.8621"
+ x2="9"
+ y1="1037.8621"
+ x1="0.99999964"
+ id="linearGradient9992"
+ xlink:href="#linearGradient19282-4" />
+ <linearGradient
+ gradientTransform="translate(999.31744,213.33274)"
+ gradientUnits="userSpaceOnUse"
+ y2="1045.3622"
+ x2="19"
+ y1="1045.3622"
+ x1="5"
+ id="linearGradient9998"
+ xlink:href="#linearGradient19282-4" />
+ </defs>
+ <g
+ transform="translate(0,8)"
+ style="display:inline"
+ id="gimp-text-dir-ttb-rtl"
+ inkscape:label="#gimp-text-dir-rtl-24"
+ inkscape:export-xdpi="96"
+ inkscape:export-ydpi="96"
+ inkscape:export-filename="../24/gimp-text-dir-ttb-rtl.png">
+ <rect
+ ry="2.1219141"
+ rx="0.41507211"
+ y="-8"
+ x="0"
+ height="24"
+ width="24"
+ id="rect4013-8-5-6"
+
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
/>
+ <path
+ sodipodi:nodetypes="cccccccc"
+ inkscape:connector-curvature="0"
+ id="path1105-6"
+ d="M 3.1406495,-5.867637 V 8.825596 h -1.520807 l 2.613754,5.306763 2.617991,-5.306763 H 5.3095985 V
-5.867637 Z"
+
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-
width:1.
87403953px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
/>
+ <g
+ aria-label="あいうえ "
+
style="font-style:normal;font-weight:normal;font-size:6.5772357px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;writing-mode:tb-rl;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:0.16443089"
+ id="text92">
+ <path
+ inkscape:connector-curvature="0"
+ d="m 21.172638,-5.0444666 c 0.03946,-0.092081 0.09208,-0.2630894 0.131545,-0.3485935 l
-0.513024,-0.1249675 c -0.01316,0.1052358 -0.03946,0.2630894 -0.06577,0.361748 l -0.01973,0.059195 c
-0.07235,-0.00658 -0.151276,-0.00658 -0.230203,-0.00658 -0.315707,0 -0.710341,0.059195 -1.065512,0.1644309
0.01973,-0.2696667 0.03946,-0.5327561 0.06577,-0.7826911 0.776114,-0.039463 1.624578,-0.1183902
2.288878,-0.2302032 l -0.0066,-0.4801383 c -0.651146,0.1446992 -1.420683,0.2367805 -2.229683,0.2696667
0.02631,-0.1841626 0.05919,-0.3485935 0.0855,-0.4867154 0.01316,-0.078927 0.03946,-0.1973171
0.07235,-0.2762439 l -0.545911,-0.013154 c 0,0.07235 -0.0066,0.1973171 -0.01315,0.2959756 l
-0.05262,0.4932927 c -0.138122,0.00658 -0.282821,0.00658 -0.420943,0.00658 -0.276244,0 -0.828732,-0.046041
-1.058935,-0.078927 l 0.01973,0.4867154 c 0.263089,0.013154 0.749805,0.032886 1.032626,0.032886 0.11839,0
0.249935,0 0.381479,-0.00658 -0.03289,0.2959756 -0.0592,0.6182601 -0.07235,0.9405447 -0.
874773,0
.3946341 -1.591691,1.2430975 -1.591691,2.0586748 0,0.5393333 0.335439,0.7958455 0.762959,0.7958455
0.342016,0 0.723496,-0.138122 1.07209,-0.3420163 0.03289,0.1249675 0.06577,0.2433577 0.09866,0.3485935 l
0.473561,-0.1381219 c -0.05262,-0.1578537 -0.105236,-0.3354391 -0.151276,-0.5130244 0.532756,-0.4538293
1.04578,-1.1575935 1.400951,-2.0586748 0.591951,0.1644309 0.914236,0.5985284 0.914236,1.0852439 0,0.8155772
-0.703765,1.4075284 -1.854781,1.5324959 l 0.276244,0.4340976 c 1.479878,-0.2367805 2.078406,-1.0392033
2.078406,-1.9468618 0,-0.7037642 -0.480138,-1.2891382 -1.269406,-1.506187 z m -2.23626,0.8681951 c 0,0.473561
0.05919,0.9865853 0.151277,1.4404146 -0.315708,0.2170488 -0.624838,0.3288618 -0.868196,0.3288618 -0.243357,0
-0.368325,-0.1249675 -0.368325,-0.3814797 0,-0.5130244 0.466984,-1.1378618 1.085244,-1.4930325 z m
1.631155,-0.5130244 c -0.269667,0.7037642 -0.64457,1.2102114 -1.065513,1.6114228 -0.07235,-0.3683252
-0.111813,-0.7563822 -0.111813,-1.1575935 v -0.2499
35 c 0.2
95976,-0.111813 0.670878,-0.2038943 1.078667,-0.2038943 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path149" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 18.101069,-0.88979127 -0.61826,-0.0131545 c 0.02631,0.15127642 0.03289,0.41436585
0.03289,0.56564227 0,0.37490243 0.0066,1.14443901 0.07235,1.6969268 0.177585,1.644309 0.756382,2.2494146
1.348333,2.2494146 0.447252,0 0.828732,-0.3683252 1.216789,-1.453569 l -0.41437,-0.4538293 c
-0.157854,0.6379919 -0.453829,1.2891382 -0.789268,1.2891382 -0.447252,0 -0.749805,-0.697187
-0.855041,-1.7626992 -0.04604,-0.5196016 -0.05262,-1.10497557 -0.04604,-1.49960972 0,-0.17100812
0.02631,-0.46040649 0.05262,-0.61826015 z m 3.314927,0.17100813 -0.506447,0.17758536 c 0.605105,0.74322763
0.993162,1.99947968 1.098398,3.15049588 l 0.526179,-0.2038943 c -0.09208,-1.0786666 -0.545911,-2.38095931
-1.11813,-3.12418694 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path151" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 21.244988,6.8626315 c 0,1.1378618 -1.07209,1.7495447 -2.61774,1.9402846 l 0.289398,0.4932926 c
1.650887,-0.2499349 2.88083,-1.032626 2.88083,-2.4138455 0,-0.9076585 -0.670878,-1.4141056
-1.578537,-1.4141056 -0.723496,0 -1.453569,0.2038943 -1.907398,0.30913 -0.177586,0.039464 -0.401212,0.078927
-0.578797,0.092081 l 0.157854,0.5919512 c 0.164431,-0.052618 0.348593,-0.1315447 0.539333,-0.1841626
0.38148,-0.111813 1.006317,-0.3222845 1.729813,-0.3222845 0.664301,0 1.085244,0.3749024 1.085244,0.9076588 z
M 18.581207,4.001534 18.502281,4.4882494 c 0.716918,0.1249675 2.006056,0.2565122 2.709821,0.3025529 l
0.07893,-0.4998699 c -0.624841,-0.00658 -2.00606,-0.138122 -2.709825,-0.2893984 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path153" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 18.666711,9.3993055 -0.0855,0.4735609 c 0.776114,0.1446996 1.887667,0.2893986
2.525659,0.3420166 L 21.17264,9.7347445 C 20.567533,9.6952811 19.350744,9.5440046 18.666711,9.3993055 Z m
2.637472,1.8218945 -0.30913,-0.348594 c -0.05919,0.02631 -0.19074,0.05262 -0.295976,0.06577 -0.486715,0.06577
-1.966593,0.164431 -2.334918,0.171008 -0.197317,0.0066 -0.388057,0 -0.532757,-0.01315 l 0.04604,0.565643 c
0.138122,-0.01973 0.302553,-0.03946 0.506447,-0.0592 0.388057,-0.03289 1.460147,-0.124967 1.960017,-0.157853
-0.624838,0.631414 -2.367805,2.361227 -2.624318,2.624317 -0.11839,0.11839 -0.230203,0.210471
-0.315707,0.276244 l 0.493293,0.342016 c 0.368325,-0.460407 1.052358,-1.183902 1.295715,-1.407528
0.144699,-0.138122 0.295976,-0.230204 0.460407,-0.230204 0.177585,0 0.315707,0.111813 0.388057,0.328862
0.0592,0.184163 0.151276,0.559065 0.217048,0.749805 0.138122,0.420943 0.460407,0.539333 0.973431,0.539333
0.335439,0 0.927391,-0.04604 1.19048,-0.09866 l 0.03289,-0.53933
4 c -0.2
95975,0.07893 -0.789268,0.131545 -1.203634,0.131545 -0.322284,0 -0.473561,-0.09866 -0.545911,-0.342016
-0.07235,-0.203894 -0.151276,-0.526179 -0.217048,-0.716919 -0.0855,-0.249935 -0.230204,-0.42752
-0.486716,-0.453829 -0.05262,-0.01315 -0.171008,-0.02631 -0.230203,-0.01315 0.230203,-0.249935
0.940545,-0.907658 1.183902,-1.131284 0.07235,-0.06577 0.230204,-0.197317 0.348594,-0.282821 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path155" />
+ </g>
+ <g
+ aria-label="ABCD "
+
style="font-style:normal;font-weight:normal;font-size:6.5772357px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;writing-mode:tb-rl;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:0.16443089"
+ id="text92-9">
+ <path
+ d="m 9.2651841,-2.8439994 v 0.664301 l 4.8342679,-1.861358 v -0.743228 L 9.2651841,-6.62591 v
0.6379916 l 1.4733009,0.545911 v 2.052097 z m 1.9468619,-2.453309 0.769536,0.289398 c 0.539334,0.197317
1.065513,0.394635 1.624578,0.578797 v 0.02631 c -0.552488,0.197317 -1.078667,0.388057 -1.624578,0.585374 l
-0.769536,0.289398 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path158"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 9.4789439,-0.85652291 v 1.775854 c 0,1.34175601 0.4275203,2.00605601 1.4141061,2.00605601
0.637991,0 1.039203,-0.407788 1.151016,-1.078666 h 0.03289 c 0.157854,0.526179 0.57222,0.776114
1.04578,0.776114 0.855041,0 1.19048,-0.677456 1.19048,-1.84162601 v -1.637732 z m 2.7755931,0.605106 h
1.578537 v 0.986585 c 0,0.86819501 -0.210472,1.27598401 -0.789268,1.27598401 -0.545911,0 -0.789269,-0.407789
-0.789269,-1.32860201 z m -2.2888777,0 h 1.8153167 v 1.078666 c 0,1.04578101 -0.269666,1.49303301
-0.868195,1.49303301 -0.710341,0 -0.9471217,-0.473561 -0.9471217,-1.47330101 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path160"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 9.9952571,8.5040337 0.3946339,-0.342016 c -0.342016,-0.361748 -0.5459104,-0.789268
-0.5459104,-1.322024 0,-1.07209 0.7629594,-1.775854 1.9665934,-1.775854 1.19048,0 1.953439,0.703764
1.953439,1.789008 0,0.466984 -0.19074,0.874772 -0.460406,1.164171 l 0.394634,0.348593 c 0.315707,-0.328862
0.598528,-0.848463 0.598528,-1.519341 0,-1.42726 -0.966853,-2.4072685 -2.505927,-2.4072685 -1.54565,0
-2.4861947,0.9931625 -2.4861947,2.3743825 0,0.723495 0.2433577,1.243097 0.6906098,1.690349 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path162"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 9.4394808,9.9455978 v 1.3680652 c 0,1.670618 0.9076592,2.558545 2.4401552,2.558545 1.525918,0
2.394113,-0.887927 2.394113,-2.591431 V 9.9455978 Z m 0.506447,0.5919512 h 3.8213742 v 0.703764 c 0,1.322025
-0.651146,2.006057 -1.887666,2.006057 -1.243098,0 -1.9337082,-0.684032 -1.9337082,-2.006057 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path164"
+ inkscape:connector-curvature="0" />
+ </g>
+ </g>
+</svg>
diff --git a/icons/Symbolic/scalable/gimp-text-dir-ttb-rtl-upright-symbolic.svg
b/icons/Symbolic/scalable/gimp-text-dir-ttb-rtl-upright-symbolic.svg
new file mode 100644
index 0000000000..8f9b3550fb
--- /dev/null
+++ b/icons/Symbolic/scalable/gimp-text-dir-ttb-rtl-upright-symbolic.svg
@@ -0,0 +1,173 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:osb="http://www.openswatchbook.org/uri/2009/osb"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ viewBox="0 0 23.999999 24"
+ id="svg7384"
+ height="24"
+ width="24"
+ version="1.1"
+ inkscape:version="0.92.3 (2405546, 2018-03-11)"
+ sodipodi:docname="gimp-text-dir-ttb-rtl-upright.svg"
+ inkscape:export-filename="../24/gimp-text-dir-ttb-rtl-upright.png"
+ inkscape:export-xdpi="96"
+ inkscape:export-ydpi="96">
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1024"
+ inkscape:window-height="713"
+ id="namedview1510"
+ showgrid="false"
+ inkscape:zoom="4.9166667"
+ inkscape:cx="-14.523628"
+ inkscape:cy="23.311031"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="svg7384" />
+ <metadata
+ id="metadata90">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ <dc:contributor>
+ <cc:Agent>
+ <dc:title>Barbara Muraus, Jakub Steiner, Klaus Staedtler</dc:title>
+ </cc:Agent>
+ </dc:contributor>
+ <dc:description>Images originally created as the "Art Libre" icon set. Extended and
adopted for GIMP</dc:description>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs7386">
+ <linearGradient
+ gradientTransform="matrix(0.34682586,0,0,0.30620888,-154.35207,-275.32368)"
+ osb:paint="solid"
+ id="linearGradient19282-4">
+ <stop
+ id="stop19284-0"
+ offset="0"
+ style="stop-color:#bebebe;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(999.31744,213.33274)"
+ gradientUnits="userSpaceOnUse"
+ y2="1037.3622"
+ x2="21"
+ y1="1037.3622"
+ x1="13"
+ id="linearGradient9986"
+ xlink:href="#linearGradient19282-4" />
+ <linearGradient
+ gradientTransform="translate(999.31744,213.33274)"
+ gradientUnits="userSpaceOnUse"
+ y2="1037.8621"
+ x2="9"
+ y1="1037.8621"
+ x1="0.99999964"
+ id="linearGradient9992"
+ xlink:href="#linearGradient19282-4" />
+ <linearGradient
+ gradientTransform="translate(999.31744,213.33274)"
+ gradientUnits="userSpaceOnUse"
+ y2="1045.3622"
+ x2="19"
+ y1="1045.3622"
+ x1="5"
+ id="linearGradient9998"
+ xlink:href="#linearGradient19282-4" />
+ </defs>
+ <g
+ transform="translate(0,8)"
+ style="display:inline"
+ id="gimp-text-dir-ttb-rtl-upright"
+ inkscape:label="#gimp-text-dir-rtl-upright-24"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90"
+ inkscape:export-filename="../24/gimp-text-dir-ttb-rtl-upright.png">
+ <rect
+ ry="2.1219141"
+ rx="0.41507211"
+ y="-8"
+ x="0"
+ height="24"
+ width="24"
+ id="rect4013-8-5-6-7"
+
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
/>
+ <path
+ sodipodi:nodetypes="cccccccc"
+ inkscape:connector-curvature="0"
+ id="path1105-4"
+ d="M 3.1406495,-5.867637 V 8.825596 h -1.520807 l 2.613754,5.306763 2.617991,-5.306763 H 5.3095985 V
-5.867637 Z"
+
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-
width:1.
87403953px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
/>
+ <g
+ aria-label="あいうえ "
+
style="font-style:normal;font-weight:normal;font-size:6.5772357px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;writing-mode:tb-rl;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:0.16443089"
+ id="text92">
+ <path
+ inkscape:connector-curvature="0"
+ d="m 21.172638,-5.0444666 c 0.03946,-0.092081 0.09208,-0.2630894 0.131545,-0.3485935 l
-0.513024,-0.1249675 c -0.01316,0.1052358 -0.03946,0.2630894 -0.06577,0.361748 l -0.01973,0.059195 c
-0.07235,-0.00658 -0.151276,-0.00658 -0.230203,-0.00658 -0.315707,0 -0.710341,0.059195 -1.065512,0.1644309
0.01973,-0.2696667 0.03946,-0.5327561 0.06577,-0.7826911 0.776114,-0.039463 1.624578,-0.1183902
2.288878,-0.2302032 l -0.0066,-0.4801383 c -0.651146,0.1446992 -1.420683,0.2367805 -2.229683,0.2696667
0.02631,-0.1841626 0.05919,-0.3485935 0.0855,-0.4867154 0.01316,-0.078927 0.03946,-0.1973171
0.07235,-0.2762439 l -0.545911,-0.013154 c 0,0.07235 -0.0066,0.1973171 -0.01315,0.2959756 l
-0.05262,0.4932927 c -0.138122,0.00658 -0.282821,0.00658 -0.420943,0.00658 -0.276244,0 -0.828732,-0.046041
-1.058935,-0.078927 l 0.01973,0.4867154 c 0.263089,0.013154 0.749805,0.032886 1.032626,0.032886 0.11839,0
0.249935,0 0.381479,-0.00658 -0.03289,0.2959756 -0.0592,0.6182601 -0.07235,0.9405447 -0.
874773,0
.3946341 -1.591691,1.2430975 -1.591691,2.0586748 0,0.5393333 0.335439,0.7958455 0.762959,0.7958455
0.342016,0 0.723496,-0.138122 1.07209,-0.3420163 0.03289,0.1249675 0.06577,0.2433577 0.09866,0.3485935 l
0.473561,-0.1381219 c -0.05262,-0.1578537 -0.105236,-0.3354391 -0.151276,-0.5130244 0.532756,-0.4538293
1.04578,-1.1575935 1.400951,-2.0586748 0.591951,0.1644309 0.914236,0.5985284 0.914236,1.0852439 0,0.8155772
-0.703765,1.4075284 -1.854781,1.5324959 l 0.276244,0.4340976 c 1.479878,-0.2367805 2.078406,-1.0392033
2.078406,-1.9468618 0,-0.7037642 -0.480138,-1.2891382 -1.269406,-1.506187 z m -2.23626,0.8681951 c 0,0.473561
0.05919,0.9865853 0.151277,1.4404146 -0.315708,0.2170488 -0.624838,0.3288618 -0.868196,0.3288618 -0.243357,0
-0.368325,-0.1249675 -0.368325,-0.3814797 0,-0.5130244 0.466984,-1.1378618 1.085244,-1.4930325 z m
1.631155,-0.5130244 c -0.269667,0.7037642 -0.64457,1.2102114 -1.065513,1.6114228 -0.07235,-0.3683252
-0.111813,-0.7563822 -0.111813,-1.1575935 v -0.2499
35 c 0.2
95976,-0.111813 0.670878,-0.2038943 1.078667,-0.2038943 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path149" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 18.101069,-0.88979127 -0.61826,-0.0131545 c 0.02631,0.15127642 0.03289,0.41436585
0.03289,0.56564227 0,0.37490243 0.0066,1.14443901 0.07235,1.6969268 0.177585,1.644309 0.756382,2.2494146
1.348333,2.2494146 0.447252,0 0.828732,-0.3683252 1.216789,-1.453569 l -0.41437,-0.4538293 c
-0.157854,0.6379919 -0.453829,1.2891382 -0.789268,1.2891382 -0.447252,0 -0.749805,-0.697187
-0.855041,-1.7626992 -0.04604,-0.5196016 -0.05262,-1.10497557 -0.04604,-1.49960972 0,-0.17100812
0.02631,-0.46040649 0.05262,-0.61826015 z m 3.314927,0.17100813 -0.506447,0.17758536 c 0.605105,0.74322763
0.993162,1.99947968 1.098398,3.15049588 l 0.526179,-0.2038943 c -0.09208,-1.0786666 -0.545911,-2.38095931
-1.11813,-3.12418694 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path151" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 21.244988,6.8626315 c 0,1.1378618 -1.07209,1.7495447 -2.61774,1.9402846 l 0.289398,0.4932926 c
1.650887,-0.2499349 2.88083,-1.032626 2.88083,-2.4138455 0,-0.9076585 -0.670878,-1.4141056
-1.578537,-1.4141056 -0.723496,0 -1.453569,0.2038943 -1.907398,0.30913 -0.177586,0.039464 -0.401212,0.078927
-0.578797,0.092081 l 0.157854,0.5919512 c 0.164431,-0.052618 0.348593,-0.1315447 0.539333,-0.1841626
0.38148,-0.111813 1.006317,-0.3222845 1.729813,-0.3222845 0.664301,0 1.085244,0.3749024 1.085244,0.9076588 z
M 18.581207,4.001534 18.502281,4.4882494 c 0.716918,0.1249675 2.006056,0.2565122 2.709821,0.3025529 l
0.07893,-0.4998699 c -0.624841,-0.00658 -2.00606,-0.138122 -2.709825,-0.2893984 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path153" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 18.666711,9.3993055 -0.0855,0.4735609 c 0.776114,0.1446996 1.887667,0.2893986
2.525659,0.3420166 L 21.17264,9.7347445 C 20.567533,9.6952811 19.350744,9.5440046 18.666711,9.3993055 Z m
2.637472,1.8218945 -0.30913,-0.348594 c -0.05919,0.02631 -0.19074,0.05262 -0.295976,0.06577 -0.486715,0.06577
-1.966593,0.164431 -2.334918,0.171008 -0.197317,0.0066 -0.388057,0 -0.532757,-0.01315 l 0.04604,0.565643 c
0.138122,-0.01973 0.302553,-0.03946 0.506447,-0.0592 0.388057,-0.03289 1.460147,-0.124967 1.960017,-0.157853
-0.624838,0.631414 -2.367805,2.361227 -2.624318,2.624317 -0.11839,0.11839 -0.230203,0.210471
-0.315707,0.276244 l 0.493293,0.342016 c 0.368325,-0.460407 1.052358,-1.183902 1.295715,-1.407528
0.144699,-0.138122 0.295976,-0.230204 0.460407,-0.230204 0.177585,0 0.315707,0.111813 0.388057,0.328862
0.0592,0.184163 0.151276,0.559065 0.217048,0.749805 0.138122,0.420943 0.460407,0.539333 0.973431,0.539333
0.335439,0 0.927391,-0.04604 1.19048,-0.09866 l 0.03289,-0.53933
4 c -0.2
95975,0.07893 -0.789268,0.131545 -1.203634,0.131545 -0.322284,0 -0.473561,-0.09866 -0.545911,-0.342016
-0.07235,-0.203894 -0.151276,-0.526179 -0.217048,-0.716919 -0.0855,-0.249935 -0.230204,-0.42752
-0.486716,-0.453829 -0.05262,-0.01315 -0.171008,-0.02631 -0.230203,-0.01315 0.230203,-0.249935
0.940545,-0.907658 1.183902,-1.131284 0.07235,-0.06577 0.230204,-0.197317 0.348594,-0.282821 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path155" />
+ </g>
+ <g
+ aria-label="ABCD "
+
style="font-style:normal;font-weight:normal;font-size:6.5772357px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;writing-mode:tb-rl;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:0.16443089"
+ id="text92-9">
+ <path
+ inkscape:connector-curvature="0"
+ d="m 13.241123,-1.9856701 h 0.664301 l -1.861358,-4.8342682 h -0.743228 l -1.8416256,4.8342682 h
0.6379916 l 0.545911,-1.4733008 h 2.052097 z m -2.453309,-1.9468618 0.289398,-0.7695365 c 0.197317,-0.5393334
0.394635,-1.0655122 0.578797,-1.6245773 h 0.02631 c 0.197317,0.5524878 0.388057,1.0786667 0.585374,1.6245773
l 0.289398,0.7695365 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path158" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 10.005123,3.4515662 h 1.775854 c 1.341756,0 2.006056,-0.4275203 2.006056,-1.4141057
0,-0.6379918 -0.407788,-1.0392032 -1.078666,-1.1510162 V 0.8535581 c 0.526179,-0.15785366
0.776114,-0.57221951 0.776114,-1.04578048 0,-0.85504062 -0.677456,-1.19047962 -1.841626,-1.19047962 h
-1.637732 z m 0.605106,-2.77559345 v -1.57853656 h 0.986585 c 0.868195,0 1.275984,0.21047154
1.275984,0.78926828 0,0.54591056 -0.407789,0.78926828 -1.328602,0.78926828 z m 0,2.28887805 V 1.1495337 h
1.078666 c 1.045781,0 1.493033,0.2696667 1.493033,0.8681951 0,0.7103415 -0.473561,0.947122 -1.473301,0.947122
z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path160" />
+ <path
+ inkscape:connector-curvature="0"
+ d="M 13.833074,8.2771191 13.491058,7.882485 c -0.361748,0.3420162 -0.789268,0.5459106
-1.322024,0.5459106 -1.07209,0 -1.775854,-0.7629594 -1.775854,-1.9665935 0,-1.1904797 0.703764,-1.953439
1.789008,-1.953439 0.466984,0 0.874772,0.1907398 1.164171,0.4604065 L 13.694952,4.5741354 C
13.36609,4.2584281 12.846489,3.975607 12.175611,3.975607 c -1.42726,0 -2.4072685,0.9668536
-2.4072685,2.5059268 0,1.5456504 0.9931625,2.4861951 2.3743825,2.4861951 0.723495,0 1.243097,-0.2433577
1.690349,-0.6906098 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path162" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 9.89331,14.326037 h 1.368065 c 1.670618,0 2.558545,-0.907659 2.558545,-2.440155 0,-1.525918
-0.887927,-2.3941133 -2.591431,-2.3941133 H 9.89331 Z M 10.485261,13.81959 V 9.9982158 h 0.703764 c
1.322025,0 2.006057,0.6511462 2.006057,1.8876662 0,1.243098 -0.684032,1.933708 -2.006057,1.933708 z"
+
style="line-height:0;letter-spacing:-1.13999999px;stroke-width:0.16443089;fill:#bebebe;fill-opacity:1"
+ id="path164" />
+ </g>
+ </g>
+</svg>
diff --git a/icons/icon-list.mk b/icons/icon-list.mk
index 49dabe0b47..e50f1fc4d5 100644
--- a/icons/icon-list.mk
+++ b/icons/icon-list.mk
@@ -255,6 +255,10 @@ color_scalable_images = \
scalable/gimp-swap-colors.svg \
scalable/gimp-symmetry.svg \
scalable/gimp-template.svg \
+ scalable/gimp-text-dir-ttb-rtl.svg \
+ scalable/gimp-text-dir-ttb-rtl-upright.svg \
+ scalable/gimp-text-dir-ttb-ltr.svg \
+ scalable/gimp-text-dir-ttb-ltr-upright.svg \
scalable/gimp-text-layer.svg \
scalable/gimp-toilet-paper.svg \
scalable/gimp-tool-airbrush.svg \
@@ -751,6 +755,10 @@ symbolic_scalable_images = \
scalable/gimp-swap-colors-symbolic.svg \
scalable/gimp-symmetry-symbolic.svg \
scalable/gimp-template-symbolic.svg \
+ scalable/gimp-text-dir-ttb-rtl-symbolic.svg \
+ scalable/gimp-text-dir-ttb-rtl-upright-symbolic.svg \
+ scalable/gimp-text-dir-ttb-ltr-symbolic.svg \
+ scalable/gimp-text-dir-ttb-ltr-upright-symbolic.svg \
scalable/gimp-text-layer-symbolic.svg \
scalable/gimp-toilet-paper-symbolic.svg \
scalable/gimp-tool-airbrush-symbolic.svg \
@@ -1419,6 +1427,10 @@ icons24_images = \
24/gimp-smartphone.png \
24/gimp-symmetry.png \
24/gimp-template.png \
+ 24/gimp-text-dir-ttb-rtl.png \
+ 24/gimp-text-dir-ttb-rtl-upright.png \
+ 24/gimp-text-dir-ttb-ltr.png \
+ 24/gimp-text-dir-ttb-ltr-upright.png \
24/gimp-text-layer.png \
24/gimp-toilet-paper.png \
24/gimp-tool-airbrush.png \
diff --git a/libgimpbase/gimpbaseenums.c b/libgimpbase/gimpbaseenums.c
index 003eda0273..83dfe2ef2a 100644
--- a/libgimpbase/gimpbaseenums.c
+++ b/libgimpbase/gimpbaseenums.c
@@ -1795,6 +1795,10 @@ gimp_text_direction_get_type (void)
{
{ GIMP_TEXT_DIRECTION_LTR, "GIMP_TEXT_DIRECTION_LTR", "ltr" },
{ GIMP_TEXT_DIRECTION_RTL, "GIMP_TEXT_DIRECTION_RTL", "rtl" },
+ { GIMP_TEXT_DIRECTION_TTB_RTL, "GIMP_TEXT_DIRECTION_TTB_RTL", "ttb-rtl" },
+ { GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT, "GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT", "ttb-rtl-upright" },
+ { GIMP_TEXT_DIRECTION_TTB_LTR, "GIMP_TEXT_DIRECTION_TTB_LTR", "ttb-ltr" },
+ { GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT, "GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT", "ttb-ltr-upright" },
{ 0, NULL, NULL }
};
@@ -1802,6 +1806,10 @@ gimp_text_direction_get_type (void)
{
{ GIMP_TEXT_DIRECTION_LTR, NC_("text-direction", "From left to right"), NULL },
{ GIMP_TEXT_DIRECTION_RTL, NC_("text-direction", "From right to left"), NULL },
+ { GIMP_TEXT_DIRECTION_TTB_RTL, NC_("text-direction", "Characters are from top to bottom, Lines are from
right to left"), NULL },
+ { GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT, NC_("text-direction", "Upright characters are from top to bottom,
Lines are from right to left"), NULL },
+ { GIMP_TEXT_DIRECTION_TTB_LTR, NC_("text-direction", "Characters are from top to bottom, Lines are from
left to right"), NULL },
+ { GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT, NC_("text-direction", "Upright characters are from top to bottom,
Lines are from left to right"), NULL },
{ 0, NULL, NULL }
};
diff --git a/libgimpbase/gimpbaseenums.h b/libgimpbase/gimpbaseenums.h
index edc507a8d9..6a4d9e3ec8 100644
--- a/libgimpbase/gimpbaseenums.h
+++ b/libgimpbase/gimpbaseenums.h
@@ -1226,6 +1226,10 @@ typedef enum
* GimpTextDirection:
* @GIMP_TEXT_DIRECTION_LTR: From left to right
* @GIMP_TEXT_DIRECTION_RTL: From right to left
+ * @GIMP_TEXT_DIRECTION_TTB_RTL: Characters are from top to bottom, Lines are from right to left
+ * @GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT: Upright characters are from top to bottom, Lines are from right to
left
+ * @GIMP_TEXT_DIRECTION_TTB_LTR: Characters are from top to bottom, Lines are from left to right
+ * @GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT: Upright characters are from top to bottom, Lines are from left to
right
*
* Text directions.
**/
@@ -1235,8 +1239,12 @@ GType gimp_text_direction_get_type (void) G_GNUC_CONST;
typedef enum
{
- GIMP_TEXT_DIRECTION_LTR, /*< desc="From left to right" >*/
- GIMP_TEXT_DIRECTION_RTL /*< desc="From right to left" >*/
+ GIMP_TEXT_DIRECTION_LTR, /*< desc="From left to right" >*/
+ GIMP_TEXT_DIRECTION_RTL, /*< desc="From right to left" >*/
+ GIMP_TEXT_DIRECTION_TTB_RTL, /*< desc="Characters are from top to bottom, Lines are from right to
left" >*/
+ GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT, /*< desc="Upright characters are from top to bottom, Lines are from
right to left" >*/
+ GIMP_TEXT_DIRECTION_TTB_LTR, /*< desc="Characters are from top to bottom, Lines are from left to
right" >*/
+ GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT /*< desc="Upright characters are from top to bottom, Lines are from
left to right" >*/
} GimpTextDirection;
diff --git a/libgimpwidgets/gimpicons.h b/libgimpwidgets/gimpicons.h
index 11a88b490d..2be4d0be22 100644
--- a/libgimpwidgets/gimpicons.h
+++ b/libgimpwidgets/gimpicons.h
@@ -218,6 +218,10 @@ G_BEGIN_DECLS
#define GIMP_ICON_FORMAT_TEXT_UNDERLINE "format-text-underline"
#define GIMP_ICON_FORMAT_TEXT_DIRECTION_LTR "format-text-direction-ltr"
#define GIMP_ICON_FORMAT_TEXT_DIRECTION_RTL "format-text-direction-rtl"
+#define GIMP_ICON_FORMAT_TEXT_DIRECTION_TTB_RTL "gimp-text-dir-ttb-rtl" /* use FDO */
+#define GIMP_ICON_FORMAT_TEXT_DIRECTION_TTB_RTL_UPRIGHT "gimp-text-dir-ttb-rtl-upright" /* use FDO */
+#define GIMP_ICON_FORMAT_TEXT_DIRECTION_TTB_LTR "gimp-text-dir-ttb-ltr" /* use FDO */
+#define GIMP_ICON_FORMAT_TEXT_DIRECTION_TTB_LTR_UPRIGHT "gimp-text-dir-ttb-ltr-upright" /* use FDO */
#define GIMP_ICON_FORMAT_TEXT_SPACING_LETTER "gimp-letter-spacing"
#define GIMP_ICON_FORMAT_TEXT_SPACING_LINE "gimp-line-spacing"
diff --git a/menus/text-editor-toolbar.xml b/menus/text-editor-toolbar.xml
index 9d23692c03..d1e096fee5 100644
--- a/menus/text-editor-toolbar.xml
+++ b/menus/text-editor-toolbar.xml
@@ -8,5 +8,9 @@
<separator />
<toolitem action="text-editor-direction-ltr" />
<toolitem action="text-editor-direction-rtl" />
+ <toolitem action="text-editor-direction-ttb-rtl" />
+ <toolitem action="text-editor-direction-ttb-rtl-upright" />
+ <toolitem action="text-editor-direction-ttb-ltr" />
+ <toolitem action="text-editor-direction-ttb-ltr-upright" />
</toolbar>
</ui>
diff --git a/menus/text-tool-menu.xml b/menus/text-tool-menu.xml
index d4923a859f..c38f86be2f 100644
--- a/menus/text-tool-menu.xml
+++ b/menus/text-tool-menu.xml
@@ -16,6 +16,10 @@
<separator />
<menuitem action="text-tool-direction-ltr" />
<menuitem action="text-tool-direction-rtl" />
+ <menuitem action="text-tool-direction-ttb-rtl" />
+ <menuitem action="text-tool-direction-ttb-rtl-upright" />
+ <menuitem action="text-tool-direction-ttb-ltr" />
+ <menuitem action="text-tool-direction-ttb-ltr-upright" />
<separator />
<menu action="text-tool-input-methods-menu" />
</popup>
diff --git a/pdb/enums.pl b/pdb/enums.pl
index 33601e4eeb..906cedf344 100644
--- a/pdb/enums.pl
+++ b/pdb/enums.pl
@@ -605,9 +605,17 @@ package Gimp::CodeGen::enums;
GimpTextDirection =>
{ contig => 1,
header => 'libgimpbase/gimpbaseenums.h',
- symbols => [ qw(GIMP_TEXT_DIRECTION_LTR GIMP_TEXT_DIRECTION_RTL) ],
+ symbols => [ qw(GIMP_TEXT_DIRECTION_LTR GIMP_TEXT_DIRECTION_RTL
+ GIMP_TEXT_DIRECTION_TTB_RTL
+ GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT
+ GIMP_TEXT_DIRECTION_TTB_LTR
+ GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT) ],
mapping => { GIMP_TEXT_DIRECTION_LTR => '0',
- GIMP_TEXT_DIRECTION_RTL => '1' }
+ GIMP_TEXT_DIRECTION_RTL => '1',
+ GIMP_TEXT_DIRECTION_TTB_RTL => '2',
+ GIMP_TEXT_DIRECTION_TTB_RTL_UPRIGHT => '3',
+ GIMP_TEXT_DIRECTION_TTB_LTR => '4',
+ GIMP_TEXT_DIRECTION_TTB_LTR_UPRIGHT => '5' }
},
GimpTextHintStyle =>
{ contig => 1,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]