|
|
Log in / Subscribe / Register

A look at Inkscape 0.91

By Nathan Willis
February 4, 2015

The Inkscape project released version 0.91 at the end of January, a release culminating more than four years of development. The new release incorporates a lengthy list of improvements from that time period: new tools, performance enhancements, and fixes to several longstanding bugs. Just as importantly, though, it also lays the groundwork for a 1.0 release that will signify an important milestone: full SVG 1.1 support. Over the years, though, Inkscape has evolved to be more than just an SVG editor—as version 0.91 demonstrates.

What's in a number

For a bit of context, the last stable release of Inkscape was version 0.48, released in August of 2010. The follow-up release was initially supposed to be version 0.49, which we examined in late 2012. But that 0.49 release was pushed back multiple times and, in April of 2014, the project outlined a different release plan during Libre Graphics Meeting. The next stable release would be designated 0.91—a numeric bump intended to better reflect the maturity of the codebase—and the release after that would be Inkscape 1.0.

Applying the 1.0 moniker to a release is largely a public-relations issue; users unfamiliar with free-software projects may expect a pre-1.0 version number to mean that an application is unstable or unreliable—which is often not the case in the FOSS world (at least, within certain tolerances). But the 1.0 release will also signify that Inkscape has attained complete support of the SVG 1.1 specification (minus those portions of the specification that do not apply to a vector graphics editor, like interactivity).

As for the 0.91 release itself, it includes numerous updates and changes that have accumulated since 0.48, and it marks the completion of a major code-refactoring effort. Hopefully, with that work complete, the process of focusing on SVG-support features for 1.0 will proceed apace. But for anyone still using version 0.48, the improvements found in 0.91 constitute a serious upgrade in functionality.

[Inkscape measure tool]

Downloads are available from the project's web site for Linux and other operating systems. Binary packages are already available for openSUSE and Ubuntu, with other distributions said to be coming soon, in addition to source code bundles.

Drawing tools

In our preview of 0.49, we discussed two entirely new tools that make their debut in the new release: an on-canvas measuring tool and the PowerStroke pen tool. Without rehashing the same explanations again, it is interesting to note that the two serve considerably different user groups.

With the measuring tool, a user can draw a line anywhere on the canvas and see the distances between every object that the line crosses. This is perhaps most useful for structured drawings where precision is of utmost importance. The PowerStroke pen, on the other hand, is an expressive instrument: users can use it to draw calligraphic strokes and shapes that change width and shape according to how much pressure is applied (if their input device is pressure-sensitive, that is).

Version 0.91 includes several other additions to the drawing features. A lot of the changes have to do with selecting and moving objects in a drawing—which gets increasingly important the more complex a drawing is. The "Align and Distribute" tool, for instance, is one of the most frequently used ways to manipulate on-canvas objects; it provides multiple ways to instantly line up or rearrange selected objects with respect to each other or to the page. In version 0.91, there are several new options, such as swapping the positions of two selected objects or rearranging the z-order stacking of selected objects.

[Inkscape radial arrangement]

It is also now possible to arrange selected objects in radial fashion, rather than just in rows and columns. Users can also select all objects on the canvas that share a common property (such as foreground or background color). For both of those tasks, there were kludgy workarounds possible in the past, so eliminating the workarounds can be a significant time-saver. Similarly, there is now a "Clone original" feature that makes it easier to make multiple clones of an object. In the old approach, one would have to either hunt through the drawing trying to find the original among all of the clones (which is clearly difficult when dealing with clones), or else end up with some clones and some clones-of-clones (and clones-of-clones-of-clones, ad nauseam).

As was the case during the 0.49 era, the gradient tool has seen several improvements—the latest being a way to view a handy list of all of the gradients used in the current document. So, too, has the text tool. The text menu now shows all variants of the system's installed fonts (which is helpful when automatically created fake "bold" and "italic" text does not look right) and Inkscape will pop up a notification dialog listing all font substitutions it had to perform when opening the current document. Users can also get a list of all of the fonts used in a document and can select all objects using a particular font.

Last but not least, the "trace bitmap" tool now displays a live preview on the canvas as the user adjusts the settings. Live preview has been systematically rolled out to more and more features in Inkscape and, with some features, it can make all the difference in the world to see changes reflected instantly on the drawing as one adjusts sliders and checkboxes.

Interface polish

Apart from directly manipulating items on the canvas, there are a host of improvements to the general user interface. Guide lines can now be named (to help users keep them straight) and can be assigned colors (which is particularly useful when it is hard to remember which pairs of guides—like margins—are meant to go together). The control "handles" that are used to grab objects like path nodes with the mouse can now be resized, which will be a welcome change to users of high-DPI screens and touchscreens.

