# 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.
• Improved clippath / mask editing - 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 selecion), 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 first 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.

### Spray Tool

To use the spray tool, you first need to select one or several items and then click on the Spray icon.

Three modes are available.

• Spray Copy mode : each sprayed item is independant 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 : probability of apparition of an item.
• Scatter : for the gaussian spraying, it sets the width of the gaussian.
• Focus : it sets the center of the gaussian. More precisely, it is the distance to the center of the cursor.
• Scale : you can choose to scale your items taller or smaller than the original one. The scale is set between two values (Min and Max).
• Rotation : you can rotate randomly your items. The rotation angle is set between two values (Min and Max).

You can also spray items by scrolling.

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

## Import/Export

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

Similar to GNUPlot's epslatex' output terminal, 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) can be found [missing link here].

#### 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
`

## 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.

## 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.
• The file preview size limit (in the File > Open and File > Import dialog box) is now 10Mio (1.3Mio in 0.47).

### 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)

### 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 (file size 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.

## 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.