# Difference between revisions of "Release notes/0.48"

## Inkscape 0.48

(not released yet - AnnouncePlanning048)

(TODO)

## Tools

### Node Tool

During Google Summer of Code 2009, the node tool underwent an extensive rewrite. Along with more maintainable code, it brings several new features.

Multi-path editing
Any number of paths can be selected for node editing at once.
The clipping path or mask of an object can be edited at the same time as the object. The clip / mask editing buttons in the node tool are now toggle buttons, rather than mode switch buttons. If the object is transformed after applying a clipping path, the clipping path is no longer offset when editing it in the node tool. If the clipping path is a group, all paths in the group can be edited simultaneously.
Improved node join
It is now possible to join nodes from different paths. More than two endnodes can be joined at once—the distances between nodes will be used to determine which nodes to join, with the closest pairs being joined first. When nothing can be joined (less than 2 endnodes in selecion), each selected stretch of nodes will be joined into one node.
Improved segment join
It is now possible to create a segment between endnodes from different paths. More than one segment can be created at once—the distances between nodes will be used to determine which nodes to join with a segment, with the closest pairs being joined first. When nothing can be joined (less than 2 endnodes in selection), each selected stretch of nodes will have its middle nodes removed, leaving only one segment.
Node transforms
It is now possible to transform the nodes using the mouse and transformation handles similar to those in the selector tool. They can be turned on and off using the button in the node toolbar. When the handles are visible, clicking on a selected node will switch between scaling and rotation mode, instead of selecting only that node. You can also use Shift+H to switch the mode. All other operations work normally when transform handles are shown.
Path direction tools
Little harpoons are optionally shown in the middle of each segment, visualizing the direction of the path. This is useful when preparing a guide path for text, setting markers, and debugging extensions and Inkscape itself. The "Reverse" command (Shift+R) reverses the direction of subpaths that have some selected nodes, or all subpaths if the node selection is empty.
Customizable path update
Two new preferences allow you to specify when the path and its outline should be updated. Turning off live update of paths will improve performance for complex drawings.
Improved tips
The tips displayed for nodes and handles are more concise and affected by what modifier keys are pressed.

For a detailed feature comparison between the old and new tool, see GSoC2009 Node Tool Rewrite.

### Text Tool

The text toolbar has been overhauled with many bug fixes and improvements. One can now directly access a number of text layout parameters:

• "Line Spacing:" Distance between baselines of adjacent lines.
• "Letter Spacing:" Spacing between letters.
• "Word Spacing:" Spacing between words.
• "Horizontal kerning"
• "Vertical shift"
• "Character rotation"

This work was sponsored in part by Inkscape users through LinuxFund.org.

### Spray Tool

You first need to select one or several items, then select the Spray Tool. To spray, click on the canvas, then move the mouse or scroll the mouse wheel.

Three modes are available.

• Spray Copy mode : each sprayed item is independent from the others.
• Spray Clone mode : each sprayed item is a clone of the selected item. Changing the properties of the original item will affect the clones.
• Spray Single Path Mode : everything you spray is in a single path. You may need to convert your item into a path to make it work properly.

Spray options

• Amount : spray more or less items.
• Rotation : randomly rotates items around the original rotation value.
• Scale : randomly scales items around the original scale value.
• Scatter : low values to spray items under the cursor, high values for a more uniform repartition over the spray zone.
• Focus : items are sprayed following a ring. This parameters modifies the radius of the circle. Default at 0 to spray a spot.

Use keys ↑ and ↓ to control the size of of sprayed items. Use ← and → to set the width of the cursor.

The Spray tool is a perfect match for the transforming, duplicating, and deleting modes of the Tweak tool.

## Import/Export

### Improved bitmap image import

Bitmaps are now always embedded when pixel data is pasted or dragged into Inkscape's window (for example when copying parts of an image from GIMP). Files with automatically generated names like "inkscape_pasted_image_..." are no longer created in the document directory. When importing or opening bitmap images, a dialog is displayed that asks whether you want to link the image or embed it.

### New LaTeX export for PDF/EPS/PS

