Release notes/0.44

From Inkscape Wiki
Revision as of 11:41, 13 September 2005 by 193.1.100.104 (talk)
Jump to navigation Jump to search

Inkscape 0.43

In brief

  • Connector support: a new tool and support for connectors, i.e., autorouting (object-avoiding) lines drawn between objects. Useful for diagramming.

New functionality

  • [whiteboard]
  • [ocal browser?]
  • Support for extended input devices has been added:
    • The calligraphy tool now has optional pressure and/or tilt support from an input device such as a tablet. Pressure can be used to alter the width of the pen and tilt can be used to alter the angle of the pen's nib.
    • A standard input device dialog has been added. Input device settings are saved to and loaded from the preferences.
  • New capabilities in the Node tool:
    • Clicking on a selected path selects the two nodes closest to the click point. Shift+click adds or removes these two nodes to the node selection (when only one path is selected; otherwise Shift+click works as in Selector).
    • Double click or Ctrl+Alt+click anywhere on the selected path creates a new node at the click point, without changing the shape of the path. (Previously, you could only add a node in the middle of a segment by using a toolbar button.)
    • You can now edit paths by dragging any point on a path, not only node(s) as before. In many cases it's a much more convenient way to reshape paths than anything available before. When you drag a curve close enough to one of the nodes, only that node's handle(s) are affected; if you drag a point midway between two nodes, both nodes' handles are adjusted.
    • As in Selector, if you press Shift before starting to drag, you always get a node selection rubberband rectangle (even if you start on a path [but not a node!]).
    • After duplicating (Shift+D) an endnode, the selected node is always the new endnode, so you can move it at once.
  • In Pen tool, while you are drawing a path, the statusbar displays the distance and angle of the current mouse point from the last created node of the path. This makes it easy to create a path from the given lengths and angles of linear segments. When you are dragging to create a curve handle, statusbar also displays the length and the angle of the handle.
  • A new preference option, Compass-like angle display (Steps tab), allows you to have absolute angles specified in a compass notation (0 at north, 0 to 360 range, increasing clockwise) instead of the default trigonometric notation (0 at east, -180 to 180 range, increasing counterclockwise). This affects the statusbar angle display for path segments and handles in Pen and Node tools.
  • Pen and Pencil tools now display helpful statusbar hints when the mouse is over one of the end anchors of the selected path.
  • The precision of most editable length fields is increased from 0.01 to 0.001.
  • The minimum zoom is extended from 4% to 1%.
  • More support for viewBox: If the root <svg> element of your document has width/height attributes set in percentage units and there's a viewBox on that element, then:
    • The canvas size is set to the value of the viewBox attribute.
    • Changing the canvas size in Document Preferences sets the viewBox, without touching the width/height values.
This does not affect regular documents created in Inkscape, but makes it easier to edit other SVG files that use viewBox.
  • [dxf import?]


Connectors

  • Inkscape now includes preliminary support for connectors. Connectors are lines drawn between objects, that stay connected to the objects as objects are manipulated. Objects on the canvas have an "connector-avoid" property, which when set causes connectors to automatically route around the object.
  • The Connector tool (Ctrl+F2 or the o key) is a new way of creating and rerouting connectors, as well as marking objects "ignored" or "avoided" for the purpose of routing connectors.
    • A new connector can be drawn by clicking and dragging from any point on the canvas. The connector is finalized when the mouse is released. Connectors can also be created with two clicks, rather than click-and-drag, if this is preferred. In this case, click once on an empty point on the canvas to begin drawing the connector, then move the mouse to the new connector's target point and then click again to finalize the connector. Single clicking on a canvas object selects/deselects that object, just as in other tools.
    • Connection point handles are shown while the mouse cursor is hovering over a non-connector object in the connector tool. Currently they are shown only at the center of objects. When creating a connector, if the connector is started or ended over a connection point then the connector will be attached to those that object. From then on the connector will be automatically rerouted whenever the attached object is moved.
    • Connectors attached to objects are currently drawn to the bounding box of those objects. It is planned that they will be drawn instead to the edges of objects.
    • A selected connector will show two endpoint handles. By clicking and dragging these, the connector can be rerouted and attached/dettached from objects.
    • The Make connectors avoid selected objects button marks all objects in the selection as "avoided", causing all current and future connectors to automatically avoid these objects.
    • The Make connectors ignore selected objects button marks all objects in the selection as "ignored", causing all current and future connectors to completely ignore these objects. This is the default for all canvas items, i.e., no objects are automatically routed around by default.


