Author(s): Bruce Byfield

Krita [1] is well known for having evolved from a toy to a tool for professional artists [2]. In late May, the Krita Foundation announced Krita 3.0, the Animation Release, after the conclusion of a successful crowdfunding campaign [3] to support ambitious last-minute features. The campaign raised more than £42,000 (~$47,500), with a third of its £30,000 goal pledged in less than two days. I talked with Krita maintainer Boudewijn Rempt about the introduction of animation, improved text tools, and revision of vector graphics – three of the major features that debuted in version 3.0 [4].

"Feature requests are a tough thing to get right," Rempt observes. Sometimes, new users ask for something that is obscure or fits poorly with the other features. Other times, a developer might want a feature for themselves. However, usually, that's not how the project develops its roadmaps.

"Usually it's pretty clear from discussions that artists have on the chat channel or the forum, or even in our bug tracker, where the real problems are. And, of course, we have many artists in the development team. They join us at sprints, and they are always around on the #krita IRC channel. So, gradually, a sort of consensus about the priority of different feature requests arises, and we start asking people to do mock-ups and user-experience designs."

Another way features become priorities is what Rempt calls the "organic" method. Over time, the general dissatisfaction or demand for a feature increases, until a consensus is reached that it needs to be improved or rewritten. "Right now," Rempt says, "we're getting people who ask whether it isn't time to start improving the brush engines again, [so] next year, it might be time to spend some really focused time on them again."

Artwork by Wolthera van Hövell tot Westerflier (http://wolthera.info) CC BY-SA 4.0 [11]

Introducing Animation

One of the major goals that developed organically is animation. According to Rempt, four different people tried five different times to implement animation, "which shows it's something people really want." In the original planning, basic animation features were scheduled for v3.1, but they were ready for v3.0 after extensive work was done in 2015.

Animation features for v3.0 include importing and exporting an image sequence, dragging and dropping frames, and onion skinning [5], or working on multiple frames at the same time. Still to come in v3.1 are integration with sound and export to movie formats.

The v3.0 release, Rempt says, is "usable for short clips of hand-drawn animation. But we're not yet in a stage where professional animators actually know about Krita. The professional world is dominated by closed-source software like Toon Boom [6] or TVPaint [7], but with the recent opening up of OpenToonz [8], I hope that free and open software will become more accepted."

"Merida" by Ramon Miranda (http://www.ramonmiranda.com) CC BY-SA 4.0 [11]

Text Tools

The crowdfunding page gives a long list of improvements to Krita's text tools, ranging from improving the basic interface and working with text on a path to using ligatures and composition overlays – essentially, frames within frames that are formatted separately. Many of the improvements will help work with multiple languages, including changing the direction for text flow and making translation easier. At the same time, as Krita becomes more independent of Calligra Suite, "we're going to drop the weird office stuff like the bibliography tool, the paragraph sections, and the semantic markup."

The page also states that changes to Krita's text tools will focus on "creating poster layouts, comics, or game cards." Asked whether such a goal means that Krita is moving toward desktop publishing, Rempt replies, "Well, … not really desktop publishing. We're now firmly focusing on the need to add occasional, but beautiful text to an image for comics or webcomics, or playing cards or designs – not tables, or headers or footers, or text that's connected through different shapes."

Typographical layout as done in Scribus [9] is apparently not under consideration for now.

Artwork by David Revoy (http://davidrevoy.com/) CC BY-SA 4.0 [11]

Rendering Objects Using SVG

Krita has supported saving in scalable vector graphics (SVG) [10] for years. However, the new release also sees Krita rendering objects using SVG instead of Open Document Graphics (ODG), the format that is also used by LibreOffice.

The use of ODG originated because, when Calligra Suite was KOffice, Krita was more closely associated with the rest of Calligra Suite. Given that Calligra Suite was pioneering the use of ODG, at the time it made sense to have graphics displayed as ODG rather than SVG.

When KOffice was ported to the Qt4 toolkit, each application was organized around basic objects, such as a page or a spreadsheet, and documents were built from the addition of such objects.

"It worked, but never really well," Rempt recalls. "When we ported KOffice, renamed to Calligra Suite by then, to Qt5, we decided that it was time to cut the cords and make sure that the office applications would be focused on office needs and the art application, Krita, on art needs." Because ODF has "some odd limitations," Krita would transition to using vector graphics for its basic objects. ODF, Rempt says, "just isn't the right format" for a graphics application, whereas using SVG would improve interoperability with Inkscape and web browsers, "and even with LibreOffice, which has also been emphasizing the importance of SVG recently."

Some work on this transition was done in 2012 but never finished. Now, "we'll have to do a lot of design first," but Krita developers hope that Krita will be stronger for not having to support word processors or presentation applications.