Similar to GNUPlot's epslatex' output terminal and Xfig's combined PDF/LaTeX output, Inkscape can now export graphics to PDF with an accompanying LaTeX file that overlays the text over the PDF when inputted in LaTeX. The image's text is typeset by LaTeX, so for example mathematical expressions are rendered correctly, and all text will be in the font and style of the LaTeX document (even when changing the document's font afterwards).

(the following description assumes export to PDF, but will work the same for EPS and PS) Two files will be created: a PDF file containing all graphics, without text; and a LaTeX file with the same name, containing all text, and code to include the PDF and overlay the text. To include the exported image in LaTeX, one writes

 \begin{figure}
\centering
\def\svgwidth{\columnwidth} % sets the image width, this is optional
\input{image.tex}
\end{figure}


A more thorough description of how to use the new feature (and automate the exporting/inclusion of the image in LaTeX) is given in this PDF: SVG in LaTeX.

#### From the GUI

When exporting to PDF/EPS/PS from Inkscape's GUI, the usual dialog pops up after selecting to which PDF/EPS/PS file to export to. In this dialog, you can find the PDF/EPS/PS+LaTeX option.

#### Command line option

When exporting to PDF/EPS/PS from the command line, adding --export-latex will turn the LaTeX export on. For example

 inkscape image.svg -z -D --export-pdf=image.pdf --export-latex


### Fixed PDF/EPS/PS export of non-integer sized documents

The long standing bug 168275 has now been fixed. Documents with a non-integer height or width are now correctly exported to PDF, EPS and PS.

## Extensions

### New and improved extensions

• The new Generate from Path > Voronoi Pattern extension creates a random pattern of Voronoi cells. The pattern will be accessible from the Fill and Stroke dialog. The pattern can be made to be smooth at the edges by choosing a positive border, or sparse at the edges by using a negative border.
• The new Render > Wireframe Sphere extension draws the globe as a collection of ellipses representing a sphere's latitude and longitude lines. The number of lines is adjustable, as well as the tilt and rotation. There is an option to hide the lines at the back of the sphere.
• The new Render > Barcode - Datamatrix extension renders a DataMatrix 2D barcode, as specified in BS ISO/IEC 16022:2006. The number of rows and columns of the DataMatrix is adjustable. If more data is given than can be contained in one DataMatrix, more than one DataMatrix will be produced.
• The new Modify Path > Pixelsnap extension aligns rectangles and paths to pixel boundaries, to create sharp web and digital graphics.
• The new Color > Black and White extension turns the selection colors into black and white.
• The new Text > Split Text extension splits texts into different lines, words or letters.
• The new Web > Slicer extensions to slice web layouts into multiple images and help the HTML+CSS creation.
• Images > Extract Image: all relative paths (or filenames without path) are now relative to the user's home directory.
• Visualize Path > Measure Path: new option to calculate area.

## SVG Support

The baseline-shift attribute is supported! The Text toolbar uses the "super" and "sub" values for implementing superscripts and subscripts. At the moment there is no other GUI access to the attribute.

## Other features

• Arch paper sizes are added in the Document Properties dialog
• Displaying the font samples in the drop-down list of the Text tool is now optional. In Inkscape Preferences, go to Tools, Text, and uncheck "Show font samples in the drop-down list" if you don't want to see the samples. This will speed up displaying the list the first time you open it
• Items in the File > Open Recent menu, when mouseovered, show tooltips with the full URI of each file in the list. Also, files that are in the list but are missing or unaccessible are automatically hidden
• When a flowed text is truncated (i.e. the frame is too small for the entire text), the frame is shown red, and the statusbar hint includes [truncated]. You need to resize the frame to see the truncated end of the text. Analogously, if the path of a text-on-path object is too short to display the entire text, the statusbar will report it as [truncated]
• Clicking the text alignment buttons (Left, Center, Right) on the Text tool's controls bar now does not let the text jump: it stays within the same bounding box as before, only changing the alignment
• The position of text's baseline anchor (the small square) is now dependent of the alignment: for left-aligned text it is, as before, at the left end, for centered text in the middle, and for the right-aligned text it is at the right end of the text's first line (this is for horizontal text; for vertical, it is correspondingly at top, middle, or bottom of the first column). This allows snapping, aligning and distributing of text relative the side to which it's aligned
• Snapping of gradient handles has been improved and now behaves similar to the snapping of all other handles and objects
• When snapping to a bounding box, that bounding box will be shown for a moment (tied to the snap indicator)
• If a new object is being created on the canvas with snapping enabled, then a snap indicator will also be shown for the first point
• There are now options for Margins when resizing a document to a selection or the drawing in Document Properties
• Preferences have been added to allow automatic grouping when setting a Clippath or Mask
• Bitmap copies created using the Make a Bitmap Copy command (Alt+B) are now embedded. Previously they were saved in an automatically generated file and linked
• The file preview size limit (in the File > Open and File > Import dialog box) is now 10 MB (1.3 MB in 0.47)
• Blur, transformation, and layer visibility and opacity support in XAML export

### Extended input device configuration

The stock Input Devices dialog has been replaced with a completely redone version that provides a more useful representation of settings. It also contains a simple area for testing different inputs of different devices.

Additionally hardware setup itself has been separated from general settings to allow for easier dynamic switching of settings appropriate to the task at hand.

## User interface

(In progress JonCruz)

### Custom Swatches

Custom swatches can be created and used on a per-document basis. An "Auto" color palette will track swatches in the current document and allow them to be set and used. The use is "live" with changes to the swatch being applied automatically to all objects set to it. The swatches can also be gradients and not just simple colors.

### New cursors in Selector

Selector tool has a new mouse cursor (arrow with an open hand) for when your mouse is over a selectable object, and another (arrow with clinched hand) for when you're dragging an object. This improves precision of selection and UI consistency (previously, the mouse cursor over a selectable object was different across platforms, e.g. hand icon on Linux or four-way arrow on Windows).

### Translations

New Farsi translation (in progress).

## Tutorials

• SVG files are now optimized with Scour (filesize reduced by 40%).
• Bitstream Vera fonts replaced with generic sans and serif fonts (solves many font substitution issues).
• New Interpolate tutorial (Help > Tutorials > Inkscape: Interpolate).
• New translations in Farsi, Belarussian and Dutch.

## Windows port improvements

The quality of the Windows port was improved substantially.

### Command line interface

Command line functionality on Windows is now on par with Unix.

Single executable

It's no longer needed to compile Inkscape with special flags or use third-party wrapper executables to see the command line output. Just type "inkscape" (without any extension) in the command prompt. This is made possible by a command-line wrapper named inkscape.com.

Relative paths

You can now specify relative paths to files in options like --export-png. Commands like this will now execute correctly:
C:\svg> inkscape tiger.svgz --export-png=tiger.png
`

### Stability improvements

Thanks to library updates, Inkscape should no longer randomly crash when editing documents. Most of them were caused by a GDI resource leak in Pango. It will also no longer crash when trying to import a corrupted image.

### Unicode compatibility

Inkscape will now work correctly regardless of installation path. Previously, it was unusable when installed into a directory that contains characters not representable in the system codepage (icons were not shown in the UI, and no language files were found).

## Notable bug fixes

• The 3D tool no longer inserts an inkscape:perspective element into SVG when it is not needed (i.e. when the document has no 3D box objects).
• Wrong clippaths and masks with cyclic recursion (i.e. clippaths or masks that refer to themselves via other clippaths or masks) no longer crash Inkscape.
• Default unit setting for the XY grid is now respected when creating a new grid.
• Pasting Live Path Effect stacks now works. It adds the stack of the copied object to the end of the LPE stack (if present) of the object it is pasted to.
• The accuracy of the bounding box calculation has been significantly improved when converting objects to patterns or markers. This should make it much easier to create patterns where the tiles should 'connect' to each other, e.g. a tile with a plus sign to create a hatched pattern.
• The default font has been changed to Sans, eliminating problems when the former default font, Bitstream Vera Sans, is not available. (Sans is a Pango pseudo-font.)
• The Text toolbar bold and italic/oblique buttons are more likely to work as expected.
• Bitmaps with transparency are now shown (and exported) correctly.
• The emergency save function no longer mangles the file names (which used to make it fail quite often).