Extensions

  • Add Nodes: Adds nodes to the selected paths. Each segment of the selected path is subdivided into ceil(Length/Max) equal length segments. Lengths are measured in SVG User Units calculated from the path data and does not take into account any transforms.
  • Whirl: Twists the selected paths around the specified center point.
  • Summer's Night: Linearly distorts a path into the destination quadrilateral. The destination quadrilateral is specified by a four node path (closed or not). To use, draw and position a four node path. Select the four node path first and then add to selection the path you wish to distort. The original position of the four nodes is considered to be clockwise around the bounding box of the path to distort beginning in the upper left corner.
  • [svgslice?]

Usability

  • [Menu configurability and sensitivity - ted]
  • [Icon preview changes - joncruz]
  • Rectangles and ellipses now use different handle shapes, so it's much easier to see which handle does what. The two square handles change the size of the object, while the two round handles adjust the rounding corners (in rects) and arc/segment ends (in ellipses).
  • The controls for the Rectangle tool now include W and H fields for setting the width/height of selected rectangle(s) numerically.
  • In the controls of Rectangle and Ellipse tools, the "Not rounded" and "Make whole" buttons are now grayed out when the selected object cannot use the corresponding function (i.e. when a rect is already not rounded and the ellipse is already whole, which are the defaults).
  • When editing text in Text tool, keypad + and - keys type the corresponding characters if NumLock is on (otherwise they zoom in and out as before).
  • In Text tool, Ctrl+Up and Ctrl+Down now move one paragraph up or down correspondingly.
  • The Calligraphic tool, in addition to the Ctrl+F6 shortcut, has a new one-letter shortcut, `c'.
  • The Pen, Pencil, and Calligraphy tools finally have mouse cursors of their own.
  • The canvas width/height fields in Document Preferences are never grayed out. Instead, the menu of the canvas sizes scrolls itself to "Custom" or to an appropriate standard size as you edit width/height.


Packaging, documentation, examples

  • The About dialog has been enhanced to more closely resemble the stock Gnome dialog. A full list of Authors and Translators, as well as the license is now viewable.

Translations

SVG/CSS compliance

Important bugfixes

  • The systematic error when scaling objects with stroke via the Selector controls panel (W and H fields) is fixed.
  • The precision of most boolean operations and offsets is improved, especially noticeably for small paths.
  • In text on path, letters were sometimes distributed unevenly along a curve; now fixed.
  • Searching by text in the Find dialog (Ctrl+F) was broken, now fixed.

Internal progress

  • Source documentation: the big goal is to have a brief description for classes and most functions in every source file; this now holds for more than 100 files of the 1350 files in the source code. The doxygen index file now shows many useful links to external documentation and a categorification of main directory files which should be useful for beginners in particular.
  • [removed trailing fractional zeros in svg - pjrm]
  • C++/Encapsulation: the View class hierarchy has been reimplemented in C++, after separating the widget classes from each class. The number of dependencies on the central file desktop.h (about 100) was reduced by half.

Known issues

[XXX: List the main issues here.]

See http://sourceforge.net/tracker/?group_id=93438&atid=604306 for a full list of known issues. If you find a bug not listed here, then please report the bug: see instructions at http://inkscape.org/report_bugs.php (the “Report Bugs” link from http://inkscape.org/).

Previous releases