issue199:inkscape
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
issue199:inkscape [2023/11/25 19:38] – d52fr | issue199:inkscape [2023/11/29 17:08] (Version actuelle) – andre_domenech | ||
---|---|---|---|
Ligne 4: | Ligne 4: | ||
I’ve drawn this to look as though the star is casting a shadow on the rectangle. In practice that purple shadow actually represents the area of overlap between these objects.** | I’ve drawn this to look as though the star is casting a shadow on the rectangle. In practice that purple shadow actually represents the area of overlap between these objects.** | ||
+ | |||
+ | Le mois dernier, j'ai consacré tout l' | ||
+ | |||
+ | Vous n'avez probablement pas réfléchi à ce type de superposition d' | ||
+ | |||
+ | J'ai dessiné ceci pour donner l' | ||
+ | |||
**So far, I probably haven’t told you anything you didn’t already know, even if that knowledge doesn’t usually play an active role in your use of Inkscape. Indeed, for most people, the way that the shapes are ‘layered’ is purely an academic consideration: | **So far, I probably haven’t told you anything you didn’t already know, even if that knowledge doesn’t usually play an active role in your use of Inkscape. Indeed, for most people, the way that the shapes are ‘layered’ is purely an academic consideration: | ||
Ligne 10: | Ligne 17: | ||
In the case of our design above, a naive approach would be to create one screen with a rectangle, and one with a star. First use the rectangle mesh to print in red, then align the star mesh and print the blue parts. But in this case we’re not dealing with pixels in memory that don’t exist until the final rendering step – we’re dealing with wet inks that will merge and run into each other. Our final design won’t show a blue star and red rectangle, but rather parts of each, with a muddled purple area where the shapes intersect.** | In the case of our design above, a naive approach would be to create one screen with a rectangle, and one with a star. First use the rectangle mesh to print in red, then align the star mesh and print the blue parts. But in this case we’re not dealing with pixels in memory that don’t exist until the final rendering step – we’re dealing with wet inks that will merge and run into each other. Our final design won’t show a blue star and red rectangle, but rather parts of each, with a muddled purple area where the shapes intersect.** | ||
+ | |||
+ | Jusqu' | ||
+ | |||
+ | Prenons l' | ||
+ | |||
+ | Dans le cas de notre dessin ci-dessus, une approche naïve consisterait à créer un écran avec un rectangle et un autre avec une étoile. On utilise d' | ||
**What we actually want is for that overlapping area to be removed before printing. We want the design (when viewed from the side) to look more like this, with the intersection cut out of the red rectangle: | **What we actually want is for that overlapping area to be removed before printing. We want the design (when viewed from the side) to look more like this, with the intersection cut out of the red rectangle: | ||
Ligne 18: | Ligne 31: | ||
What is needed is a simple way to modify the image so that the final result consists only of the visible parts of paths, with no overlapping sections. In raster graphics programs, this is a common task for combining multiple layers into one, where it’s referred to as ‘flattening’ the layers. And so, with Inkscape 1.3, we now have Path > Flatten to achieve the same effect with paths. Selecting all four paths in this example and applying this operation results in the following four objects (moved apart, and with strokes added for clarity):** | What is needed is a simple way to modify the image so that the final result consists only of the visible parts of paths, with no overlapping sections. In raster graphics programs, this is a common task for combining multiple layers into one, where it’s referred to as ‘flattening’ the layers. And so, with Inkscape 1.3, we now have Path > Flatten to achieve the same effect with paths. Selecting all four paths in this example and applying this operation results in the following four objects (moved apart, and with strokes added for clarity):** | ||
+ | |||
+ | Ce que nous voulons en fait, c'est que cette zone de chevauchement soit supprimée avant l' | ||
+ | |||
+ | Dans ce cas particulier, | ||
+ | |||
+ | Il suffit d' | ||
+ | |||
+ | Ce qu'il faut, c'est un moyen simple de modifier l' | ||
+ | |||
**For your average screen printer, this will be fine, and represents a much faster way of achieving what would previously have been a tedious and error-prone series of Boolean operations. | **For your average screen printer, this will be fine, and represents a much faster way of achieving what would previously have been a tedious and error-prone series of Boolean operations. | ||
Ligne 26: | Ligne 48: | ||
While we’re dealing with the Boolean operations there’s another change in 1.3 that needs to be discussed: what happens when you use Path > Object to Path with a text object. If you’re getting a sense of déjà-vu, it’s because this is a topic that has cropped up previously in this series, as the Inkscape developers seem insistent on modifying the behaviour every few releases.** | While we’re dealing with the Boolean operations there’s another change in 1.3 that needs to be discussed: what happens when you use Path > Object to Path with a text object. If you’re getting a sense of déjà-vu, it’s because this is a topic that has cropped up previously in this series, as the Inkscape developers seem insistent on modifying the behaviour every few releases.** | ||
+ | |||
+ | Pour une impression par écran ordinaire, cela conviendra parfaitement et représente un moyen beaucoup plus rapide de réaliser ce qui aurait été auparavant une série d' | ||
+ | |||
+ | L' | ||
+ | |||
+ | Pour être honnête, je n'ai pas encore pensé à un bon exemple où aplatir et diviser les chemins de cette manière serait utile. Mais cela en dit peut-être plus sur mon manque d' | ||
+ | |||
+ | Pendant que nous traitons des opérations booléennes, | ||
+ | |||
**Up to version 0.47, this operation simply converted the entire text content into a single complex path. This made it extremely difficult to work with the individual characters (technically, | **Up to version 0.47, this operation simply converted the entire text content into a single complex path. This made it extremely difficult to work with the individual characters (technically, | ||
Ligne 32: | Ligne 63: | ||
Apparently the Inkscape developers either didn’t get the memo, or there’s a secret cabal of disruptive users who never really got over the change from v0.47, because version 1.3 brings back the bad-old days when Object to Path created a single path for the entire text, with no option to create separate paths for each character. But wait! Don’t forget last month’s column, where I looked at the Path > Split Path operation. Surely that can help. Well… maybe. Sometimes. Sort of.** | Apparently the Inkscape developers either didn’t get the memo, or there’s a secret cabal of disruptive users who never really got over the change from v0.47, because version 1.3 brings back the bad-old days when Object to Path created a single path for the entire text, with no option to create separate paths for each character. But wait! Don’t forget last month’s column, where I looked at the Path > Split Path operation. Surely that can help. Well… maybe. Sometimes. Sort of.** | ||
+ | |||
+ | Jusqu' | ||
+ | |||
+ | Ainsi, à part une brève période après la sortie de la version 1.0, cette fonctionnalité est restée assez stable : Chemin > Objet en chemin crée un groupe contenant un chemin par glyphe, tandis que Chemin > Union crée un chemin unique pour l' | ||
+ | |||
+ | Apparemment, | ||
+ | |||
**To use Path > Split Path you first need a path to split. Unfortunately it won’t auto-convert a text object on your behalf, so you have to use Path > Object to Path first, and then follow it up with Path > Split Path. However, as I noted last month, as useful as the Split Path function is, it doesn’t understand that you’re working with glyphs. The dot over every ‘i’ and ‘j’ becomes a separate path object, as do accents over characters, or the dots at the bottom of question and exclamation marks. If you’re lucky you might get away with using this function directly, but more often than not, there will be additional manual work required to re-combine the disconnected parts of such characters. | **To use Path > Split Path you first need a path to split. Unfortunately it won’t auto-convert a text object on your behalf, so you have to use Path > Object to Path first, and then follow it up with Path > Split Path. However, as I noted last month, as useful as the Split Path function is, it doesn’t understand that you’re working with glyphs. The dot over every ‘i’ and ‘j’ becomes a separate path object, as do accents over characters, or the dots at the bottom of question and exclamation marks. If you’re lucky you might get away with using this function directly, but more often than not, there will be additional manual work required to re-combine the disconnected parts of such characters. | ||
Ligne 38: | Ligne 76: | ||
Speaking of badly misplaced characters, the new Text to Glyphs function also moves your text around if you’ve adjusted the vertical position or the rotation of individual characters.** | Speaking of badly misplaced characters, the new Text to Glyphs function also moves your text around if you’ve adjusted the vertical position or the rotation of individual characters.** | ||
+ | |||
+ | Pour utiliser Chemin > Découper le chemin (Maj+Ctrl+Alt+K), | ||
+ | |||
+ | Il existe une « solution » à ce problème qui devrait être présente dans la version 1.3.1 (qui sera probablement déjà sortie au moment où vous lirez ces lignes). Cette version ajoute une entrée de menu Texte > Text to Glyphs (texte vers glyphes), qui peut être utilisée pour diviser un objet texte en glyphes individuels avant d' | ||
+ | |||
+ | En ce qui concerne les caractères mal placés, la nouvelle fonction Text to Glyphs déplace également votre texte si vous avez ajusté la position verticale ou la rotation de certains caractères. | ||
+ | |||
**The example below shows the results of both the extension, and the new function. The text in the middle is the original: I’ve deliberately used two fonts, with one of them in different weights and styles. I’ve also manually adjusted the vertical height of some of the letters, and the rotation of others. | **The example below shows the results of both the extension, and the new function. The text in the middle is the original: I’ve deliberately used two fonts, with one of them in different weights and styles. I’ve also manually adjusted the vertical height of some of the letters, and the rotation of others. | ||
Ligne 43: | Ligne 88: | ||
The line at the top is the result of using the extension. To be clear, I haven’t moved it to that location – the extension decided to place the result at the top of the page, ignoring the position of the original text object. It’s done a good job of preserving the fonts, weights and styles. But not only has it ignored the vertical adjustments and the rotation, but it also has very odd ideas about the spacing between characters. | The line at the top is the result of using the extension. To be clear, I haven’t moved it to that location – the extension decided to place the result at the top of the page, ignoring the position of the original text object. It’s done a good job of preserving the fonts, weights and styles. But not only has it ignored the vertical adjustments and the rotation, but it also has very odd ideas about the spacing between characters. | ||
The bottom line shows the result of the Text to Glyph function. This time the split text appeared in the same location as the original, so I have moved it down. You can see that the fonts, weights and styles have been preserved, but vertical alignment and rotation have, again, been ignored. Of the two, however, it definitely gives the better result.** | The bottom line shows the result of the Text to Glyph function. This time the split text appeared in the same location as the original, so I have moved it down. You can see that the fonts, weights and styles have been preserved, but vertical alignment and rotation have, again, been ignored. Of the two, however, it definitely gives the better result.** | ||
+ | |||
+ | L' | ||
+ | |||
+ | La ligne en haut est le résultat de l' | ||
+ | |||
+ | La ligne du bas montre le résultat de la fonction Text to Glyphs. Cette fois, le texte divisé est apparu au même endroit que l' | ||
+ | |||
**Let’s compare this to the behaviour of 1.2.x. In this case, the original text is at the top, and two copies have been made and moved down so you can see the result of each operation more clearly. The second line is the result of Path > Object to Path. As you can see, it looks identical to the original in both style and position. But in practice, this is now a group of individual paths, one for each glyph. The third line shows the result of Path > Union, which again preserves the style and position, but loses the color change due to having created a single complex path for the whole text. | **Let’s compare this to the behaviour of 1.2.x. In this case, the original text is at the top, and two copies have been made and moved down so you can see the result of each operation more clearly. The second line is the result of Path > Object to Path. As you can see, it looks identical to the original in both style and position. But in practice, this is now a group of individual paths, one for each glyph. The third line shows the result of Path > Union, which again preserves the style and position, but loses the color change due to having created a single complex path for the whole text. | ||
Ligne 49: | Ligne 101: | ||
I wonder how long it will be before I’m writing a column to describe yet another change in this behaviour…? | I wonder how long it will be before I’m writing a column to describe yet another change in this behaviour…? | ||
+ | |||
+ | Comparons avec le comportement de la version 1.2.x. Dans ce cas, le texte original se trouve en haut et deux copies ont été faites et déplacées vers le bas pour que vous puissiez voir plus clairement le résultat de chaque opération. La deuxième ligne est le résultat de l' | ||
+ | |||
+ | À mon avis, ce changement de comportement constitue un énorme pas en arrière. Il supprime totalement une fonctionnalité parfaitement fiable de la version 1.2 et la remplace par des options beaucoup moins fonctionnelles, | ||
+ | |||
+ | Je me demande dans combien de temps j' | ||
issue199/inkscape.1700937508.txt.gz · Dernière modification : 2023/11/25 19:38 de d52fr