Difference between revisions of "Release notes/1.2"

From Inkscape Wiki
Jump to navigation Jump to search
m (Fix up / unify style of existing menu paths)
(27 intermediate revisions by the same user not shown)
Line 21: Line 21:
'''Definitely not released yet.'''
'''Definitely not released yet.'''


== Important changes for packagers ==
* Inkscape documents can now hold '''multiple pages''', which are managed by the new '''[[#Page_tool|Page tool]]'''
 
* '''Editable [[#Markers|markers]] and [[#Custom_Dash_patterns|dash patterns]]'''
* New dependency on <code>python-cssselect</code> added which is required for usage of Inkscape extensions ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3239 MR #3239])
* '''[[#Alignment_and_Distribution_snapping|On-canvas alignment snapping]]'''
 
* '''[[#Selector_Tool|Selectable origin for numerical scaling and moving]]'''
== Speed Improvements ==
* '''[[#Align_and_distribute|All alignment options in a single dialog]]'''
 
* '''[[#Gradient_Editor_is_back|Gradient editing in the Fill and Stroke dialog]]'''
* Dialogs have been refactored to better control their update and refresh mechanisms ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3369 MR #3369]), and will defer updates when hidden ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3761 MR #3761])
* '''[[#Layers_and_Objects_dialog|Layers and objects dialog merged]]'''
* New Layers and Objects dialog significantly improves performance when handling many objects at the same time. ([https://gitlab.com/inkscape/inkscape/-/merge_requests/2466 MR #2466] [https://gitlab.com/inkscape/inkscape/-/merge_requests/3635 MR #3635])
* '''[[#Snapping|Snap settings refactored]]'''
* Document Properties dialog enormously sped up on macOS if grids are in use. ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3400/ MR #3400], [https://gitlab.com/inkscape/inkscape/-/merge_requests/3403 MR #3403])
* '''[[#Customization_.2F_Theming|Configurable Tool bar''', '''continuous icon scaling''' and '''many more new customization options]]'''
* Speed improved for documents with many layers by using static layer selection in the status bar ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3629 MR #3629])
* '''Performance improvements''' for many parts of the interface and many different functions
* '''[[#Notable_bugfixes|Many crash & bug fixes]]'''


== General user interface ==
== General user interface ==


The padding of the <kbd>+</kbd> / <kbd>-</kbd> buttons for number entry fields has been reduced, so those fields now take up considerably less space. If you prefer the wider buttons, this can be turned off in  <code>'''Preferences > Interface :  Use narrow number entry boxes''' </code>. ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3358 MR #3358])
=== Color palette ===


=== Color picker  ===
The overall look and options of the color palette and the Swatches dialog got a massive overhaul ([https://gitlab.com/inkscape/inkscape/-/merge_requests/2881 MR #2881]):
HSL is much more intuitive way how to think about colors so now its default mode for color picker. we moved all color picker blending modes in to drop-down and added icons for cleaner UI.
There is an option in preferences to change old look back
https://gitlab.com/inkscape/inkscape/-/merge_requests/3443


=== Info Bar ===
* Color palettes now have a preview
Layers drop-down indicator was replace by button that will open new [[#Layers_and_Objects_dialog|Layers and object dialog]]
* Improved settings for size and padding
* New setting for number of rows
* Scroll vertically through palette rows, or use the arrow buttons


=== Dialog System ===
[[File:Color pallet demo.gif]]
we made tab labels more responsive to the width of dialog


https://gitlab.com/inkscape/inkscape/-/merge_requests/3627
=== Status Bar ===


Docking zones now blink after you start dragging tab  to show where it is possible to dock it
* The layer selection dropdown has been replaced by a layer indicator. Clicking on the indicator opens the new [[#Layers_and_Objects_dialog|Layers and object dialog]]. This change improves Inkscape's performance for documents with many layers ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3629 MR #3629]).


https://gitlab.com/inkscape/inkscape/-/merge_requests/3729
== Canvas ==
 
We added Options button (arrow down) next to every dialog, It has option for closing, un-docking but also open any dialog
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/3728


=== Icons ===
===== Multicolor icons =====
Multiple icons got small retouches and other improvements to readability or contrast. Align and distribute icons  got new redesign to fit in to 16x16 grid. Green color for dark theme got little brighter to improve contrast
Cursors and icons in toolbox for bezier tool and calligraphy now use same  imagery
== Canvas ==
=== Page ===
=== Page ===
we added realistic shadow to the page


https://gitlab.com/inkscape/inkscape/-/merge_requests/3128
* The page shadow now has a more realistic, blurry, fade-out look ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3128 MR #3128])
* Settings for the page background / decoration were refactored, see [section about Document properties dialog]
* Inkscape documents can now hold multiple pages! See [section about the new Page tool]


=== Snapping ===
=== Snapping ===
==== Snapping Settings ====
Snapping settings got unified and settings are no longer saved in to svg file but to to preferences inside of inkscape.
All snapping settings are moved to '''Preferences> Behavior > Snapping'''


==== Snapping Toolbar  ====
* Snapping toolbar got removed and replaced with new simplified snapping pop over. You can find it in top Right corner as a toggle switch with arrow for change preferences.
Snapping toolbar got removed and replaced with new simplified snapping pop over. You can find it in top Right corner as a toggle switch with arrow for change preferences.
* Snapping settings got unified and settings are no longer saved in to svg file but to to preferences inside of inkscape.
* All snapping settings are moved to <code>Edit → Preferences → Behavior → Snapping</code>


Preferences has two modes:
Preferences has two modes:
* Simple - 3 options (Bounding box, paths, Alignment snapping). This should be good simple preset for most of users needs.
* Simple - 3 options (Bounding box, paths, Alignment snapping). This should be good simple preset for most of users needs.
* Advanced - All granualr control over every snapping option. This provides all functionality for pro users
* Advanced - All granualr control over every snapping option. This provides all functionality for pro users ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3323 MR #3323])
https://gitlab.com/inkscape/inkscape/-/merge_requests/3323
 




Line 90: Line 75:
Three new modes of on-canvas snapping have been added. These new modes make aligning and distributing objects a very easy drag and drop operation.
Three new modes of on-canvas snapping have been added. These new modes make aligning and distributing objects a very easy drag and drop operation.


The new snapping options can be enabled or disabled from the <code>Snap popover -> Advanced</code> using the following new options:
The new snapping options can be enabled or disabled from the <code>Snap popover Advanced</code> using the following new options:
* Alignment Snapping : Toggle alignment snapping for objects.
* Alignment Snapping : Toggle alignment snapping for objects.
* Self snapping : Toggle alignment snapping for nodes in the same path while editing nodes.
* Self snapping : Toggle alignment snapping for nodes in the same path while editing nodes.
Line 97: Line 82:
[[File:Snap-toolbar.png|new Snap Toolbar options]]
[[File:Snap-toolbar.png|new Snap Toolbar options]]


Alignment and distribution snapping also have their separately configurable snap tolerances which can be adjusted in <code>Document Properties > Snap</code>.
Alignment and distribution snapping also have their separately configurable snap tolerances which can be adjusted in <code>Document Properties Snap</code>.
Both Alignment and Distribution snapping also have a preference to show snap distances which can be enabled or disabled from <code>Preference > Snapping > Show snap distance in case of alignment or distribution snap</code>.
Both Alignment and Distribution snapping also have a preference to show snap distances which can be enabled or disabled from <code>Edit → Preferences → Snapping: Show snap distance in case of alignment or distribution snap</code>.


===== Alignment Guides =====
===== Alignment Guides =====


are horizontal or vertical lines that only appear when you're editing objects on the canvas. Temporary guide lines appear if the selected object can be aligned relative to another object on the canvas. Once a guide does occur, the movement of the selection is constrained in the general direction of the guide which makes placing objects on the canvas easier.
are horizontal or vertical lines that only appear when you're editing objects on the canvas. Temporary guide lines appear if the selected object can be aligned relative to another object on the canvas. Once a guide does occur, the movement of the selection is constrained in the general direction of the guide which makes placing objects on the canvas easier.
====== Self snapping ======
 
===== Self snapping =====


is useful for node editing. Nodes will snap to their own geometry
is useful for node editing. Nodes will snap to their own geometry
Line 110: Line 96:


are also a new feature added to Inkscape. These are spacing guides that appear in between equally spaced objects. These guides make it easier to place objects at equal distance from each other. These guides also appear in horizontal or vertical direction based on the optimum snap position.
are also a new feature added to Inkscape. These are spacing guides that appear in between equally spaced objects. These guides make it easier to place objects at equal distance from each other. These guides also appear in horizontal or vertical direction based on the optimum snap position.
[[File:Distribution-snapping-demo.gif|center|Distribution and Alignment Snapping]]
[[File:Distribution-snapping-demo.gif|center|Distribution and Alignment Snapping]] ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3294 MR #3294])


Related Merge Request: https://gitlab.com/inkscape/inkscape/-/merge_requests/3294
== Tools ==


== Tools ==
=== Page tool ===
 
The new Page tool (lowest button in the tool bar) allows you to create multi-page Inkscape documents, and to import as well as export multi-page PDF documents. ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3486 MR #3486], [https://gitlab.com/inkscape/inkscape/-/merge_requests/3785 MR #3785], [https://gitlab.com/inkscape/inkscape/-/merge_requests/3821 MR #3821]). It supports overlapping pages and pages of different sizes in a single document.


=== Selector Tool ===
'''Tool usage:'''
* To '''create a new page''' either:
** click-and-drag on the canvas
** or click on the 'Create a new page' button in the tool controls
* To '''delete a page''', click on the page to select it, then click on the button <code>Delete selected page</code> or use the <code>Del</code> or <code>Backspace</code> keys.
* To '''move a page''' on the canvas, click-and-drag it to the desired new position. If the option to <code>Move overlapping objects</code> is active, this will also move any objects that touch the page along with it.
* To '''change a page's size''':
** click on a page whose size you want to change to select it, then drag the square-shaped handle in its bottom right corner
** click on the page, and then choose one of the predefined sizes in the page size dropdown, or enter your size values for the 'Custom' option, by typing them into the field in the form of <code>10cm x 15cm</code>
* To '''fit a page''' to:
** the size of '''the drawing''', make sure to have no object selected before you switch to the Page tool. Then select a page by clicking on it, then click on the button 'Fit page to drawing or selection' in the tool controls
** '''a selected object''', first select the object(s) with the selection tool, then switch to the Page tool, click on a page to select it, then press the the button 'Fit page to drawing or selection' in the tool controls
* To '''add a label''' to your page, select the page by clicking on it, then enter a name or label for it into the text field in the page tool's tool controls. Labels are always visible, no matter which tool is currently selected.
* To '''export a multi-page PDF''' file, use <code>File → Save a copy … → PDF</code>. This will automatically include all pages.
* To '''open or import a multi-page PDF or (pdf-based) AI''' file, use <code>File → Open/Import → select file name → choose to import 'All' pages</code> [Known issue: 'import' moves content of some pages to some far out place in the drawing]


==== Custom Origin ====
''Note: Multi-page SVG files are an Inkscape-specific concept. Web browsers will only display the first page of your document.''


You can edit the Origin of the selection. By clicking on one of 8 canvas handles <code><-></code> changes the origin/ anchor point of the selection. After that, you will see a big gray cross from a new origin. This change will be reflected in the toolbar from where you can edit position and size with precise numbers. This is useful if you want to move/scale a selection with a precise number in mind. You can also move origin anywhere by dragging on the middle handle + .
=== Selector Tool ===


[https://gitlab.com/inkscape/inkscape/-/merge_requests/2700 2700]
The tool now allows to '''set the origin of the selection''' for precise numerical positioning:


# '''Click''' on one of the 9 object handles to select your desired origin for the scaling, '''or select and then drag''' the middle handle to the desired position
# A '''small red circle''' now indicates the new origin and the '''x/y position''' in the tool controls will adjust to the new origin.
# Now '''edit the x, y, width or height values''' to move and scale your object using the new origin ([https://gitlab.com/inkscape/inkscape/-/merge_requests/2700 MR #2700])


[[File:Change origin of selection.gif]]
[[File:Change origin of selection.gif]]
Line 130: Line 135:
=== Text Tool ===
=== Text Tool ===


New feature  padding knot to flow box [https://gitlab.com/inkscape/inkscape/-/merge_requests/2769 2769]
* '''Kerning options''' are now symbolized by a '''button''' between the subscript and text direction selectors. Clicking on it will open a so-called pop-over, where all previously available options can be found. This change saves space in the Text tool's toolbar.
* '''Negative kerning''' values can now be as little as <code>-1000</code> (previously -100), making them symmetrical to their positive counterparts ([https://gitlab.com/inkscape/inkscape/-/merge_requests/2569 MR #2569], [https://gitlab.com/inkscape/inkscape/-/merge_requests/3434 MR #3434])
* '''Padding''': Text that is flowed into a shape and standard flowed text now have an '''additional square-shaped handle''' in the top right corner. Move the handle to adjust the text padding inside the frame ([https://gitlab.com/inkscape/inkscape/-/merge_requests/2769 MR #2769]) <span style="color:red;">'''[Currently broken]'''</span>
* '''Exclusion zones''': Text can now '''flow around one or more movable objects''' (use shapes and paths on the same object hierarchy level as the text; no groups / images supported). Select the object(s) and the text, and set the exclusion zone by going to <code>Text → Set subtraction frames</code>


SVG 2.0 flowed text allows for shape-padding and shape-subtract attributes, allowing for the text to flow into a shape and leave some space between it's edges and where the text will start to flow as well as subtracting shapes with margin, which allows text to flow around other objects in the scene. These attributes were supported in Inkscape 1.0, but not exposed to the user. This version of Inkscape includes both an adjustable on-canvas knot for changing the padding as well as a Text menu item for setting text subtraction properties with a further knot to adjust it's margins.
Background info:
''SVG 2.0 flowed text allows for <code>shape-padding</code> and <code>shape-subtract</code> attributes. <code>shape-padding</code> lets the text flow into a shape and leave some space between its edges and where the text will start to flow. <code>shape-subtract</code> subtracts shapes with margin, so text can flow around other objects in the scene. These attributes were supported in Inkscape 1.0, but not exposed to the user. This version of Inkscape includes both an adjustable on-canvas knot for changing the padding as well as a Text menu item for setting text subtraction properties with a further knot to adjust it's margins.''


[See merge request for animated gifs to add here]
[See merge request for animated gifs to add here]


kerning options moved to pop over to save space in toolbar.
== Path Operations ==
We also increased range sliders for letters/words spacing
https://gitlab.com/inkscape/inkscape/-/merge_requests/2569
https://gitlab.com/inkscape/inkscape/-/merge_requests/3434
 
Last line in paragraph is not justified anymore
https://gitlab.com/inkscape/inkscape/-/merge_requests/3780
 
=== Page tool ===
New tool and feature that allows you to create multipage ( pages ) SVG and PDF. As a part of this feature is also import of multipages  to inkscape.
* you can create new page on canvas
* you can edit size page on canvas
* you can change position of page on canvas
* you can create new page by clicking + button in toolbar
* you can name your pages
* you can delete page
* you can fit page size around your selection
* you can type in page sizes
* you can chose  page size from presets
* You can open PDF/AI with multiple pages
* You can import pages from pdf in to existing svg (file> import)
* you can save multipage pdf
* you can save multipage svg ( multipages are not supported in browsers first page is viewport for browsers)
(TODO: document all features and how it works)


https://gitlab.com/inkscape/inkscape/-/merge_requests/3486
'''Split path''', split non-intersecting path functionality. <code>'''Path → Split path'''</code>
 
Useful for splitting Letter or other objects made from multiple paths(usually holes) in to single object ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3738 MR #3738])
https://gitlab.com/inkscape/inkscape/-/merge_requests/3785
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/3821
 
=== Caligraphy brush / pen  ===
 
Allows fixation to have negative values
https://gitlab.com/inkscape/inkscape/-/merge_requests/3782


== Dialogs ==
== Dialogs ==
Line 176: Line 154:
=== General ===
=== General ===


You can hide the docking area on the left or right on the screen with a single mouse action now!
* A mini-menu (downward pointing arrow symbol) was added into the title bar of every multi-dialog panel (also called 'notebook'). You can use it to close the current tab, to undock it, or to close the whole panel. It also shows a list of available dialogs, sorted by purpose, allowing you to open them with a click (([https://gitlab.com/inkscape/inkscape/-/merge_requests/3728 MR #3728])
Click on the vertical <code>'''...'''</code> or drag the bar past 50% percent of the minimal dock width ([https://gitlab.com/inkscape/inkscape/-/merge_requests/2969 MR #2969])
* Open dialogs are now less costly for performance, because they do not update when it's not needed ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3369 MR #3369]), or when they are hidden ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3761 MR #3761])
* Docking zones now expand and flash slowly when a dialog is dragged close to them. This makes it easier to see where docking is possible ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3729 MR #3729])
* The text labels of docked dialogs are now more responsive to the width of dialog ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3627 MR #3627])


<gallery mode="packed" heights=450px>
=== Align and distribute ===
File:Hiding docks.gif| Toggle to hide/unhide dock
</gallery>


* The formerly separate <code>Arrange</code> dialog is now '''integrated''' with the <code>Align and Distribute</code> dialog. With its '''three tabs''', more '''user-friendly names''' and some '''small visual tweaks''', the dialog now holds everything that is needed for aligning, distributing and arranging objects in your drawing ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3382 MR #3382], [https://gitlab.com/inkscape/inkscape/-/merge_requests/3667 MR #3667]).
* The icons inside this dialog are now smaller.


[[File:Align and distribute dialog with 3 tabs.gif]]


=== Preferences ===


Preferences zoom ruler respect theme look
=== Document Properties ===
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/3450
 
Allow select same to work like select all
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/2832


=== Document Properties ===
We revamped the document properties dialog from old cluttered, not so user friendly to completely redesigned dialog that users will enjoy
We revamped the document properties dialog from old cluttered, not so user friendly to completely redesigned dialog that users will enjoy
* Document Properties dialog enormously sped up on macOS if grids are in use. ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3400/ MR #3400], [https://gitlab.com/inkscape/inkscape/-/merge_requests/3403 MR #3403])


=== Trace Bitmap ===
We redesigned document properties. Since we introduce new feature Multipages wich is not part of svg standart  (not suported by browsvers).  we cahneg this dialog to contol how big is a viewbox (what gets shown in  browsvers). We use first page is also viewbox ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3700 MR #3700]).


Clean up of ui: Added sliders , fixed live preview, dialog is size responsive
We moved out snapping settings ouside this dialog and also outside of svg document in to preferences.


https://gitlab.com/inkscape/inkscape/-/merge_requests/3405
=== Fill and Stroke dialog ===
 
=== Color pallet and Swatches ===
 
We improved Look and settings options of this two panels.
* color pallets have previewa
* you can control size, padding, nuber of rows
* Scrolling is now possible just on vertical axis
* you can use arrow buttons to navigate up and down
 
[[File:Color pallet demo.gif]]
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/2881
 
=== Alignment and distribute ===
 
We fused Arrange dialog into Alignment and Distribution dialog . its in 3 tabs  with more user friendly names and small visual tweaks.
 
Icons inside this dialog are smaller and redesign.
 
[[File:Align and distribute dialog with 3 tabs.gif]]
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/3382
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/3667
 
=== Layers and Objects dialog ===
 
We fused Layers and objects dialog in to new improved dialog.
 
* new icons for every object  type
* first object icon enable/disable  view of objects
* masks and clipping paths are added as a overly suicon
* every new layer has new color
* Colors of icons in panel and paths on canvas  are linked for better organization
* you can edit color of of layer/object by slisking on color block on right
* default highlight colors delegated to <code>style.css</code> file
* double click label (name of the object) to rename it
* info-bar shows you current layer if you click on it and will open layers dialog
 
* shift-click on an eye icon toggles layer solo visibility (hiding others)
 
* shift-click on a padlock locks other layers
*If you hold Alt and hover over  items in dialog all other elements get lover opacity. So you can see what exactly is the object you pointing at
 
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/2466
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/3741
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/3597
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/3645
 
=== SVG Font Editor ===
 
Bug fixes, small face lift and UX and performance improvements of the dialog
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/3396


https://gitlab.com/inkscape/inkscape/-/merge_requests/3552
==== Color selector ====
* The more intuitive HSL mode (hue, saturation, lightness) is now the default mode of the color selector.
* All color selection modes (e.g. HSL, HSV, RGB, CMYK, color wheel, CMS) have been moved into drop-down menu, with icons. You can get the old, tabbed look back by disabling the option in <code>Edit → Preferences → Interface: Use compact color selector mode switch</code> ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3443 MR #3443]).
<!-- HSLuv mode (not merged yet) -->


=== Text and Font dialog ===
The dialog's width has been reduced, so it won't take up excessive amounts of space when docked ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3314 MR #3314]).
=== Transform dialog ===
We cleaned up this dialog, reduced width and added explanation for metric transformations
https://gitlab.com/inkscape/inkscape/-/merge_requests/3381
=== Fill and Stroke dialog ===
==== Gradient Editor is back ====
==== Gradient Editor is back ====


A replacement for the [https://wiki.inkscape.org/wiki/index.php?title=Release_notes/1.1#Legacy_Gradient_Editor_dialog_removed|lost gradient editor] was added to the Fill and Stroke dialog ([https://gitlab.com/inkscape/inkscape/-/merge_requests/2688 MR #2688], [https://gitlab.com/inkscape/ux/-/issues/67 But UX#67]).
A replacement for the [https://wiki.inkscape.org/wiki/index.php?title=Release_notes/1.1#Legacy_Gradient_Editor_dialog_removed|lost gradient editor] was added to the Fill and Stroke dialog ([https://gitlab.com/inkscape/inkscape/-/merge_requests/2688 MR #2688], [https://gitlab.com/inkscape/ux/-/issues/67 Bug ux#67]).


Users can now add, edit and delete gradient stops directly in the 'Fill and Stroke' dialog.
This allows you to add, edit and delete gradient stops directly in the 'Fill and Stroke' dialog again.  


New stops can be added by <code>double clicking</code> on the gradient preview, and can be deleted by selecting them and pressing the <kbd>Del</kbd> or <kbd>Backspace</kbd> key. Their position can be adjusted with the mouse by <code>dragging</code> the stops along the gradient preview, or numerically using stop offset option for more precise adjustments.
* to '''add''' a new stop, '''double click''' on the gradient preview
* to '''move''' a stop, '''click and drag''' it along the gradient preview or enter the stop offset numerically for more precision
* to '''remove''' a stop, click on it to '''select it, then press the <code>Del</code> or <code>Backspace</code> key'''


[[File:Gradient editor adding stops.gif]]
[[File:Gradient editor adding stops.gif]]
Line 301: Line 211:
[[File:First and last node offset.gif]]
[[File:First and last node offset.gif]]


other fixies
duplicated gradeint does not get deleted
https://gitlab.com/inkscape/inkscape/-/merge_requests/3361


==== Markers ====
==== Markers ====
Line 312: Line 218:
[[File:Working with new markers.gif]]
[[File:Working with new markers.gif]]


 
You can also edit size rotation and offset of markers on canvas. By clicking on edit button in style tab under marker ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3394 MR #3394], [https://gitlab.com/inkscape/inkscape/-/merge_requests/3420 MR #3420])
 
You can also edit size rotation and offset of markers on canvas. By clicking on edit button in style tab under marker
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/3394


[[File:Edit markers on canvas.gif]]
[[File:Edit markers on canvas.gif]]


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


==== Custom Dash strokes ====
==== Custom Dash strokes ====
We added UI for editing custom dash stroke pattern. Click on '''Custom'''  option inside a  dash stroke drop-down and this field will be shown under it. Now you can add your custom pattern by typing numbers (dash gap dash gap ...)
We added UI for editing custom dash stroke pattern. Click on '''Custom'''  option inside a  dash stroke drop-down and this field will be shown under it. Now you can add your custom pattern by typing numbers (dash gap dash gap ...)


Line 328: Line 230:


==== Other small changes ====
==== Other small changes ====
we reorder caps to mach order
https://gitlab.com/inkscape/inkscape/-/merge_requests/3402


Color picker mode got redesigned  [[#Color_picker]]
we reorder caps to mach order ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3402 MR #3402])


=== Document Properties ===
We redesigned document properties. Since we introduce new feature Multipages wich is not part of svg standart  (not suported by browsvers).  we cahneg this dialog to contol how big is a viewbox (what gets shown in  browsvers). We use first page is also viewbox.


https://gitlab.com/inkscape/inkscape/-/merge_requests/3700
=== Layers and Objects dialog ===


We moved out snapping settings ouside this dialog and also outside of svg document in to preferences.
We fused Layers and objects dialog in to new improved dialog. New Layers and Objects dialog significantly improves performance when handling many objects at the same time ([https://gitlab.com/inkscape/inkscape/-/merge_requests/2466 MR #2466], [https://gitlab.com/inkscape/inkscape/-/merge_requests/3635 MR #3635], [https://gitlab.com/inkscape/inkscape/-/merge_requests/2466 MR #2466], [https://gitlab.com/inkscape/inkscape/-/merge_requests/3741 MR #3741], [https://gitlab.com/inkscape/inkscape/-/merge_requests/3597 MR #3597], [https://gitlab.com/inkscape/inkscape/-/merge_requests/3645 MR #3645]).


== Filters ==
* new icons for every object  type
* first object icon enable/disable  view of objects
* masks and clipping paths are added as a overly suicon
* every new layer has new color
* Colors of icons in panel and paths on canvas  are linked for better organization
* you can edit color of of layer/object by slisking on color block on right
* default highlight colors delegated to <code>style.css</code> file
* double click label (name of the object) to rename it
* info-bar shows you current layer if you click on it and will open layers dialog


* shift-click on an eye icon toggles layer solo visibility (hiding others)


== Commands ==
* shift-click on a padlock locks other layers
* If you hold Alt and hover over  items in dialog all other elements get lover opacity. So you can see what exactly is the object you pointing at


=== Path Operations ===


'''Split path''', split non-intersecting path functionality. <code>'''Path > split path'''</code>
=== Preferences ===  
Useful for splitting Letter or other objects made from multiple paths(usually holes) in to single object
https://gitlab.com/inkscape/inkscape/-/merge_requests/3738
 
== Live path effects ==
perspective/envelope LPE now works on objects with 0 width or height . (edge cases for single line stroke)
https://gitlab.com/inkscape/inkscape/-/merge_requests/2712


== Import / Export ==
* Preferences zoom ruler respect theme look ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3450 MR #3450])
* Allow select same to work like select all ([https://gitlab.com/inkscape/inkscape/-/merge_requests/2832 MR #2832])


== Customization ==
=== SVG Font Editor ===


=== Themes ===
Bug fixes, small face lift and UX and performance improvements of the dialog ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3396 MR #3396], [https://gitlab.com/inkscape/inkscape/-/merge_requests/3552 MR #3552])


* A contrast slider was added for fine tuning the selected theme's colors at <code>Preferences ⯈ Interface ⯈ Themeing: Contrast</code> ([https://gitlab.com/inkscape/inkscape/-/merge_requests/906 MR #906])
=== Swatches ===


<gallery mode=packed heights=550px>
The Swatches dialog uses the same improved settings as [the color palette].
File:Contrast slider.gif|The contrast slider allows to fine-tune the theme's colors
</gallery>


=== Cursors ===


Drop shadow is now optional for mouse cursors.
=== Text and Font dialog ===
You can turn it off in <code> '''Preferences > Interface : Enable Scaling''' </code> and <code> '''Preferences > Interface : Show drop shadow''' </code>


https://gitlab.com/inkscape/inkscape/-/merge_requests/3352
The dialog's width has been reduced, so it won't take up excessive amounts of space when docked ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3314 MR #3314]).


=== UI ===
You can  change what you see in down info bar. By default no changes are made just option to turn off  information
https://gitlab.com/inkscape/inkscape/-/merge_requests/3445


you can control size of the font '''preferences > interface > theme'''
=== Trace Bitmap ===


https://gitlab.com/inkscape/inkscape/-/merge_requests/3690
The '''Trace Bitmap''' dialog received a few updates and some more polish ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3405 MR #3405]):


=== Toolbars and Toolbox ===
* The '''preview auto-updates''' more reliably and shows a better preview image.
<code> Preferences > interface > toolbars  </code>
* The '''preview location''' now adjusts to the dialog's format: if it is wider than tall, it moves to the right side, and if it is taller than wide, the preview appears at the bottom of the dialog.
* The number entry fields are now accompanied by '''draggable sliders'''.


You can control size of the icons and also customize with tools are visible in a toolbar(toolbox).
=== Transform dialog ===


[[File:Editing toolbox.gif]]
We cleaned up this dialog, reduced width and added explanation for metric transformations ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3381 MR #3381])




https://gitlab.com/inkscape/inkscape/-/merge_requests/3515
== Filters ==


== macOS-specific Changes ==
On macOS, enable all special menu items in the application menu and hide them from other menus.
https://gitlab.com/inkscape/inkscape/-/merge_requests/3767


== Live path effects ==
perspective/envelope LPE now works on objects with 0 width or height . (edge cases for single line stroke) ([https://gitlab.com/inkscape/inkscape/-/merge_requests/2712 MR #2712])


== Windows-specific Changes ==
== Import / Export ==
Modifier keys now work with pen input
https://gitlab.com/freedesktop-sdk/mirrors/gnome/gtk/-/commit/46c12b2c922d5592cedd29624cbf3be6b4411084


== Extensions ==
== Customization / Theming ==
Add option to limit output extension to save copy


https://gitlab.com/inkscape/inkscape/-/merge_requests/3600
=== General User Interface ===


* The font size in the user interface can be adjusted at <code>Edit → Preferences → Interface → Theming: Font scale</code> ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3690 MR #3690])
* The <code>+</code>/<code>-</code> buttons for number entry fields are now smaller. If you prefer the old, wider buttons, they can be turned on again by disabling <code>'''Preferences → Interface :  Use narrow number entry boxes''' </code>. ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3358 MR #3358])


=== Bars / Toolbars ===


Added Python app dirs dependency
* You can now hide elements from the status bar (style indicator, layer indicator, mouse coordinates, canvas rotation) at <code>Edit → Preferences → Interface: Status bar</code> ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3445 MR #3445])
* You can now hide tools from the tool bar at <code>Edit → Preferences → Interface → Toolbars: Toolbars</code> ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3515 MR #3515])


https://gitlab.com/inkscape/inkscape/-/merge_requests/3568
[[File:Editing toolbox.gif]]


== Command line ==
=== Cursors ===


== Behind the curtains ==
* The drop shadow is now optional for mouse cursors. You can turn it off in <code>Edit → Preferences → Interface → Mouse cursors: Show drop shadow</code> ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3352 MR #3352]).


=== Gio::Actions ===
=== Icons ===
continuous work on converting verbs to Gio::Actions . This work is done as a preparation for migration to gtk4 and also allows us to have this commands in command pallet and assign shortcuts to this coverted commands. (TODO: there is lots of MRs mostly from tav which needs to be sorted and added here)


=== Symbols ===
* Multiple icons in the Multicolor icons set got small retouches and other improvements to readability or contrast, e.g. the green color is now a little brighter when using a dark theme, to improve contrast.
Add support for x, y, width and height SVG2 attributes on <symbol>.
* Cursors and icons for the Bézier tool and the Calligraphy tool in the tool bar now use the same imagery [to be confirmed]
Follows logic of <svg> element, which already supported these attributes.
* <code>Align and distribute</code> icons are now smaller, some were redesigned to fit in to 16x16 grid.  
https://gitlab.com/inkscape/inkscape/-/merge_requests/3828
* The icon sizes for the tool bar and the control / tool controls bar can now be adjusted smoothly on a continuous scale from from 100% to 300% in <code>Edit → Preferences → Interface → Toolbars: Toolbox icon size / Control bar icon size</code>


== Notable bugfixes ==
=== Themes ===


=== Crash fixes ===
* A contrast slider was added for fine tuning the selected theme's colors at <code>Edit → Preferences → Interface → Theming: Contrast</code> ([https://gitlab.com/inkscape/inkscape/-/merge_requests/906 MR #906])
Check knot still exists before updating


https://gitlab.com/inkscape/inkscape/-/merge_requests/717
<gallery mode=packed heights=550px>
File:Contrast slider.gif|The contrast slider allows to fine-tune the theme's colors
</gallery>


Masive colection of crash fixes releted to number of LPE (copy, stampe, duplicate)


https://gitlab.com/inkscape/inkscape/-/merge_requests/3479
== macOS-specific Changes ==


Action after grouping 3D boxes crash Fix
On macOS, enable all special menu items in the application menu and hide them from other menus ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3767 MR #3767])


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


== Windows-specific Changes ==


Fix for crashing of inkscape while Quiting
Modifier keys now work with pen input ([https://gitlab.com/freedesktop-sdk/mirrors/gnome/gtk/-/commit/46c12b2c922d5592cedd29624cbf3be6b4411084 Commit #46c12b])


https://gitlab.com/inkscape/inkscape/-/merge_requests/3681
== Extensions ==


* Add option to limit output extension to save copy ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3600 MR #3600])
* Added Python app dirs dependency ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3568 MR #3568]) [Is this a bug fix?]


Fix crash due to invalid or malformed direct-action string
== Command line ==


https://gitlab.com/inkscape/inkscape/-/merge_requests/3663
== Behind the curtains ==


Bezier curve tool Backspace crash
=== Gio::Actions ===
continuous work on converting verbs to Gio::Actions . This work is done as a preparation for migration to gtk4 and also allows us to have this commands in command pallet and assign shortcuts to this coverted commands. (TODO: there is lots of MRs mostly from tav which needs to be sorted and added here)


https://gitlab.com/inkscape/inkscape/-/merge_requests/3715
=== Symbols ===
Fix crash scrolling across line height units
Add support for x, y, width and height SVG2 attributes on <symbol>.
Follows logic of <svg> element, which already supported these attributes ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3828 MR #3828])


https://gitlab.com/inkscape/inkscape/-/merge_requests/3541
== Notable bugfixes ==


Fix adding a path effect to symbol causes crash
=== Crash fixes ===
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/3520
 
Fix drag-and-drop svgs, stops crash
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/3710
 
Handle two items in spray tool's single path mode
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/3470
 
Icon preview crash
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/3439
 
Prevents crashing during 3D box import
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/3592
 
Fill between Paths LPE crash on selecting
https://gitlab.com/inkscape/inkscape/-/merge_requests/3801


* Check knot still exists before updating ([https://gitlab.com/inkscape/inkscape/-/merge_requests/717 MR #717])
* Masive colection of crash fixes releted to number of LPE (copy, stampe, duplicate) ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3479 MR #3479])
* Action after grouping 3D boxes crash Fix ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3698 MR #3698])
* Fix for crashing of inkscape while Quiting ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3681 MR #3681])
* Fix crash due to invalid or malformed direct-action string ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3663 MR #3663])
* Bezier curve tool Backspace crash ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3715 MR #3715])
* Fix crash scrolling across line height units ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3541 MR #3541])
* Fix adding a path effect to symbol causes crash ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3520 MR #3520])
* Fix drag-and-drop svgs, stops crash ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3710 MR #3710])
* Handle two items in spray tool's single path mode ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3470 MR #3470])
* Icon preview crash ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3439 MR #3439])
* Prevents crashing during 3D box import ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3592 MR #3592])
* Fill between Paths LPE crash on selecting ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3801 MR #3801])




=== Other bug fixes ===
=== Other bug fixes ===
Fix #1034 - Recursively flatten css style when copying
https://gitlab.com/inkscape/inkscape/-/merge_requests/3656
new boolean operation algorithm
https://gitlab.com/inkscape/inkscape/-/merge_requests/3724
Respect mouse down before mouse move coordinates (WIN)
https://gitlab.com/inkscape/inkscape/-/merge_requests/3735
Remove mandatory break from end of paragraphs, added in Pango 1.49.
https://gitlab.com/inkscape/inkscape/-/merge_requests/3630
Fix: Subsequent font changes to words in the same textbox now apply
https://gitlab.com/inkscape/inkscape/-/merge_requests/3631
Fix numpad input for unimode in text tool
https://gitlab.com/inkscape/inkscape/-/merge_requests/3689
All handles should  be controlled by preferences
https://gitlab.com/inkscape/inkscape/-/merge_requests/3699
Restore refresh of units trackers
https://gitlab.com/inkscape/inkscape/-/merge_requests/3665
Fix find and replace if text has description, nested tspans
https://gitlab.com/inkscape/inkscape/-/merge_requests/3551
all canvas knots should have same size and be controlled form preferences
https://gitlab.com/inkscape/inkscape/-/merge_requests/3679


https://gitlab.com/inkscape/inkscape/-/merge_requests/3699
* Calligraphy tool: use correct tool tilt direction ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3782 MR #3782], [https://gitlab.com/inkscape/inkscape/-/issues/1692 Bug #1692])
 
* duplicated gradeint does not get deleted ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3361 MR #3361])
 
* Last line in paragraph is not justified anymore ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3780 MR #3780])
Fix multiline vertical text positioning in browsers.
* Fix #1034 - Recursively flatten css style when copying ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3656 MR #3656])
 
* new boolean operation algorithm ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3724 MR #3724])
https://gitlab.com/inkscape/inkscape/-/merge_requests/3537
* Respect mouse down before mouse move coordinates (WIN) ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3735 MR #3735])
 
* Remove mandatory break from end of paragraphs, added in Pango 1.49 ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3630 MR #3630])
 
* Fix: Subsequent font changes to words in the same textbox now apply ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3631 MR #3631])
Stop changing line height when units change
* Fix numpad input for unimode in text tool ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3689 MR #3689])
 
* Restore refresh of units trackers ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3665 MR #3665])
https://gitlab.com/inkscape/inkscape/-/merge_requests/3544
* Fix find and replace if text has description, nested tspans ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3551 MR #3551])
 
* all canvas knots should have same size and be controlled form preferences ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3679 MR #3679], [https://gitlab.com/inkscape/inkscape/-/merge_requests/3699 MR #3699])
 
* Fix multiline vertical text positioning in browsers ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3537 MR #3537])
Fix Clone Tiler menu item, action mismatch
* Stop changing line height when units change ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3544 MR #3544])
 
* Fix Clone Tiler menu item, action mismatch ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3650 MR #3650])
https://gitlab.com/inkscape/inkscape/-/merge_requests/3650
* fix: Cannot quit Inkscape on macOS Big Sur from welcome screen (MAC) ([https://gitlab.com/inkscape/inkscape/-/issues/2762 MR #2762])
 
* Fix: Position of flowed text no longer applies extra transforms on text ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3695 MR #3695])
fix: Cannot quit Inkscape on macOS Big Sur from welcome screen (MAC)
* Fix default value for saturate in color matrix filter ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3626 MR #3626])
 
* nodes widget no longer appears on startup in align and distribute dialog ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3677 MR #3677])
https://gitlab.com/inkscape/inkscape/-/issues/2762
* fixes #2621. Clicking on fill/stroke in the status bar now reopens the dialog if it is hidden ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3754 MR #3754])
 
* Fix KP_2,4,6,8 shortcuts for rect tool ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3773 MR #3773])
 
* Transform handle modifiers are now displayed on status bar ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3809 MR #3809])
Fix: Position of flowed text no longer applies extra transforms on text
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/3695
 
 
Fix default value for saturate in color matrix filter
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/3626
 
 
nodes widget no longer appears on startup in align and distribute dialog
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/3677
 
 
fixes #2621. Clicking on fill/stroke in the status bar now reopens the dialog if it is  
 
hidden
https://gitlab.com/inkscape/inkscape/-/merge_requests/3754
 
 
Fix KP_2,4,6,8 shortcuts for rect tool
 
https://gitlab.com/inkscape/inkscape/-/merge_requests/3773
 
Transform handle modifiers are now displayed on status bar
https://gitlab.com/inkscape/inkscape/-/merge_requests/3809


=== Even more bug fixes ===
=== Even more bug fixes ===
Line 581: Line 401:
There were even more issues fixed than those listed above, but these probably only affect a small portion of users, or are relevant for development and packaging only.
There were even more issues fixed than those listed above, but these probably only affect a small portion of users, or are relevant for development and packaging only.


For a complete list, visit [https://gitlab.com/inkscape/inkscape/-/milestones/2 our GitLab issue tracker] and see the [https://gitlab.com/inkscape/inkscape/-/commits/1.0.x commit history].
For a complete list, visit [https://gitlab.com/inkscape/inkscape/-/issues?milestone_title=Inkscape+1.2 our GitLab issue tracker] and see the [https://gitlab.com/inkscape/inkscape/-/commits/1.2.x commit history].


== Translations ==
== Translations ==
Line 607: Line 427:
=== Contributing to documentation and documentation translation ===
=== Contributing to documentation and documentation translation ===
Contributions to the documentation translations, as well as improvements to its contents, are welcome at [https://gitlab.com/inkscape/inkscape-docs/documentation the inkscape-docs repository].
Contributions to the documentation translations, as well as improvements to its contents, are welcome at [https://gitlab.com/inkscape/inkscape-docs/documentation the inkscape-docs repository].
== Important changes for packagers ==
* New dependency on <code>python-cssselect</code> added which is required for usage of Inkscape extensions ([https://gitlab.com/inkscape/inkscape/-/merge_requests/3239 MR #3239])


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

Revision as of 22:19, 21 January 2022


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

Important Links:



Warning symbol.png Pending questions:


Release highlights

Definitely not released yet.

General user interface

Color palette

The overall look and options of the color palette and the Swatches dialog got a massive overhaul (MR #2881):

  • Color palettes now have a preview
  • Improved settings for size and padding
  • New setting for number of rows
  • Scroll vertically through palette rows, or use the arrow buttons

Color pallet demo.gif

Status Bar

  • The layer selection dropdown has been replaced by a layer indicator. Clicking on the indicator opens the new Layers and object dialog. This change improves Inkscape's performance for documents with many layers (MR #3629).

Canvas

Page

  • The page shadow now has a more realistic, blurry, fade-out look (MR #3128)
  • Settings for the page background / decoration were refactored, see [section about Document properties dialog]
  • Inkscape documents can now hold multiple pages! See [section about the new Page tool]

Snapping

  • Snapping toolbar got removed and replaced with new simplified snapping pop over. You can find it in top Right corner as a toggle switch with arrow for change preferences.
  • Snapping settings got unified and settings are no longer saved in to svg file but to to preferences inside of inkscape.
  • All snapping settings are moved to Edit → Preferences → Behavior → Snapping

Preferences has two modes:

  • Simple - 3 options (Bounding box, paths, Alignment snapping). This should be good simple preset for most of users needs.
  • Advanced - All granualr control over every snapping option. This provides all functionality for pro users (MR #3323)


Snapping popover .gif

Alignment and Distribution snapping

Three new modes of on-canvas snapping have been added. These new modes make aligning and distributing objects a very easy drag and drop operation.

The new snapping options can be enabled or disabled from the Snap popover → Advanced using the following new options:

  • Alignment Snapping : Toggle alignment snapping for objects.
  • Self snapping : Toggle alignment snapping for nodes in the same path while editing nodes.
  • Distribution snapping : Toggle distribution snapping.

new Snap Toolbar options

Alignment and distribution snapping also have their separately configurable snap tolerances which can be adjusted in Document Properties → Snap. Both Alignment and Distribution snapping also have a preference to show snap distances which can be enabled or disabled from Edit → Preferences → Snapping: Show snap distance in case of alignment or distribution snap.

Alignment Guides

are horizontal or vertical lines that only appear when you're editing objects on the canvas. Temporary guide lines appear if the selected object can be aligned relative to another object on the canvas. Once a guide does occur, the movement of the selection is constrained in the general direction of the guide which makes placing objects on the canvas easier.

Self snapping

is useful for node editing. Nodes will snap to their own geometry

Distribution Guides

are also a new feature added to Inkscape. These are spacing guides that appear in between equally spaced objects. These guides make it easier to place objects at equal distance from each other. These guides also appear in horizontal or vertical direction based on the optimum snap position.

Distribution and Alignment Snapping

(MR #3294)

Tools

Page tool

The new Page tool (lowest button in the tool bar) allows you to create multi-page Inkscape documents, and to import as well as export multi-page PDF documents. (MR #3486, MR #3785, MR #3821). It supports overlapping pages and pages of different sizes in a single document.

Tool usage:

  • To create a new page either:
    • click-and-drag on the canvas
    • or click on the 'Create a new page' button in the tool controls
  • To delete a page, click on the page to select it, then click on the button Delete selected page or use the Del or Backspace keys.
  • To move a page on the canvas, click-and-drag it to the desired new position. If the option to Move overlapping objects is active, this will also move any objects that touch the page along with it.
  • To change a page's size:
    • click on a page whose size you want to change to select it, then drag the square-shaped handle in its bottom right corner
    • click on the page, and then choose one of the predefined sizes in the page size dropdown, or enter your size values for the 'Custom' option, by typing them into the field in the form of 10cm x 15cm
  • To fit a page to:
    • the size of the drawing, make sure to have no object selected before you switch to the Page tool. Then select a page by clicking on it, then click on the button 'Fit page to drawing or selection' in the tool controls
    • a selected object, first select the object(s) with the selection tool, then switch to the Page tool, click on a page to select it, then press the the button 'Fit page to drawing or selection' in the tool controls
  • To add a label to your page, select the page by clicking on it, then enter a name or label for it into the text field in the page tool's tool controls. Labels are always visible, no matter which tool is currently selected.
  • To export a multi-page PDF file, use File → Save a copy … → PDF. This will automatically include all pages.
  • To open or import a multi-page PDF or (pdf-based) AI file, use File → Open/Import → select file name → choose to import 'All' pages [Known issue: 'import' moves content of some pages to some far out place in the drawing]

Note: Multi-page SVG files are an Inkscape-specific concept. Web browsers will only display the first page of your document.

Selector Tool

The tool now allows to set the origin of the selection for precise numerical positioning:

  1. Click on one of the 9 object handles to select your desired origin for the scaling, or select and then drag the middle handle to the desired position
  2. A small red circle now indicates the new origin and the x/y position in the tool controls will adjust to the new origin.
  3. Now edit the x, y, width or height values to move and scale your object using the new origin (MR #2700)

Change origin of selection.gif Change origin to TOP right.gif

Text Tool

  • Kerning options are now symbolized by a button between the subscript and text direction selectors. Clicking on it will open a so-called pop-over, where all previously available options can be found. This change saves space in the Text tool's toolbar.
  • Negative kerning values can now be as little as -1000 (previously -100), making them symmetrical to their positive counterparts (MR #2569, MR #3434)
  • Padding: Text that is flowed into a shape and standard flowed text now have an additional square-shaped handle in the top right corner. Move the handle to adjust the text padding inside the frame (MR #2769) [Currently broken]
  • Exclusion zones: Text can now flow around one or more movable objects (use shapes and paths on the same object hierarchy level as the text; no groups / images supported). Select the object(s) and the text, and set the exclusion zone by going to Text → Set subtraction frames

Background info: SVG 2.0 flowed text allows for shape-padding and shape-subtract attributes. shape-padding lets the text flow into a shape and leave some space between its edges and where the text will start to flow. shape-subtract subtracts shapes with margin, so text can flow around other objects in the scene. These attributes were supported in Inkscape 1.0, but not exposed to the user. This version of Inkscape includes both an adjustable on-canvas knot for changing the padding as well as a Text menu item for setting text subtraction properties with a further knot to adjust it's margins.

[See merge request for animated gifs to add here]

Path Operations

Split path, split non-intersecting path functionality. Path → Split path Useful for splitting Letter or other objects made from multiple paths(usually holes) in to single object (MR #3738)

Dialogs

General

  • A mini-menu (downward pointing arrow symbol) was added into the title bar of every multi-dialog panel (also called 'notebook'). You can use it to close the current tab, to undock it, or to close the whole panel. It also shows a list of available dialogs, sorted by purpose, allowing you to open them with a click ((MR #3728)
  • Open dialogs are now less costly for performance, because they do not update when it's not needed (MR #3369), or when they are hidden (MR #3761)
  • Docking zones now expand and flash slowly when a dialog is dragged close to them. This makes it easier to see where docking is possible (MR #3729)
  • The text labels of docked dialogs are now more responsive to the width of dialog (MR #3627)

Align and distribute

  • The formerly separate Arrange dialog is now integrated with the Align and Distribute dialog. With its three tabs, more user-friendly names and some small visual tweaks, the dialog now holds everything that is needed for aligning, distributing and arranging objects in your drawing (MR #3382, MR #3667).
  • The icons inside this dialog are now smaller.

Align and distribute dialog with 3 tabs.gif


Document Properties

We revamped the document properties dialog from old cluttered, not so user friendly to completely redesigned dialog that users will enjoy

  • Document Properties dialog enormously sped up on macOS if grids are in use. (MR #3400, MR #3403)

We redesigned document properties. Since we introduce new feature Multipages wich is not part of svg standart (not suported by browsvers). we cahneg this dialog to contol how big is a viewbox (what gets shown in browsvers). We use first page is also viewbox (MR #3700).

We moved out snapping settings ouside this dialog and also outside of svg document in to preferences.

Fill and Stroke dialog

Color selector

  • The more intuitive HSL mode (hue, saturation, lightness) is now the default mode of the color selector.
  • All color selection modes (e.g. HSL, HSV, RGB, CMYK, color wheel, CMS) have been moved into drop-down menu, with icons. You can get the old, tabbed look back by disabling the option in Edit → Preferences → Interface: Use compact color selector mode switch (MR #3443).

Gradient Editor is back

A replacement for the gradient editor was added to the Fill and Stroke dialog (MR #2688, Bug ux#67).

This allows you to add, edit and delete gradient stops directly in the 'Fill and Stroke' dialog again.

  • to add a new stop, double click on the gradient preview
  • to move a stop, click and drag it along the gradient preview or enter the stop offset numerically for more precision
  • to remove a stop, click on it to select it, then press the Del or Backspace key

Gradient editor adding stops.gif

The Gradient tool toolbar options `repeat mode`, `reverse gradient direction`, a gradient selection library and a list of all stops have been added here, too, so all the options pertaining to gradients are in easy reach.

Gradient editor - repete.gif

Another way to add, edit and delete single stops is to use the list of gradient stops. Users can add stops by clicking on the + button, and can delete them by clicking on the - button.

Adding and removing stops in to list.gif

With the new gradient selection dropdown, users can duplicate gradients by clicking on the + button.

Gradients Library.gif

Users can offset (move) the first and last stops of a gradient. The color beyond the last/first gradient stop is uniformly that of the last/first stop and it becomes transparent where the gradient postion handles end.

First and last node offset.gif


Markers

Markers have new drop-down options where you can control size offset and rotation of markers. This allowed us to remove duplicate markers so UI is much easier to navigate. We also cleaned out marker presets and added few new arrows and also join ends

Working with new markers.gif

You can also edit size rotation and offset of markers on canvas. By clicking on edit button in style tab under marker (MR #3394, MR #3420)

Edit markers on canvas.gif


Custom Dash strokes

We added UI for editing custom dash stroke pattern. Click on Custom option inside a dash stroke drop-down and this field will be shown under it. Now you can add your custom pattern by typing numbers (dash gap dash gap ...)

Dashstroke editor.png

Other small changes

we reorder caps to mach order (MR #3402)


Layers and Objects dialog

We fused Layers and objects dialog in to new improved dialog. New Layers and Objects dialog significantly improves performance when handling many objects at the same time (MR #2466, MR #3635, MR #2466, MR #3741, MR #3597, MR #3645).

  • new icons for every object type
  • first object icon enable/disable view of objects
  • masks and clipping paths are added as a overly suicon
  • every new layer has new color
  • Colors of icons in panel and paths on canvas are linked for better organization
  • you can edit color of of layer/object by slisking on color block on right
  • default highlight colors delegated to style.css file
  • double click label (name of the object) to rename it
  • info-bar shows you current layer if you click on it and will open layers dialog
  • shift-click on an eye icon toggles layer solo visibility (hiding others)
  • shift-click on a padlock locks other layers
  • If you hold Alt and hover over items in dialog all other elements get lover opacity. So you can see what exactly is the object you pointing at


Preferences

  • Preferences zoom ruler respect theme look (MR #3450)
  • Allow select same to work like select all (MR #2832)

SVG Font Editor

Bug fixes, small face lift and UX and performance improvements of the dialog (MR #3396, MR #3552)

Swatches

The Swatches dialog uses the same improved settings as [the color palette].


Text and Font dialog

The dialog's width has been reduced, so it won't take up excessive amounts of space when docked (MR #3314).


Trace Bitmap

The Trace Bitmap dialog received a few updates and some more polish (MR #3405):

  • The preview auto-updates more reliably and shows a better preview image.
  • The preview location now adjusts to the dialog's format: if it is wider than tall, it moves to the right side, and if it is taller than wide, the preview appears at the bottom of the dialog.
  • The number entry fields are now accompanied by draggable sliders.

Transform dialog

We cleaned up this dialog, reduced width and added explanation for metric transformations (MR #3381)


Filters

Live path effects

perspective/envelope LPE now works on objects with 0 width or height . (edge cases for single line stroke) (MR #2712)

Import / Export

Customization / Theming

General User Interface

  • The font size in the user interface can be adjusted at Edit → Preferences → Interface → Theming: Font scale (MR #3690)
  • The +/- buttons for number entry fields are now smaller. If you prefer the old, wider buttons, they can be turned on again by disabling Preferences → Interface : Use narrow number entry boxes . (MR #3358)

Bars / Toolbars

  • You can now hide elements from the status bar (style indicator, layer indicator, mouse coordinates, canvas rotation) at Edit → Preferences → Interface: Status bar (MR #3445)
  • You can now hide tools from the tool bar at Edit → Preferences → Interface → Toolbars: Toolbars (MR #3515)

Editing toolbox.gif

Cursors

  • The drop shadow is now optional for mouse cursors. You can turn it off in Edit → Preferences → Interface → Mouse cursors: Show drop shadow (MR #3352).

Icons

  • Multiple icons in the Multicolor icons set got small retouches and other improvements to readability or contrast, e.g. the green color is now a little brighter when using a dark theme, to improve contrast.
  • Cursors and icons for the Bézier tool and the Calligraphy tool in the tool bar now use the same imagery [to be confirmed]
  • Align and distribute icons are now smaller, some were redesigned to fit in to 16x16 grid.
  • The icon sizes for the tool bar and the control / tool controls bar can now be adjusted smoothly on a continuous scale from from 100% to 300% in Edit → Preferences → Interface → Toolbars: Toolbox icon size / Control bar icon size

Themes

  • A contrast slider was added for fine tuning the selected theme's colors at Edit → Preferences → Interface → Theming: Contrast (MR #906)


macOS-specific Changes

On macOS, enable all special menu items in the application menu and hide them from other menus (MR #3767)


Windows-specific Changes

Modifier keys now work with pen input (Commit #46c12b)

Extensions

  • Add option to limit output extension to save copy (MR #3600)
  • Added Python app dirs dependency (MR #3568) [Is this a bug fix?]

Command line

Behind the curtains

Gio::Actions

continuous work on converting verbs to Gio::Actions . This work is done as a preparation for migration to gtk4 and also allows us to have this commands in command pallet and assign shortcuts to this coverted commands. (TODO: there is lots of MRs mostly from tav which needs to be sorted and added here)

Symbols

Add support for x, y, width and height SVG2 attributes on <symbol>. Follows logic of <svg> element, which already supported these attributes (MR #3828)

Notable bugfixes

Crash fixes

  • Check knot still exists before updating (MR #717)
  • Masive colection of crash fixes releted to number of LPE (copy, stampe, duplicate) (MR #3479)
  • Action after grouping 3D boxes crash Fix (MR #3698)
  • Fix for crashing of inkscape while Quiting (MR #3681)
  • Fix crash due to invalid or malformed direct-action string (MR #3663)
  • Bezier curve tool Backspace crash (MR #3715)
  • Fix crash scrolling across line height units (MR #3541)
  • Fix adding a path effect to symbol causes crash (MR #3520)
  • Fix drag-and-drop svgs, stops crash (MR #3710)
  • Handle two items in spray tool's single path mode (MR #3470)
  • Icon preview crash (MR #3439)
  • Prevents crashing during 3D box import (MR #3592)
  • Fill between Paths LPE crash on selecting (MR #3801)


Other bug fixes

  • Calligraphy tool: use correct tool tilt direction (MR #3782, Bug #1692)
  • duplicated gradeint does not get deleted (MR #3361)
  • Last line in paragraph is not justified anymore (MR #3780)
  • Fix #1034 - Recursively flatten css style when copying (MR #3656)
  • new boolean operation algorithm (MR #3724)
  • Respect mouse down before mouse move coordinates (WIN) (MR #3735)
  • Remove mandatory break from end of paragraphs, added in Pango 1.49 (MR #3630)
  • Fix: Subsequent font changes to words in the same textbox now apply (MR #3631)
  • Fix numpad input for unimode in text tool (MR #3689)
  • Restore refresh of units trackers (MR #3665)
  • Fix find and replace if text has description, nested tspans (MR #3551)
  • all canvas knots should have same size and be controlled form preferences (MR #3679, MR #3699)
  • Fix multiline vertical text positioning in browsers (MR #3537)
  • Stop changing line height when units change (MR #3544)
  • Fix Clone Tiler menu item, action mismatch (MR #3650)
  • fix: Cannot quit Inkscape on macOS Big Sur from welcome screen (MAC) (MR #2762)
  • Fix: Position of flowed text no longer applies extra transforms on text (MR #3695)
  • Fix default value for saturate in color matrix filter (MR #3626)
  • nodes widget no longer appears on startup in align and distribute dialog (MR #3677)
  • fixes #2621. Clicking on fill/stroke in the status bar now reopens the dialog if it is hidden (MR #3754)
  • Fix KP_2,4,6,8 shortcuts for rect tool (MR #3773)
  • Transform handle modifiers are now displayed on status bar (MR #3809)

Even more bug fixes

There were even more issues fixed than those listed above, but these probably only affect a small portion of users, or are relevant for development and packaging only.

For a complete list, visit our GitLab issue tracker and see the commit history.

Translations

The following UI translations received updates:

The Windows installer translation was updated for [2021-03-03]:

The following documentation translations received updates:

Contributing to interface translations

Want to help with translations? Learn how to help!

Documentation

Contributing to documentation and documentation translation

Contributions to the documentation translations, as well as improvements to its contents, are welcome at the inkscape-docs repository.

Important changes for packagers

  • New dependency on python-cssselect added which is required for usage of Inkscape extensions (MR #3239)

Known issues

  • Gradient editing [as of 2021-06-26]:
    • Gradient collecting is problematic. It deletes your gradient if it's not used by any other object. Will be fixed with 3361
    • If you convert your gradient to swatch, the gradient editor cannot be used for editing it anymore.
    • The first click after exiting the gradient library is ignored.
    • Canvas stops and gradient editor stops highlighting will stop working in some cases.

Other releases