Difference between revisions of "Release notes/1.4"

From Inkscape Wiki
Jump to navigation Jump to search
(→‎Bugfixes: Add filter bug fixes here.)
(images)
 
(78 intermediate revisions by 3 users not shown)
Line 20: Line 20:
* https://gitlab.com/inkscape/inkscape/-/merge_requests/5375#note_1811566143
* https://gitlab.com/inkscape/inkscape/-/merge_requests/5375#note_1811566143
* https://gitlab.com/inkscape/inkscape/-/merge_requests/5375#note_1811572924
* https://gitlab.com/inkscape/inkscape/-/merge_requests/5375#note_1811572924
* https://gitlab.com/inkscape/inbox/-/issues/10110
* https://gitlab.com/inkscape/inkscape/-/merge_requests/6166#note_1819990716
* https://gitlab.com/inkscape/inbox/-/issues/10111
* https://gitlab.com/inkscape/inbox/-/issues/10112
* https://gitlab.com/inkscape/inbox/-/issues/10113
* https://gitlab.com/inkscape/inkscape/-/merge_requests/5993#note_1820038476


}}
}}
Line 26: Line 32:
== Release highlights ==
== Release highlights ==


* '''Filter Gallery:''' it has never been so easy to find the best filter for your needs! This new dialog features previews, categories and search.
* '''Modular grids & improved axonometric grids:''' set the grid angle by ratio for isometric designs and use modular grids to plan layouts and make icons!
* '''Swatches dialog and palette file handling improved:''' quick access to dialog layout controls, search for colors, and open different palette file formats!
* '''Unified font browser preview:''' when activated in the preferences, use it to quickly browse through your font collection. Try it out and give your feedback!
* '''Customizable handles:''' Power users with CSS knowledge can now customize the styling and basic shape of all the handles!
* '''There's even more:''' new templates for folding booklets, additional options in Ruler and Taper Stroke LPE, preview in Spray tool, many new command line options, updated translations and hundreds of bug fixes.


== Performance ==
== Canvas ==
 
=== Guides ===
 
When creating a new guide, all guides are now unlocked, so the new guide can be moved and adjusted freely ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5814 MR #5814]).
 
== Tools ==
 
=== Node Tool ===


