Bug 391796 - Implement automatic wrapping for the new text object
Summary: Implement automatic wrapping for the new text object
Status: CONFIRMED
Alias: None
Product: krita
Classification: Applications
Component: Tool/Text (show other bugs)
Version: 4.0
Platform: Other Linux
: NOR wishlist
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
: 389789 441137 (view as bug list)
Depends on:
Blocks:
 
Reported: 2018-03-13 05:49 UTC by Tyson Tan
Modified: 2021-08-22 09:41 UTC (History)
8 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Adjusting font size without auto-wrapping (93.08 KB, image/png)
2018-03-29 01:59 UTC, Tyson Tan
Details
An example of poster work that requires text-wrapping (1.06 MB, image/png)
2018-03-29 02:06 UTC, Tyson Tan
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Tyson Tan 2018-03-13 05:49:37 UTC
In krita-4.1.0-pre-alpha-a41aeb7-x86_64, I can drag a Text object by using Shape Select Tool, but only when I click the red dot at the center of a text object. There are 8 handles on the edges and corners, indicating they are supposed to be draggable to resize the shape of the text object, however, they are not responsive. Without resizable boundary and text wrapping, the text goes on in one line forever unless I use line breaks. It makes text editing not intuitive.
Comment 1 mvowada 2018-03-16 03:10:06 UTC
(Tested in Krita Version: 4.1.0-pre-alpha (git 97015cd) - Ubuntu 14.04 Unity)

Yes, I cannot resize the text bounding box neither by dragging the handles, nor by typing different values in the input fields. (Confirming).
Comment 2 Halla Rempt 2018-03-28 13:42:55 UTC
That's true, but for this iteration it's actually by design. SVG doesn't support autowrap at all, and when we discussed this with Deevad, he said that for comic balloons, people would use manual linebreaks anyway, instead of automatic wrapping.

It's something that's on the todo, and we really want it done, but it's just not been possible to implement already.
Comment 3 Tyson Tan 2018-03-29 01:59:15 UTC
Created attachment 111714 [details]
Adjusting font size without auto-wrapping

I've just used Krita 4.0's text tool for actual work yesterday. First of all, it was definitely usable -- given that I have done my research and I knew what to expect of Krita 4.0's text tool and how to workaround all its problems. But it certainly gave me a lot of headaches, with the lacking of auto-wrapping being the lead offender.

I think this attachment demonstrated the issue pretty well. Every time I make change to the font size, every hard line-break has to be reworked. When there are more than 3 lines, the problem really becomes a huge nuisance. Typography work typically requires a lot of small adjustments and it's going to be a nightmare to work in Krita's text tool without auto wrapping.

When we do text work over artwork, the boundary of a block of text is always fixed and the letters are confined and flow inside of it. That's also why text-wrapping has been a standard feature even before MSDOS word-processors -- a fixed space naturally asks for such a feature. It is not a strange thing that all normal users come to expect auto wrapping these days. Doing it manually is not the end of the world, but it is a painful compromise nonetheless.

(1 of 3)
Comment 4 Tyson Tan 2018-03-29 02:06:40 UTC
Created attachment 111715 [details]
An example of poster work that requires text-wrapping

I can understand David's argument since comic balloons rarely have many lines. 

However, not everyone uses text tool for comic balloons only. Me for example, use text tool mostly for posters. They usually have more lines than what I attached here but you get the idea.

(2 of 3)
Comment 5 Tyson Tan 2018-03-29 02:24:31 UTC
As for SVG, I have my opinion about that too.

SVG's <text> target application is definitely "one word text" and "one line text". It was never built for multiple line "paragraph" text and thus very limited by design. The lack of auto-wrapping was a likely to be a legacy from HTML where the browser does all the auto wrapping for it. It is a standard, but a standard that does not fit our purpose nonetheless.

Can we workaround this by keeping the boundary information in .kra files and let Krita manages auto-wrapping in its editors, and only discard such information and output standard SVG text when we copy/export?

---

And finally, Krita 4.0 lets people *DRAG* to create a block of text in Krita right now. That's effectively telling us that "Krita supports text-wrapping" while it actually doesn't -- very confusing. 

I suggest if we are not implementing text-wrapping anytime soon, we should change the creation of a block of text with "I" cursor with a single click that anchors the top-left point. That's it. This will greatly alleviate the confusion of what we can expect from the text tool.

(3 of 3)
Comment 6 David REVOY 2019-09-22 21:25:38 UTC
Hi! I'm reading this thread late (unfortunately) and I find here a big *big* misunderstanding:

> "when we discussed this with Deevad, he said that for comic balloons, people would use manual linebreaks anyway, instead of automatic wrapping."

@boud: I said that in the context of my usage at that time and in a technical way regarding SVG; because SVG had too many issue to support flowed text with automatic wrapping. I can't imagine I say that in the context of authoring/creation of text! SVG made so many issues on my side that I was forced to use manual line-breaks and I still use that since that time. It's not a choice; it's a pain, a workflow bottleneck that slows me and just a workaround that I embraced among many other to make Pepper&Carrot a reality.

For more details about the issue, flowed text caused problems for Pepper&Carrot translation system around episode 13 because I had only flowed text with the Inkscape custom SVG implementation for it (the one here by default when you create a text) and all my SVGs had issues with other SVG readers and also caused issue when text was overflowing, with missing texts or objects not visible at all.... I realised at that time two SVGs families were existing: "Inkscape SVG" and W3C SVG". I spent days into converting line-breaks over dozen of episodes with dozen of pages in dozen of languages; that was weeks of point-and-click fix one by one files.

Automatic wrapping is very useful for prototyping dialogues. During the creation of a comic, when a dialog or a good line for a character suddently cross mind and a balloon needs to be tweaked it's better to just blindly type and not care about the ideal line-break pattern. It's quick to get things done and also helps comic artist at defining "a spatial budget" in the panel prior writing something. Adapting line-break manually later for graphical reason is always possible, even in a flowed text box.

So, please consider automatic wrapping as something really high on my wish-list. I was searching for it this evening on the bug-tracker because I was wondering why this thread has been sleeping for so long. I thought this feature was part of the text-tool re-design from scratch and reading here that I'm attributed (and so, responsible) for slowing down any progress on it made me very sad because I'm waiting for that feature specifically since the refactor of the text-tool and I agree with all feedback of Tyson here.
Comment 7 Tiar 2020-10-05 12:37:33 UTC
*** Bug 389789 has been marked as a duplicate of this bug. ***
Comment 8 Ahab Greybeard 2021-08-22 09:41:59 UTC
*** Bug 441137 has been marked as a duplicate of this bug. ***