There are also a lot of existing features that are now accessible through the right-click menu. The list includes grouping and ungrouping objects, the fill/stroke editor, the spellchecker, and the text-and-font settings. It is tempting to say that users with large screens will benefit most from these additions by not having to scroll to the screen's edge, but in reality they are a convenience most people will enjoy.

The behavior of core dialog boxes has been polished, too. Almost all dialogs can be docked to the main window now, and all undocked dialogs remember their position and state between editing sessions. Some dialogs have even been combined (such as "Document properties" and "Document metadata").

Extensions and exports

[Inkscape Hershey text]

As always, the latest release includes a lot of new functionality available in extensions. Several new extensions work with text objects: "Extract text" dumps all of the text in a drawing to a separate file, "Merge text" combines selected text objects into a single object, and "Hershey text" transforms text objects into single-stroke text paths that can be drawn on a plotter or laser-cutting device.

Other extensions add smaller but frequently requested features, like the ability to crop imported bitmap images or the ability to adjust colors using hue, saturation, and lightness (HSL) controls rather than the more traditional RGB values. An entirely new extension that many users may find useful is "Interpolate attribute in a group." It allows the user to select any number of objects, group them, then apply a smooth interpolation of several attributes (color, width, height, opacity, etc.) across the group. As is common to several of the new features, this could be done manually in earlier releases, but it was time-consuming and often painful to get right.

[Inkscape attribute interpolation]

The final set of new features worth exploring all relate to generating output from an Inkscape document. Inkscape's native format is a superset of strict SVG, so users who need to export W3C-compatible SVG will be happy to hear that there is now an SVG sanity-checker built-in. PDF export now contains bleed and margin options, which simplifies production of print-ready output (and again echoes the recurring theme of building in a function that users had previously needed to perform manually). Documents can also now be saved as HTML5 <canvas> objects, which is a new feature.

Free-software users may be most pleased to learn that export to GIMP's .XCF format has received a significant upgrade in Inkscape 0.91. XCF files can now be exported at a user-defined resolution, the exported file will now preserve the names of all of the layers in the Inkscape document, and there is an option to toggle whether or not the background layer is saved to the XCF. The latter function is perhaps most useful when prototyping: a dummy background or page color may be necessary to visualize the design, but is not part of the desired output.

Under the radar

The number of new features and enhancements that can accumulate over the course of four years is enormous—even more so for Inkscape, given its robust extension system. The changes described above are by no means a comprehensive list; those needing such a list will want to read the release notes, and perhaps revisit our 2012 preview of the canceled 0.49 release.

But apart from all of the user-visible functionality in Inkscape 0.91, the long release cycle also allowed the team to undertake some behind-the-scenes improvements. The rendering speed has increased considerably thanks to that work: the on-screen rendering and PNG export were ported to Cairo and rendered objects are now cached. Applying filters is now faster, thanks to the use of OpenMP, and memory usage has been reduced (the 0.91 release notes say the reduction could be up to a factor of four, depending on the document).

Other improvements to the codebase were in the code-cleanup category: not user-visible, but helpful for developers. The project finally completed transitioning to C++, and refactored the style-handling code. The team has also begun working on automating its build processes and adding a test suite—both changes that, like code cleanup, should reap rewards in subsequent releases. And those subsequent releases are already under development: users can track the progress of the next version (which, at least for now, is designated 0.92) at the Inkscape wiki.

Although the lengthy development cycle that led up to the 0.91 release resulted in a plethora of new tools and features, the time span itself has a downside: projects that release too slowly can frustrate users or even give the appearance of being dormant. Inkscape 0.91 clearly dispels that notion. Nevertheless, project members have made it known in interviews that they hope to return to a shorter development cycle now, approaching the long-awaited (but hopefully not too distant) 1.0 release. In the meantime, though, there is a wide array of new functionality for users to explore.


to post comments

A look at Inkscape 0.91