* Deleting a node now preserves the handles of adjacent nodes in more cases. Straight lines are now only produced when there were straight lines to begin with, in certain cases also when the option to 'Preserve Shape' is active ([https://gitlab.com/inkscape/inkscape/-/merge_requests/6285 MR #6285]).


== General user interface ==
=== Selector Tool & Node Tool ===


* In Edit > Preferences > Behavior > Steps, an option has been added to change how moving selected objects / nodes with the arrow keys works when the canvas is rotated (Arrow keys move object relative to screen). If you're working with a rotated canvas, now, by default, the arrow keys will move the selection horizontally and vertically relative to the screen, not to the rotated document. This allows to work more intuitively while the canvas is rotated. Disabling the option will restore the previous behavior ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5031 MR #5031]).
* In the preferences settings for both tools, options for changing the active layer and active page when using the tool to select an object have been added. The Selector tool will change both active layer and active page, while the Node tool will change neither, by default. Other tools (Text tool, Rectangle tool, …) do not change either layer or page when being used (but they can, if you edit the preferences.xml file in a text editor, [https://gitlab.com/inkscape/inkscape/-/merge_requests/5257 MR #5257]).


=== Shape Builder Tool ===


== Canvas ==
Several improvements were made to the Shape Builder ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5428 MR #5428]):


== Tools ==
* The Shape Builder tool can now make use of raster graphics, too. Any paths selected together with a raster (pixel) graphic will now function as clipping paths, their colors are not preserved - unlike when you have only paths in the selection. The resulting image parts use clipped clones of the image, to keep the file size small and improve performance. If you want to edit them, you need to unlink the clones.
* An option for the transparency level of the original drawing has been added (the eye icon opens a popup slider).
* Optionally, it is now possible to keep a copy of the original objects after the Shape Builder's operation. This option is deactivated by default.


=== Spray Tool ===
=== Spray Tool ===


The Spray Tool now shows an outline preview of the next item that it is going to spray, including its shape, rotation and size. The preview is only visible when the tool is not currently spraying. That way, you can choose where to place the next item (with a single click instead of holding the mouse button down, [https://gitlab.com/inkscape/inkscape/-/merge_requests/5375 MR #5375]).
* The Spray Tool now shows an outline preview of the next item that it is going to spray, including its shape, rotation and size. The preview is only visible when the tool is not currently spraying. That way, you can choose where to place the next item (with a single click instead of holding the mouse button down, [https://gitlab.com/inkscape/inkscape/-/merge_requests/5375 MR #5375]). [needs video] [[File:Inkscape B3mecgprdX.gif|alt=spray preview|367x367px]]
* The option to only spray non-overlapping objects now yields faster results through an updated spraying algorithm ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5766 MR #5766]).


[needs video]
== Import / Export ==


== Path Operations ==
==== PDF Export ====


== Clones ==
PDF export now supports internal links (going from one part of the file to another part of the same file, weblinks were supported since Inkscape 1.0). This can be used for creating Tables of Contents, for example ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5237 MR #5237]).




== Dialogs ==


== Masking / Clipping==
=== About Inkscape ===


* Inkscape's About Screen Contest for this version … [TODO]
* The About Screen dialog now has the ability to display multiple drawings as a slideshow ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5559 MR #5559]).
* The dialog can now be closed by pressing <kbd>Esc</kbd> ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5860 MR #5860]).


== Dialogs ==
=== Add Layer ===
 
The 'Add Layer' dialog now shows the three available options all written out directly as radio buttons, instead of hiding them behind a drop-down selection ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5074 MR #5074]).
 
[[File:Imageasdasd awdqwdasda.png]]
 
Add button from dialog always add it above selected ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5074 MR #5074]).
 
[[File:Inkscape RH105M5BrW.gif]]
 
=== Create Anchor (Hyperlink) / Object Properties ===
 
To make it easier to select an element in the drawing to link to, a button has been added to the side of the field where the target object's id or the external link must be inserted (Href).
 
When you click on that button, your mouse cursor will transform into a little hand icon. When the hand hovers over any object or over an empty area of the page, a small indicator text will tell you the id of that object or page. Clicking on the object will automatically insert that object's id into the href field. That way, you do not need to use the Objects or XML dialog to look up the internal identifier of the object you want to link to ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5221 MR #5221])
 
[[File:Object-picker.gif]]
 
=== Document properties ===
 
==== Scale lock ====
 
A new toggle button that allows you to change the document's viewbox scale without changing the physical size of its contents has been added ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5993 MR #5993]).
 
[needs image, and a description of why that is useful]
 
==== Grids ====
 
The grids subsection in the Document Properties dialog has been overhauled with new grid selector buttons, which automatically add the selected type of grid to the drawing when pressed. 
 
===== Modular Grids =====
 
A new grid type was added that consists of rectangles with optional gaps in between.
 
Height, width, horizontal and vertical gap (also negative for overlapping modules) can be adjusted separately. Each grid module (rectangle) can have its own margin set (negative values for inside margin, positive values for outside margin).
[[File:Imageadsa.png|none|thumb|851x851px]]
[[File:Inkscape nkL1NDBuw4.gif|right|frameless|632x632px]]
 
===== Axonometric grids =====
 
The angles of axonometric grids can now also be set by indicating the '''ratio''' between the height and width of the rhombus shape that is formed by it. A common angle for isometric games, for example, is 2:1, corresponding to angles like 26,565051 which are difficult to set exactly without the ratio option ([https://gitlab.com/inkscape/inkscape/-/merge_requests/6132 MR #6132]).
 
=== Export Dialog ===
 
* If you enter a file system path to a save location that does not exist, Inkscape now tries to create folders instead of warning the user. Only if that fails, it will give a warning now ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5169 MR #5169]).
* Each of the two tabs of the dialog (single file, batch export) now features a little icon in addition to the text ([https://gitlab.com/inkscape/inkscape/-/issues/4338 Bug #4338], [https://gitlab.com/inkscape/inkscape/-/merge_requests/6166 MR #6166]).
 
[needs screenshot]
 
=== Extension Gallery ===
 
When you want to quickly get an overview which extensions are available to you, you can now browse your Inkscape extensions in a gallery similar to the one for filters.
 
You can use the search field to quickly find the extension you need. The size of the icons is adjustable. They are currently all still identical placeholders, [https://gitlab.com/inkscape/inbox/-/issues/9907 and we invite you to join us] if you'd like to help. The menu categories can be hidden if you do not need them.
 
When you hover over an extension, the dialog shows you a small info text with either the menu path to the extension, or a description ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5448 MR #5448]).
 
[needs image / video]
 
=== Fill and Stroke ===
 
==== Gradient Editor ====
 
It is now possible to control the gradient's angle numerically from the Gradient Editor section of the Fill and Stroke dialog. An additional slider allows for changing the angle by simply dragging. A button to rotate the gradient by 90° completes the new angle controls ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5413 MR #5413]).
 
[[File:7PviQWIu9r.gif]]
[[File:Inkscape YIRwDrcpcO.gif|right]]
 
==== Pattern Editor ====
 
For users who prefer to have more control when setting the gap between pattern elements, an option has been added to use numerical entry fields (Gap control: precise) instead of the sliders (Gap control: mouse friendly). This allows to add gaps smaller than 20% of the pattern width, in 0.1% steps (and also values larger than 32040%, in case you ever need that pattern rarity! [https://gitlab.com/inkscape/inkscape/-/merge_requests/5484 MR #5484]).
 
[needs image]


=== Filter Gallery ===
=== Filter Gallery ===


The Filter Gallery can be found in the <code>Filters</code> menu. It shows a scrollable (and hideable) list of all filter categories, and a preview image for each filter, applied to a colorful flower image. Your own filters will appear in the <code>Personal</code> category. Inkscape looks for them in a folder named <code>filters</code> in the folder indicated at <code>Edit ➞ Preferences ➞ System: User config</code>. Some community-contributed files for trying this out can be found [https://inkscape.org/gallery/=inkscape-filter-set/ in our website's gallery] ([https://gitlab.com/inkscape/ux/-/issues/208 Bug UX#208], [https://gitlab.com/inkscape/inkscape/-/merge_requests/5448 MR #5448]).
The Filter Gallery can be found in the <code>Filters</code> menu. It shows a scrollable (and hideable) list of all filter categories, and a preview image for each filter, applied to a colorful flower image. Your own filters will appear in the category indicated in your filter file, or, if there isn't any, in the <code>Personal</code> category. Inkscape looks for them in a folder named <code>filters</code> in the folder indicated at <code>Edit ➞ Preferences ➞ System: User config</code>. Some community-contributed files for trying this out can be found [https://inkscape.org/gallery/=inkscape-filter-set/ in our website's gallery] ([https://gitlab.com/inkscape/ux/-/issues/208 Bug UX#208], [https://gitlab.com/inkscape/inkscape/-/merge_requests/5448 MR #5448]).


=== Extension galley ===
new dialog that allows you to browse all extensions


https://gitlab.com/inkscape/inkscape/-/merge_requests/5448
=== SVG Font Editor ===


=== Export dialog ===
The context (right-click) menu entry to 'Sort glyphs' and 'Remove pair' (referring to a kerning pair) have been moved to more discoverable buttons ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5421 MR #5421]).
Added icons for single and multiple exports.


https://gitlab.com/inkscape/inkscape/-/merge_requests/6166
=== Object Attributes ===
 
This dialog has been removed. Its contents is now available in the Object Properties dialog.


=== Object Properties ===
=== Object Properties ===


==== Feature: PDF Internal Linking ====
This dialog has been merged with the Object Attributes dialog.
We have supported linking to external websites using urls in pdf for a long time. But have not supported linking to other pages or items. This feature adds tracking of connected objects to the sp-anchor so we know when a hyperlink is linked to an local object instead of a url.
 
It now holds the following information:
 
* Some properties specific to the selected object type (e.g. width / height / corner radius for a rectangle)
** For paths, it now holds editable path data ([https://gitlab.com/inkscape/inkscape/-/merge_requests/6173 MR #6173], like in XML dialog). This is another step toward [https://gitlab.com/inkscape/ux/-/issues/203 ux#203].
* Object ID, label, description, title, highlight color, checkboxes for lock and hide status
* Interactivity (scriptable) properties, such as OnClick, OnMouseOver (input JavaScript)
* When the selected object is enclosed by a hyperlink (added with 'Add hyperlink (anchor)' in right-click menu), the hyperlink's properties (e.g. href, title, role, target) can be edited in this dialog.
 
=== Path Effects ===
 
The (optional) button for displaying the older Live Path Effects gallery dialog has been removed along with the dialog. LPEs can now only be selected from the search field / drop down field combination in the Path Effects dialog ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5760 MR #5760]).
 
=== Preferences ===
 
==== Snapping ====
 
More options for finetuning snapping preference between grid and guidelines vs. objects and alignment/distribution have been added at Edit > Preferences > Behavior > Snapping.


Add object picker tool. Anchor element "href" attribute can be selected by clicking on a destination element apart from editing it by hand.
[needs screenshot or a video that demonstrates it - but that could be hard, it's rather 'felt' than visual]
[[File:Object-picker.gif]]
 
=== Swatches ===
 
The Swatches (Palettes) dialog has been overhauled ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5606 MR #5606]).  
It now:
 
* Color palettes are now selected from a dropdown at the top, instead of a small icon at the bottom.
* Colors can be searched by their name.
* Color palettes can be loaded from a file.
* In addition to Gimp Color Palette files, now 'Adobe Color Book' and 'Adobe Swatch Exchange' files are also supported.
* Support for columns: When a palette file defines 'Columns' (in .gpl files, this is indicated by a line like <code>Columns: 9</code> following the name line), the blocks of colors that belong together will stay together (no 'linebreaks' will be added inside any of the blocks), both in the swatches dialog as well as in the palette at the bottom of the Inkscape window.
* A button for accessing the settings, and two buttons for switching between the grid and row view make it easier to adjust the dialog's layout.
* Support for color palettes with CIELAB colors has been added.
* Limited support for color palettes with CMYK colors has been added.
* The transformation from CMYK to RGB has been improved, even without a proper ICC profile.


[needs image(s)]


https://gitlab.com/inkscape/inkscape/-/merge_requests/5237
=== Text and Font ===


https://gitlab.com/inkscape/inkscape/-/merge_requests/5221
==== General ====


=== Document properties ===
Freshly installed fonts can now be used in Inkscape on Linux, without needing to restart the application. macOS and Windows could not be moved to provide Inkscape with the necessary information ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5240 MR #5240]).


* Added content-scale-lock to document properties
==== New Optional User Interface ====
An experimental 'Unified font browser' has been added. If it is activated under Edit > Preferences > Tools > Text Tool : Text and Font dialog, it will replace the Text and Font dialog with a sortable, filterable, searchable and adjustable list of font previews. The 'Font Attributes' tab and 'Text' tab are available, too [https://gitlab.com/inkscape/inkscape/-/merge_requests/4578 MR #4578].


==== Grids ====
Specifically, these settings are customizable:
*Axonometric grid angles can be set by ratio
*Cleaning up UI


https://gitlab.com/inkscape/inkscape/-/merge_requests/6132
* type of preview (rows or grid)
* sort order: alphabetical, font weight, font width (condensed - wide)
* limit list of fonts to selected font collections
* scaling of preview
* preview text (choice between some presets, custom text entry for the long (row view) sample and the short (grid view) sample)
* whether to show the font name below the preview


https://gitlab.com/inkscape/inkscape/-/merge_requests/5993
[needs image]


https://gitlab.com/inkscape/inkscape/-/merge_requests/6078
== Live Path Effects ==


=== Fill and Stroke ===
=== Ruler ===


==== Pattern editor ====
The Ruler Live Path Effect now features several new options:
Added spin buttons option in dialog  to control pattern gap


https://gitlab.com/inkscape/inkscape/-/merge_requests/5484
* Ruler marks can start from the path at an angle (in degrees, [https://gitlab.com/inkscape/inkscape/-/merge_requests/5749 MR #5749]).
* The marks can start at a distance from the path (in percentage of overall mark length, marks are shortened by this amount, [https://gitlab.com/inkscape/inkscape/-/merge_requests/5751 MR #5751]).


=== Layers ===
[needs image]
Enhance "Add Layer" dialog.


https://gitlab.com/inkscape/inkscape/-/merge_requests/5074
=== Taper Stroke ===


=== Object properties dialog ===
A new option to 'clamp' (cut off) the path's tip instead of tapering it on the selected end of the path has been added. It's available in the 'Start direction' dropdown in the LPE's settings ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5701 MR #5701]).
Attributes dialog subsumed "object properties" as a subdialog and got renamed to "Object Properties". Old name "Object Attributes" has been removed and all places referring to it got updated.


Added path data editing panel to former object attributes dialog to complement existing element-specific panels. This is another step toward [https://gitlab.com/inkscape/ux/-/issues/203 ux#203].
[needs image]


https://gitlab.com/inkscape/inkscape/-/merge_requests/6173
== Palettes ==


== Live path effects ==
* Multiple palettes were updated to contain information about the number of columns for optimal display of the palette ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5647 MR #5647]).
* The 'Web Safe' palette has been removed because of the dust that had already settled on it. Its colors were already included with the 'Web Hex' palette, where they now feature an addition ('(Web-safe)') to their label ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5653 MR #5653]).
* The 'Windows XP' palette has been removed because of its age ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5645]).


== Templates ==
== Templates ==


== SVG Standards Compliance ==
* Folding book templates in A4 and Letter format have been added ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5996 MR #5996]).
* Custom templates can now make use of a category and a label ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5996 MR #5996]).
 
[needs screenshot]




Line 130: Line 271:
=== Customizable Handles ===
=== Customizable Handles ===


The size, color, stroke-width, outline and opacity of on-canvas handles can now be customized, and their shape can be selected from a set of available handle shapes, by copying the CSS file at <code>inkscape/share/ui/node-handles.css</code> into the folder indicated at <code>Edit ➞ Preferences ➞ System: User UI</code> and modifying it [https://gitlab.com/inkscape/inkscape/-/merge_requests/5624 MR #5624].
The size, color, stroke-width, outline and opacity of on-canvas handles can now be customized, and their shape can be selected from a set of available handle shapes, by copying the CSS file at <code>inkscape/share/ui/node-handles.css</code> into the folder indicated at <code>Edit ➞ Preferences ➞ System: User UI</code> and modifying it. Handles will be updated live in Inkscape as when the file has been saved ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5624 MR #5624]).  


[[File:Inkscape vIWVwzkI0T.gif]]
[[File:Inkscape vIWVwzkI0T.gif]]


=== Keyboard Shortcuts ===


== Rendering (advanced) ==
The shortcuts for "Quick Preview" (<kbd>F</kbd>), "Quick Zoom" (<kbd>Q</kbd>), panning (<kbd>Space</kbd>), "Pen Segment To Line" (<kbd>Shift + L</kbd>), "Pen Segment To Curve" (<kbd>Shift + U</kbd>) and "Pen Segments To Guides" (<kbd>Shift + G</kbd>) are now customizable ([https://gitlab.com/inkscape/inkscape/-/merge_requests/6308 MR #6308]).




Line 148: Line 290:
== Extensions ==
== Extensions ==


Some improvements to memory management are made in the extension system.
* Extensions that use a custom GUI can now retrieve information from stderr with the attribute <code>show-stderr</code> [https://gitlab.com/inkscape/inkscape/-/merge_requests/6124 MR #6124].
 
Some improvements to memory management were made in the extension system:


* The extension objects, which used to be carelessly allocated on the heap and left there to leak are now owned by the "Extension database".
* The extension objects, which used to be carelessly allocated on the heap and left there to leak are now owned by the "Extension database".
Line 158: Line 302:
== Command line ==
== Command line ==


* Many new actions have been added to allow editing SVG files and customizing export files. These are also available from the Command palette:
* Many new actions have been added to allow editing SVG files and customizing export files ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5381 MR #5381]). These are also available from the Command palette:
** Set the document's SVG version to 1.1
** Set the document's SVG version to 1.1
** Set the document's SVG version to 2.0
** Set the document's SVG version to 2.0
Line 170: Line 314:
** Insert JavaScript for rendering hatches (polyfill)
** Insert JavaScript for rendering hatches (polyfill)
** Recursively unlink all clones and symbols
** Recursively unlink all clones and symbols
** Turn all shapes recursively into path elements
** Turn all shapes recursively into <code>path</code> elements
** Turn all strokes recursively into fill-only paths
** Turn all strokes recursively into fill-only paths
** Make all paths absolute and predictable
** Make all paths absolute and predictable
** Add bounding box information to all shapes: adds inkscape:visualbox and inkscape:geometricbox attributes
** Add bounding box information to all shapes: adds <code>inkscape:visualbox</code> and <code>inkscape:geometricbox</code> attributes (only current bounding box, not updated when shape changes)
** Add shape path information to all shapes: adds inkscape:d attribute
** Add shape path information to all shapes: adds <code>inkscape:d</code> attribute (only current <code>d</code>, not updated when path is changed)
** Remove unused definitions (gradients, etc.)
** Remove unused definitions (gradients, etc.)
* A new option to print a list of all available input file extensions <code>list-input-types</code> has been added. This includes input file names for extensions, and it is also used for filename completion on the command line ([https://gitlab.com/inkscape/inkscape/-/merge_requests/6126 MR #6126]).
* Options for setting the compression (export-png-compression, values 0–9) and antialiasing (export-png-antialias, values 0–3) level have been added ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5167 MR #5167]).
* An option to rotate the page by 90° (page-rotate) has been added ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5594 MR #5594]).
== Inkview ==
The Inkscape SVG image viewer Inkview now makes use of a (customizable) .ui file instead of a hardcoded GUI ([https://gitlab.com/inkscape/inkscape/-/merge_requests/5899 MR #5899]).


== Bugfixes ==
== Bugfixes ==
Line 182: Line 333:
* Clones no longer vanish when their original path is being edited with the Shape Builder Tool ([https://gitlab.com/inkscape/inkscape/-/issues/4682 Bug #4682], [https://gitlab.com/inkscape/inkscape/-/merge_requests/6131 MR #6131]).
* Clones no longer vanish when their original path is being edited with the Shape Builder Tool ([https://gitlab.com/inkscape/inkscape/-/issues/4682 Bug #4682], [https://gitlab.com/inkscape/inkscape/-/merge_requests/6131 MR #6131]).
* Bump filters and Bevels filters (about 25 different filters) now look again as they were intended, with banding and artifacts much reduced ([https://gitlab.com/inkscape/inkscape/-/merge_requests/6190 MR #6190], [https://gitlab.com/inkscape/inkscape/-/merge_requests/6162 MR #6162]).
* Bump filters and Bevels filters (about 25 different filters) now look again as they were intended, with banding and artifacts much reduced ([https://gitlab.com/inkscape/inkscape/-/merge_requests/6190 MR #6190], [https://gitlab.com/inkscape/inkscape/-/merge_requests/6162 MR #6162]).
* The settings 'Better' and 'Best' for rendering filters now are different again, and 'Better' is a bit faster now ([https://gitlab.com/inkscape/inkscape/-/issues/4722], [https://gitlab.com/inkscape/inkscape/-/merge_requests/6133 MR #6133]).
* The settings 'Better' and 'Best' for rendering filters now are different again, and 'Better' is a bit faster now ([https://gitlab.com/inkscape/inkscape/-/issues/4722 Bug #4722], [https://gitlab.com/inkscape/inkscape/-/merge_requests/6133 MR #6133]).
* Improvement on internal LPE handling ([https://gitlab.com/inkscape/inkscape/-/merge_requests/6100 MR #6100])
* Stroke to Path no longer results in misplacement of the first node when applied to paths with multiple subpaths ([https://gitlab.com/inkscape/inkscape/-/issues/4709 Bug #4709], [https://gitlab.com/inkscape/inkscape/-/merge_requests/6122 MR #6122]).




== Behind the Curtains ==


These are changes that are not visible to the end user, but make development easier, maintain operating system compatibility and help to future-proof Inkscape:


Fix Stroke-to-Path on combined paths
* Lots and lots of changes have been made to prepare Inkscape for the updated user interface framework GTK 4. Those changes should not be noticeable in Inkscape 1.4, but will help us with fixing bugs in multiple branches of Inkscape simultaneously (Inkscape 1.4.x and master/1.5.x).
* Many parts of the code have been refactored, code has been simplified and modernized.
* The code was adjusted to stay compatible with newer versions of third-party libraries.
* Our automatic builds and dependency lists have been updated and changed many times, continuously adjusting to currently available packages for various operating systems and compilation frameworks.


https://gitlab.com/inkscape/inkscape/-/merge_requests/6122
== Translations ==


https://gitlab.com/inkscape/inkscape/-/merge_requests/6100
The following languages have been updated for this version:


https://gitlab.com/inkscape/inkscape/-/merge_requests/6067
* Basque
 
* Belarusian
== Translations ==
* British English
* Catalan
* German
* Hebrew
* Icelandic


=== Contributing to interface translations ===
=== Contributing to interface translations ===
Line 202: Line 364:


== Documentation ==
== Documentation ==
Documentation translations were updated in:
* Hungarian


== Website ==
== Website ==
Line 207: Line 373:
== Important Inkscape Project Milestones ==
== Important Inkscape Project Milestones ==


== Important changes for packagers ==
== Important Changes for Packagers ==
 
* The compile flag <code>WITH_INTERNAL_CAIRO</code> has been removed ([https://gitlab.com/inkscape/inkscape/-/merge_requests/6093 MR #6093]).


== Known issues ==
== Known issues ==

Latest revision as of 08:34, 26 April 2024


Warning symbol.png These Release Notes are in Draft Status.

Note: Not all animations work, due to Wiki bugs with resizing images. Release notes will be transferred to website, there animations will be working.

Important Links:



Warning symbol.png Pending questions:



Release highlights

  • Filter Gallery: it has never been so easy to find the best filter for your needs! This new dialog features previews, categories and search.
  • Modular grids & improved axonometric grids: set the grid angle by ratio for isometric designs and use modular grids to plan layouts and make icons!
  • Swatches dialog and palette file handling improved: quick access to dialog layout controls, search for colors, and open different palette file formats!
  • Unified font browser preview: when activated in the preferences, use it to quickly browse through your font collection. Try it out and give your feedback!
  • Customizable handles: Power users with CSS knowledge can now customize the styling and basic shape of all the handles!
  • There's even more: new templates for folding booklets, additional options in Ruler and Taper Stroke LPE, preview in Spray tool, many new command line options, updated translations and hundreds of bug fixes.

Canvas

Guides

When creating a new guide, all guides are now unlocked, so the new guide can be moved and adjusted freely (MR #5814).

Tools

Node Tool

  • Deleting a node now preserves the handles of adjacent nodes in more cases. Straight lines are now only produced when there were straight lines to begin with, in certain cases also when the option to 'Preserve Shape' is active (MR #6285).

Selector Tool & Node Tool

  • In Edit > Preferences > Behavior > Steps, an option has been added to change how moving selected objects / nodes with the arrow keys works when the canvas is rotated (Arrow keys move object relative to screen). If you're working with a rotated canvas, now, by default, the arrow keys will move the selection horizontally and vertically relative to the screen, not to the rotated document. This allows to work more intuitively while the canvas is rotated. Disabling the option will restore the previous behavior (MR #5031).
  • In the preferences settings for both tools, options for changing the active layer and active page when using the tool to select an object have been added. The Selector tool will change both active layer and active page, while the Node tool will change neither, by default. Other tools (Text tool, Rectangle tool, …) do not change either layer or page when being used (but they can, if you edit the preferences.xml file in a text editor, MR #5257).

Shape Builder Tool

Several improvements were made to the Shape Builder (MR #5428):

  • The Shape Builder tool can now make use of raster graphics, too. Any paths selected together with a raster (pixel) graphic will now function as clipping paths, their colors are not preserved - unlike when you have only paths in the selection. The resulting image parts use clipped clones of the image, to keep the file size small and improve performance. If you want to edit them, you need to unlink the clones.
  • An option for the transparency level of the original drawing has been added (the eye icon opens a popup slider).
  • Optionally, it is now possible to keep a copy of the original objects after the Shape Builder's operation. This option is deactivated by default.

Spray Tool

  • The Spray Tool now shows an outline preview of the next item that it is going to spray, including its shape, rotation and size. The preview is only visible when the tool is not currently spraying. That way, you can choose where to place the next item (with a single click instead of holding the mouse button down, MR #5375). [needs video] spray preview
  • The option to only spray non-overlapping objects now yields faster results through an updated spraying algorithm (MR #5766).

Import / Export

PDF Export

PDF export now supports internal links (going from one part of the file to another part of the same file, weblinks were supported since Inkscape 1.0). This can be used for creating Tables of Contents, for example (MR #5237).


Dialogs

About Inkscape

  • Inkscape's About Screen Contest for this version … [TODO]
  • The About Screen dialog now has the ability to display multiple drawings as a slideshow (MR #5559).
  • The dialog can now be closed by pressing Esc (MR #5860).

Add Layer

The 'Add Layer' dialog now shows the three available options all written out directly as radio buttons, instead of hiding them behind a drop-down selection (MR #5074).

Imageasdasd awdqwdasda.png

Add button from dialog always add it above selected (MR #5074).

Inkscape RH105M5BrW.gif

Create Anchor (Hyperlink) / Object Properties

To make it easier to select an element in the drawing to link to, a button has been added to the side of the field where the target object's id or the external link must be inserted (Href).

When you click on that button, your mouse cursor will transform into a little hand icon. When the hand hovers over any object or over an empty area of the page, a small indicator text will tell you the id of that object or page. Clicking on the object will automatically insert that object's id into the href field. That way, you do not need to use the Objects or XML dialog to look up the internal identifier of the object you want to link to (MR #5221)

Object-picker.gif

Document properties

Scale lock

A new toggle button that allows you to change the document's viewbox scale without changing the physical size of its contents has been added (MR #5993).

[needs image, and a description of why that is useful]

Grids

The grids subsection in the Document Properties dialog has been overhauled with new grid selector buttons, which automatically add the selected type of grid to the drawing when pressed.

Modular Grids

A new grid type was added that consists of rectangles with optional gaps in between.

Height, width, horizontal and vertical gap (also negative for overlapping modules) can be adjusted separately. Each grid module (rectangle) can have its own margin set (negative values for inside margin, positive values for outside margin).

Imageadsa.png
Inkscape nkL1NDBuw4.gif
Axonometric grids

The angles of axonometric grids can now also be set by indicating the ratio between the height and width of the rhombus shape that is formed by it. A common angle for isometric games, for example, is 2:1, corresponding to angles like 26,565051 which are difficult to set exactly without the ratio option (MR #6132).

Export Dialog

  • If you enter a file system path to a save location that does not exist, Inkscape now tries to create folders instead of warning the user. Only if that fails, it will give a warning now (MR #5169).
  • Each of the two tabs of the dialog (single file, batch export) now features a little icon in addition to the text (Bug #4338, MR #6166).

[needs screenshot]

Extension Gallery

When you want to quickly get an overview which extensions are available to you, you can now browse your Inkscape extensions in a gallery similar to the one for filters.

You can use the search field to quickly find the extension you need. The size of the icons is adjustable. They are currently all still identical placeholders, and we invite you to join us if you'd like to help. The menu categories can be hidden if you do not need them.

When you hover over an extension, the dialog shows you a small info text with either the menu path to the extension, or a description (MR #5448).

[needs image / video]

Fill and Stroke

Gradient Editor

It is now possible to control the gradient's angle numerically from the Gradient Editor section of the Fill and Stroke dialog. An additional slider allows for changing the angle by simply dragging. A button to rotate the gradient by 90° completes the new angle controls (MR #5413).

7PviQWIu9r.gif

Inkscape YIRwDrcpcO.gif

Pattern Editor

For users who prefer to have more control when setting the gap between pattern elements, an option has been added to use numerical entry fields (Gap control: precise) instead of the sliders (Gap control: mouse friendly). This allows to add gaps smaller than 20% of the pattern width, in 0.1% steps (and also values larger than 32040%, in case you ever need that pattern rarity! MR #5484).

[needs image]

Filter Gallery

The Filter Gallery can be found in the Filters menu. It shows a scrollable (and hideable) list of all filter categories, and a preview image for each filter, applied to a colorful flower image. Your own filters will appear in the category indicated in your filter file, or, if there isn't any, in the Personal category. Inkscape looks for them in a folder named filters in the folder indicated at Edit ➞ Preferences ➞ System: User config. Some community-contributed files for trying this out can be found in our website's gallery (Bug UX#208, MR #5448).


SVG Font Editor

The context (right-click) menu entry to 'Sort glyphs' and 'Remove pair' (referring to a kerning pair) have been moved to more discoverable buttons (MR #5421).

Object Attributes

This dialog has been removed. Its contents is now available in the Object Properties dialog.

Object Properties

This dialog has been merged with the Object Attributes dialog.

It now holds the following information:

  • Some properties specific to the selected object type (e.g. width / height / corner radius for a rectangle)
    • For paths, it now holds editable path data (MR #6173, like in XML dialog). This is another step toward ux#203.
  • Object ID, label, description, title, highlight color, checkboxes for lock and hide status
  • Interactivity (scriptable) properties, such as OnClick, OnMouseOver (input JavaScript)
  • When the selected object is enclosed by a hyperlink (added with 'Add hyperlink (anchor)' in right-click menu), the hyperlink's properties (e.g. href, title, role, target) can be edited in this dialog.

Path Effects

The (optional) button for displaying the older Live Path Effects gallery dialog has been removed along with the dialog. LPEs can now only be selected from the search field / drop down field combination in the Path Effects dialog (MR #5760).

Preferences

Snapping

More options for finetuning snapping preference between grid and guidelines vs. objects and alignment/distribution have been added at Edit > Preferences > Behavior > Snapping.

[needs screenshot or a video that demonstrates it - but that could be hard, it's rather 'felt' than visual]

Swatches

The Swatches (Palettes) dialog has been overhauled (MR #5606). It now:

  • Color palettes are now selected from a dropdown at the top, instead of a small icon at the bottom.
  • Colors can be searched by their name.
  • Color palettes can be loaded from a file.
  • In addition to Gimp Color Palette files, now 'Adobe Color Book' and 'Adobe Swatch Exchange' files are also supported.
  • Support for columns: When a palette file defines 'Columns' (in .gpl files, this is indicated by a line like Columns: 9 following the name line), the blocks of colors that belong together will stay together (no 'linebreaks' will be added inside any of the blocks), both in the swatches dialog as well as in the palette at the bottom of the Inkscape window.
  • A button for accessing the settings, and two buttons for switching between the grid and row view make it easier to adjust the dialog's layout.
  • Support for color palettes with CIELAB colors has been added.
  • Limited support for color palettes with CMYK colors has been added.
  • The transformation from CMYK to RGB has been improved, even without a proper ICC profile.

[needs image(s)]

Text and Font

General

Freshly installed fonts can now be used in Inkscape on Linux, without needing to restart the application. macOS and Windows could not be moved to provide Inkscape with the necessary information (MR #5240).

New Optional User Interface

An experimental 'Unified font browser' has been added. If it is activated under Edit > Preferences > Tools > Text Tool : Text and Font dialog, it will replace the Text and Font dialog with a sortable, filterable, searchable and adjustable list of font previews. The 'Font Attributes' tab and 'Text' tab are available, too MR #4578.

Specifically, these settings are customizable:

  • type of preview (rows or grid)
  • sort order: alphabetical, font weight, font width (condensed - wide)
  • limit list of fonts to selected font collections
  • scaling of preview
  • preview text (choice between some presets, custom text entry for the long (row view) sample and the short (grid view) sample)
  • whether to show the font name below the preview

[needs image]

Live Path Effects

Ruler

The Ruler Live Path Effect now features several new options:

  • Ruler marks can start from the path at an angle (in degrees, MR #5749).
  • The marks can start at a distance from the path (in percentage of overall mark length, marks are shortened by this amount, MR #5751).

[needs image]

Taper Stroke

A new option to 'clamp' (cut off) the path's tip instead of tapering it on the selected end of the path has been added. It's available in the 'Start direction' dropdown in the LPE's settings (MR #5701).

[needs image]

Palettes

  • Multiple palettes were updated to contain information about the number of columns for optimal display of the palette (MR #5647).
  • The 'Web Safe' palette has been removed because of the dust that had already settled on it. Its colors were already included with the 'Web Hex' palette, where they now feature an addition ('(Web-safe)') to their label (MR #5653).
  • The 'Windows XP' palette has been removed because of its age ([1]).

Templates

  • Folding book templates in A4 and Letter format have been added (MR #5996).
  • Custom templates can now make use of a category and a label (MR #5996).

[needs screenshot]


Symbols

  • Added two new symbol sets, with Sci-Fi and Nature symbols (MR #4792)

Customization / Theming

Customizable Handles

The size, color, stroke-width, outline and opacity of on-canvas handles can now be customized, and their shape can be selected from a set of available handle shapes, by copying the CSS file at inkscape/share/ui/node-handles.css into the folder indicated at Edit ➞ Preferences ➞ System: User UI and modifying it. Handles will be updated live in Inkscape as when the file has been saved (MR #5624).

Inkscape vIWVwzkI0T.gif

Keyboard Shortcuts

The shortcuts for "Quick Preview" (F), "Quick Zoom" (Q), panning (Space), "Pen Segment To Line" (Shift + L), "Pen Segment To Curve" (Shift + U) and "Pen Segments To Guides" (Shift + G) are now customizable (MR #6308).


Windows-specific Changes

macOS-specific Changes

Extensions

  • Extensions that use a custom GUI can now retrieve information from stderr with the attribute show-stderr MR #6124.

Some improvements to memory management were made in the extension system:

  • The extension objects, which used to be carelessly allocated on the heap and left there to leak are now owned by the "Extension database".
  • A memory issue with the ImageMagick extension is fixed: the memory was allocated with array new but freed with non-array delete. Previously this issue was never seen because the destructor was not called, now it is not seen because we use std::vector instead of calling new and delete manually.


https://gitlab.com/inkscape/inkscape/-/merge_requests/6109

Command line

  • Many new actions have been added to allow editing SVG files and customizing export files (MR #5381). These are also available from the Command palette:
    • Set the document's SVG version to 1.1
    • Set the document's SVG version to 2.0
    • Remove any Inkscape-specific SVG data
    • Remove any known proprietary SVG data
    • Remove auto start positions from markers
    • Remove all transforms from all shapes
    • Remove context paints from markers
    • Replace SVG2 text with SVG1.1 text
    • Insert JavaScript for rendering meshes (polyfill)
    • Insert JavaScript for rendering hatches (polyfill)
    • Recursively unlink all clones and symbols
    • Turn all shapes recursively into path elements
    • Turn all strokes recursively into fill-only paths
    • Make all paths absolute and predictable
    • Add bounding box information to all shapes: adds inkscape:visualbox and inkscape:geometricbox attributes (only current bounding box, not updated when shape changes)
    • Add shape path information to all shapes: adds inkscape:d attribute (only current d, not updated when path is changed)
    • Remove unused definitions (gradients, etc.)
  • A new option to print a list of all available input file extensions list-input-types has been added. This includes input file names for extensions, and it is also used for filename completion on the command line (MR #6126).
  • Options for setting the compression (export-png-compression, values 0–9) and antialiasing (export-png-antialias, values 0–3) level have been added (MR #5167).
  • An option to rotate the page by 90° (page-rotate) has been added (MR #5594).

Inkview

The Inkscape SVG image viewer Inkview now makes use of a (customizable) .ui file instead of a hardcoded GUI (MR #5899).

Bugfixes

  • The snap indicator text no longer flickers when object bounding box and path are in the same location (e.g. borders of a rectangular path) (Bug #4399, MR #6157).
  • Clones no longer vanish when their original path is being edited with the Shape Builder Tool (Bug #4682, MR #6131).
  • Bump filters and Bevels filters (about 25 different filters) now look again as they were intended, with banding and artifacts much reduced (MR #6190, MR #6162).
  • The settings 'Better' and 'Best' for rendering filters now are different again, and 'Better' is a bit faster now (Bug #4722, MR #6133).
  • Improvement on internal LPE handling (MR #6100)
  • Stroke to Path no longer results in misplacement of the first node when applied to paths with multiple subpaths (Bug #4709, MR #6122).


Behind the Curtains

These are changes that are not visible to the end user, but make development easier, maintain operating system compatibility and help to future-proof Inkscape:

  • Lots and lots of changes have been made to prepare Inkscape for the updated user interface framework GTK 4. Those changes should not be noticeable in Inkscape 1.4, but will help us with fixing bugs in multiple branches of Inkscape simultaneously (Inkscape 1.4.x and master/1.5.x).
  • Many parts of the code have been refactored, code has been simplified and modernized.
  • The code was adjusted to stay compatible with newer versions of third-party libraries.
  • Our automatic builds and dependency lists have been updated and changed many times, continuously adjusting to currently available packages for various operating systems and compilation frameworks.

Translations

The following languages have been updated for this version:

  • Basque
  • Belarusian
  • British English
  • Catalan
  • German
  • Hebrew
  • Icelandic

Contributing to interface translations

Want to help with translations? Learn how to help!

Documentation

Documentation translations were updated in:

  • Hungarian

Website

Important Inkscape Project Milestones

Important Changes for Packagers

  • The compile flag WITH_INTERNAL_CAIRO has been removed (MR #6093).

Known issues

Other releases