Bug 517438 - Text On Curve fails if not first text object on vector layer.
Summary: Text On Curve fails if not first text object on vector layer.
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: Tool/Text (other bugs)
Version First Reported In: 5.3.0-beta3
Platform: Microsoft Windows Microsoft Windows
: NOR normal
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2026-03-11 16:58 UTC by Victor Wren
Modified: 2026-03-12 13:23 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments
Screenshot showing first bezier with text correctly placed, and subsequent bezier with text incorrectly placed. (53.48 KB, image/jpeg)
2026-03-11 16:58 UTC, Victor Wren
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Victor Wren 2026-03-11 16:58:01 UTC
Created attachment 190585 [details]
Screenshot showing first bezier with text correctly placed, and subsequent bezier with text incorrectly placed.

SUMMARY
Text On Curve fails if multiple text or bezier objects are placed on same layer.

STEPS TO REPRODUCE
1. Create new document
2. Create new vector layer (shift-insert)
3. Select text tool
4. Single click to create text object (dragging to create text box also sometimes works).
5. Select bezier tool and create curve.
6. Select text tool and click bezier curve to place text on curve.
7. May require creating additional beziers and text objects on same vector layer to trigger bug.

OBSERVED RESULT
Text is not placed on curve. It is placed in the upper left corner of a text box that approximates the area occupied by the curve (see attachment). ADDITIONALLY it does not matter if the first text object is deleted before attempting to create text on the curve.
This seems to "poison" the entire Krita session. All subsequent text-on-curve objects will fail in the same way, even on new vector layers, even on new documents created in separate tabs, until Krita is restarted.
This is intermittent, but not hard to reproduce, if you go back and forth between creating bezier curves and text objects on the same vector layer.

EXPECTED RESULT
Text is placed on curve, no matter what other text objects are created on the same layer.

SOFTWARE/OS VERSIONS
Windows: Windows 10

ADDITIONAL INFORMATION
Intermittent, but not difficult to trigger using above instructions.
Comment 1 wolthera 2026-03-11 18:16:17 UTC
Ok, the trick is to drag out an area, which causes the text-on-path to be both a text-on-path as well as an inline wrapped shape. Should be easy-enough to fix, will check tomorrow.
Comment 2 Victor Wren 2026-03-11 22:01:57 UTC
(In reply to wolthera from comment #1)
> Ok, the trick is to drag out an area, 

Yep! You're absolutely right. That will do it every time. I don't THINK that I was dragging it when I clicked on the path, but given all the things I tried to reproduce it, I wouldn't stake my life on it.
Comment 3 wolthera 2026-03-12 13:22:37 UTC
Git commit 526284d1c4abbb29a9c5637829f077afea470d86 by Wolthera van Hövell tot Westerflier.
Committed on 12/03/2026 at 13:20.
Pushed by woltherav into branch 'master'.

Ensure inline-wrap isn't applied when there's a flow shape.

Also remove it explicitely when it is not necessary.

M  +4    -1    plugins/tools/svgtexttool/SvgCreateTextStrategy.cpp

https://invent.kde.org/graphics/krita/-/commit/526284d1c4abbb29a9c5637829f077afea470d86
Comment 4 wolthera 2026-03-12 13:23:04 UTC
Git commit 4497007a9f97bec88344f50f0790c76b63f7c9cc by Wolthera van Hövell.
Committed on 12/03/2026 at 13:23.
Pushed by woltherav into branch 'krita/6.0'.

Ensure inline-wrap isn't applied when there's a flow shape.

Also remove it explicitely when it is not necessary.


(cherry picked from commit 526284d1c4abbb29a9c5637829f077afea470d86)

Co-authored-by: Wolthera van Hövell tot Westerflier <griffinvalley@gmail.com>

M  +4    -1    plugins/tools/svgtexttool/SvgCreateTextStrategy.cpp

https://invent.kde.org/graphics/krita/-/commit/4497007a9f97bec88344f50f0790c76b63f7c9cc