Posted Feb 5, 2015 6:37 UTC (Thu) by liam (guest, #84133) [Link] (1 responses)

Terrific work on what has become a jewel in the open source world.
A couple of annoyances I've noticed are: 1. some dialog windows don't feature a close button (right click on window to close from menu), 2. zoom is quite slow, even when no filters are in use (my GUESS is that the developers are more concerned with fidelity than speed, right now, so instead of performing a very fast bitmap interpolation, and then a faithful render, they reparse the tree @each zoom step).
Pretty small issues, however.

A look at Inkscape 0.91

Posted Feb 5, 2015 8:30 UTC (Thu) by jospoortvliet (guest, #33164) [Link]

Looking forward to the new release, and I agree Inkscape is great. With the gimp, Kdenlive and Kritait represents some of the best of FOSS. I hope the team will try to release faster, however, I don't think it is healthy to have such large gaps between releases...

unfortunately clipping covered objects seems to be still missing

Posted Feb 6, 2015 16:11 UTC (Fri) by giggls (subscriber, #48434) [Link] (2 responses)

This is something which would be really handy for cutting plotters and such.

IThis is somethin I would consider a basic feature, thus was surprised that this does not seem to be possible currently.

E.g. if you have many overlapping circles I would like to have a feature which will get me the uppermost circle and all the pieces of the lowermost ones which are not covered be the other.

This can be achieved in a simple two object example by the substract feature, but it fails with multiple overlapping objects.

Sven

unfortunately clipping covered objects seems to be still missing

Posted Feb 9, 2015 22:38 UTC (Mon) by k8to (guest, #15413) [Link] (1 responses)

Hm, this seems like more a of a CAD feature than illustration, which isn't really the target. Or am I wrong?

That doesn't mean it wouldn't be useful.

unfortunately clipping covered objects seems to be still missing

Posted Feb 10, 2015 8:29 UTC (Tue) by giggls (subscriber, #48434) [Link]

I would not consider this a CAD feature.

I actually needed this for preparing my Stuff for a cutting plotter which I think is a quite common task in Illustrations.

What I did as a workaround was exporting a high resolution bitmap and using the vectorizer.

Sven

A look at Inkscape 0.91

Posted Feb 6, 2015 23:30 UTC (Fri) by gerdesj (subscriber, #5446) [Link] (1 responses)

Ooh shiny new stuff. Good grief it's in Portage already

... compiling ...

Jon

A look at Inkscape 0.91

Posted Feb 7, 2015 0:02 UTC (Sat) by gerdesj (subscriber, #5446) [Link]

It's fantastic, even compared to the previous version. You spend far more time getting image on canvas rather than working around limitations (there are still a few but not many now).

It genuinely is heading towards game changer status.

Love it.

A look at Inkscape 0.91

Posted Feb 7, 2015 17:41 UTC (Sat) by dashesy (guest, #74652) [Link]

Inkscape and Gimp are ultimate proof that open source will rule, they will just get better and better, steadily but surly. Given enough time if not hit by an unfortunate disaster (read corrupt politician, or patent troll) OSS will evolve and perfect. I think soon Inkscape will surpass even OmniGraffle (OSX-only!), Gimp has already surpassed Photoshop for the things I care about.

Wonderful Design Tool

Posted Feb 11, 2015 6:01 UTC (Wed) by ldo (guest, #40946) [Link] (2 responses)

However, I never understood why they included those PAL (720×576) and NTSC (720×480) video templates. They require non-uniform pixel aspect ratios, which Inkscape doesn’t support anyway (or didn’t, the last time I looked). So you have to proportion things deliberately distorted, where a circle doesn’t look like a circle, in order for it to come out correct in the video.

Which I find a complete waste of time, and totally contrary to the point of Inkscape as a high-quality design tool.

Wonderful Design Tool

Posted Feb 11, 2015 13:58 UTC (Wed) by dlang (guest, #313) [Link] (1 responses)

well, people used Inkscape to generate images to be displayed on TV, so they included the TV resolutions.

Now, if it was being written from scratch today where those resolutions are not used very much (if at all), they may not have bothered, but since they were already in there, the question becomes what's the value of ripping them out as opposed to continuing to support them?

Re: people used Inkscape to generate images to be displayed on TV

Posted Feb 11, 2015 20:46 UTC (Wed) by ldo (guest, #40946) [Link]

I have done that too, but I haven’t used those templates, because they’re a dumb way to do it—they’re not WYSIWYG.

The right way to do it is to start with a template with a 4:3 or 16:9 aspect ratio (the actual dimensions don’t matter). Do your design in proportions so that a circle looks like a circle, and a square like a square. Then use a separate tool to convert that image to pixels in the correct non-uniform ratio so that, when the result is displayed on a TV, the circle still looks like a circle and the square like a square.

That’s why I wrote dvd_menu_animator, for example.


Copyright © 2015, Eklektix, Inc.
This article may be redistributed under the terms of the Creative Commons CC BY-SA 4.0 license
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds