Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
issue180:inkscape [2022/05/05 09:42] – d52fr | issue180:inkscape [2022/05/09 12:28] (Version actuelle) – andre_domenech |
---|
Looking at this in the XML editor, we can see that there’s still only a single path object, but as well as a multi-node “d” attribute, it also contains an “original-d” attribute (in the “inkscape” namespace”) which has only the two nodes of the original path.** | Looking at this in the XML editor, we can see that there’s still only a single path object, but as well as a multi-node “d” attribute, it also contains an “original-d” attribute (in the “inkscape” namespace”) which has only the two nodes of the original path.** |
| |
Ce mois-ci ne marque pas seulement les 15 ans du magazine Full Circle ; je célèbre également une décennie complète de rédaction de ces chroniques sur Inkscape ! Un grand merci à tous ceux qui les ont lues au fil des ans, et j'espère que vous les avez trouvées utiles. Une chose que j'ai toujours essayé de faire est d'expliquer les raisons sous-jacentes de certaines bizarreries et limitations dans la façon dont Inkscape fonctionne, et ce mois-ci n'est pas différent. Après avoir décrit le fonctionnement de l'effet de mesure de segments (LPE) la dernière fois, dans cet épisode, je vais regarder derrière le rideau et voir en quoi cet effet diffère radicalement de ceux qui l'ont précédé. Notez cependant qu'il ne s'agit que d'une information et d'un enseignement - vous n'avez besoin de rien dans cet épisode pour utiliser le LPE de la manière dont il a été conçu. | Ce mois-ci ne marque pas seulement les 15 ans du magazine Full Circle ; je célèbre également une décennie complète de rédaction de ces chroniques sur Inkscape ! Un grand merci à tous ceux qui les ont lues au fil des ans ; j'espère que vous les avez trouvées utiles. Une chose que j'ai toujours essayé de faire est d'expliquer les raisons sous-jacentes de certaines bizarreries et limitations dans la façon dont Inkscape fonctionne et ce mois-ci n'est pas différent. Après avoir décrit le fonctionnement de l'effet de mesure de segments (LPE) la dernière fois, dans cet épisode, je vais regarder derrière le rideau et voir en quoi cet effet diffère radicalement de ceux qui l'ont précédé. Notez cependant qu'il ne s'agit que d'une information et d'un enseignement - vous n'avez besoin de rien dans cet épisode pour utiliser le LPE de la manière dont il a été conçu. |
| |
Tout d'abord, un bref rappel du fonctionnement historique des Live Path Effects (Effets de chemin interactifs). Un LPE était appliqué à un seul chemin, et produisait un seul chemin en sortie. Le chemin de sortie remplaçait le chemin source dans l'image. Voici un exemple très simple : le LPE Agitation, lorsqu'il est appliqué au chemin à deux nœuds à gauche, produit le chemin à plusieurs nœuds à droite. | Tout d'abord, un bref rappel du fonctionnement historique des Live Path Effects (Effets de chemin interactifs). Un LPE était appliqué à un seul chemin, et produisait un seul chemin en sortie. Le chemin de sortie remplaçait le chemin source dans l'image. Voici un exemple très simple : le LPE Agitation, lorsqu'il est appliqué au chemin à deux nœuds à gauche, produit le chemin à plusieurs nœuds à droite. |
With the release of version 1.0, Inkscape has added the ability for path effects such as “Measure Segments” to break this historical limitation. No longer is an LPE limited to one path in, one path out. Let’s apply “Measure Segments” to the same two-node path:** | With the release of version 1.0, Inkscape has added the ability for path effects such as “Measure Segments” to break this historical limitation. No longer is an LPE limited to one path in, one path out. Let’s apply “Measure Segments” to the same two-node path:** |
| |
C'est une façon assez intelligente d'implémenter les LPE. Inkscape comprend les attributs supplémentaires dans son propre espace de noms, et est donc capable de traiter l'effet comme un élément vivant et modifiable, tandis que d'autres moteurs de rendu SVG, comme les navigateurs Web, afficheront toujours le résultat du LPE puisqu'il s'agit simplement d'un attribut « d » normal comme vous le trouveriez sur n'importe quel objet de chemin SVG. | C'est une façon très intelligente d'implémenter les LPE. Inkscape comprend les attributs supplémentaires dans son propre espace de noms ; il est donc capable de traiter l'effet comme un élément vivant et modifiable, tandis que d'autres moteurs de rendu SVG, comme les navigateurs Web, afficheront toujours le résultat du LPE puisqu'il s'agit simplement d'un attribut « d » normal comme vous le trouveriez sur n'importe quel objet de chemin SVG. |
| |
Cette approche comporte toutefois une limite importante. Comme la sortie n'est qu'un seul chemin, on ne peut lui donner qu'un seul style. Même si ce chemin semble être constitué de plusieurs formes distinctes, il s'agit en fait d'un seul élément de chemin SVG, avec des espaces dans la forme décrits par l'attribut « d » (c'est-à-dire avec des sous-chemins). Si nous regardons le même chemin à deux nœuds avec l'effet de chemin « Règle » appliqué à la place, vous pouvez voir que le résultat donne l'apparence de nombreux petits chemins. Bien qu'il serait agréable de pouvoir styliser les marques de la règle séparément de l'épine dorsale de la forme, ce n'est tout simplement pas possible car, malgré les apparences, le résultat est toujours un seul chemin, avec un seul style. | Cette approche comporte toutefois une limite importante. Comme la sortie n'est qu'un seul chemin, on ne peut lui donner qu'un seul style. Même si ce chemin semble être constitué de plusieurs formes distinctes, il s'agit en fait d'un seul élément de chemin SVG, avec des espaces dans la forme décrits par l'attribut « d » (c'est-à-dire avec des sous-chemins). Si nous regardons le même chemin à deux nœuds avec l'effet de chemin « Règle » appliqué à la place, vous pouvez voir que le résultat donne l'apparence de nombreux petits chemins. Bien qu'il soit agréable de pouvoir styliser les marques de la règle séparément de l'épine dorsale de la forme, ce n'est tout simplement pas possible car, malgré les apparences, le résultat est toujours un seul chemin, avec un seul style. |
| |
Avec la sortie de la version 1.0, Inkscape a ajouté la possibilité pour les effets de chemin tels que « Mesurer les segments » de briser cette limitation historique. Un LPE n'est plus limité à un chemin d'entrée, un chemin de sortie. Appliquons « Mesurer les segments » au même chemin à deux nœuds : | Avec la sortie de la version 1.0, Inkscape a ajouté la possibilité pour les effets de chemin tels que « Mesurer les segments » de briser cette limitation historique. Un LPE n'est plus limité à un chemin d'entrée, un chemin de sortie. Appliquons « Mesurer les segments » au même chemin à deux nœuds : |
Intuitively, you might try to click on one of the new elements on the canvas in order to select it, but you’ll find that your clicks are in vain. Dragging a rubber band selection box doesn’t work either. The only thing you can select is the original path. Having selected that path, you can change its style as normal. As you’ve surmised by now, however, doing so will modify only the original path itself, not any of the elements added by the LPE. For example, note the difference in behaviour between the Ruler LPE and the Measure Segments LPE when I set a red stroke color on the original path.** | Intuitively, you might try to click on one of the new elements on the canvas in order to select it, but you’ll find that your clicks are in vain. Dragging a rubber band selection box doesn’t work either. The only thing you can select is the original path. Having selected that path, you can change its style as normal. As you’ve surmised by now, however, doing so will modify only the original path itself, not any of the elements added by the LPE. For example, note the difference in behaviour between the Ruler LPE and the Measure Segments LPE when I set a red stroke color on the original path.** |
| |
Nous pouvons immédiatement constater que plusieurs styles sont appliqués ici. Notre chemin d'origine conserve le style plus épais que nous avons utilisé pour le dessiner, mais les lignes ajoutées par le LPE sont nettement plus fines. Comment cela est-il possible ? Tout simplement parce que les lignes ajoutées par le LPE ne sont plus seulement des sous-chemins dans un attribut "d", mais des éléments SVG <path> et <text> supplémentaires à part entière. Un rapide coup d'œil à l'éditeur XML montre la différence. Vous pouvez vous référer à la capture d'écran précédente de ce dialogue, où la section supérieure montre que nous avons juste un seul calque avec un seul chemin dans celui-ci. Maintenant, regardez la structure du document après avoir appliqué cet EPL : | Nous pouvons immédiatement constater que plusieurs styles sont appliqués ici. Notre chemin d'origine conserve le style plus épais que nous avons utilisé pour le dessiner, mais les lignes ajoutées par le LPE sont nettement plus fines. Comment est-ce possible ? Tout simplement parce que les lignes ajoutées par le LPE ne sont plus seulement des sous-chemins dans un attribut « d , mais des éléments SVG <path> et <text> supplémentaires à part entière. Un rapide coup d'œil à l'éditeur XML montre la différence. Vous pouvez vous référer à la capture d'écran précédente de ce dialogue, où la section supérieure montre que nous avons juste un seul calque avec un seul chemin dans celui-ci. Maintenant, regardez la structure du document après avoir appliqué cet LPE : |
| |
En plus de notre chemin d'origine, nous avons maintenant trois éléments <path> supplémentaires (deux lignes de tête et une ligne de mesure), plus un élément <text> pour contenir la valeur mesurée. Comme il s'agit d'éléments SVG distincts, vous pouvez évidemment les sélectionner individuellement afin de leur donner un style différent... n'est-ce pas ? La réponse à cette question n'est pas le oui ou le non direct auquel on pourrait s'attendre, alors creusons un peu plus profondément encore. | En plus de notre chemin d'origine, nous avons maintenant trois éléments <path> supplémentaires (deux lignes de tête et une ligne de mesure), plus un élément <text> pour contenir la valeur mesurée. Comme il s'agit d'éléments SVG distincts, vous pouvez évidemment les sélectionner individuellement afin de leur donner un style différent... n'est-ce pas ? La réponse à cette question n'est pas le oui ou le non direct auquel on pourrait s'attendre, alors creusons un peu plus profondément encore. |
If we can’t select the new elements using the mouse on the canvas, is there another approach we could use? Selecting individual elements within the XML editor does still work, and selects the corresponding item on the canvas when you do so. Even with that selection made, mouse interactions are restricted: you can drag the resize handles, but still can’t drag the object itself to move it (though using the cursor keys will work); you also can’t click on the object in order to switch to the rotate/skew handles or other modes now available with the selection box. You can change the style though, as demonstrated by this image of a multi-colored dimension line, complete with gradients and a different font.** | If we can’t select the new elements using the mouse on the canvas, is there another approach we could use? Selecting individual elements within the XML editor does still work, and selects the corresponding item on the canvas when you do so. Even with that selection made, mouse interactions are restricted: you can drag the resize handles, but still can’t drag the object itself to move it (though using the cursor keys will work); you also can’t click on the object in order to switch to the rotate/skew handles or other modes now available with the selection box. You can change the style though, as demonstrated by this image of a multi-colored dimension line, complete with gradients and a different font.** |
| |
Comme vous l'avez appris dans l'article du mois dernier, la couleur, la police, l'épaisseur du trait et d'autres aspects de l'effet Mesure des segments LPE sont définis dans les paramètres de l'effet, répartis entre les onglets "Général" et "Options". Si nous souhaitons que les dimensions correspondent à la couleur du chemin d'origine, par exemple, nous devrons le régler manuellement via le contrôle "Couleur et opacité" dans l'onglet "Options". Il n'existe cependant aucun moyen de lier ou d'hériter des styles, donc si vous modifiez par la suite la couleur du trait du chemin d'origine, vous devrez également penser à modifier manuellement les paramètres LPE en conséquence. | Comme vous l'avez appris dans l'article du mois dernier, la couleur, la police, l'épaisseur du trait et d'autres aspects du LPE Mesurer des segments LPE sont définis dans les paramètres de l'effet, répartis entre les onglets « Général » et « Options ». Si nous souhaitons que les dimensions correspondent à la couleur du chemin d'origine, par exemple, nous devrons le régler manuellement via le contrôle « Couleur et opacité » dans l'onglet « Options ». Il n'existe cependant aucun moyen de lier ou d'hériter des styles, donc si vous modifiez par la suite la couleur du trait du chemin d'origine, vous devrez également penser à modifier manuellement les paramètres du LPE en conséquence. |
| |
Si nous ne pouvons pas sélectionner les nouveaux éléments à l'aide de la souris sur le canevas, y a-t-il une autre approche que nous pouvons utiliser ? La sélection d'éléments individuels dans l'éditeur XML fonctionne toujours, et sélectionne l'élément correspondant sur le canevas. Même avec cette sélection, les interactions avec la souris sont limitées : vous pouvez faire glisser les poignées de redimensionnement, mais vous ne pouvez toujours pas faire glisser l'objet lui-même pour le déplacer (bien que l'utilisation des touches du curseur fonctionne) ; vous ne pouvez pas non plus cliquer sur l'objet pour passer aux poignées de rotation/d'inclinaison ou aux autres modes désormais disponibles avec la boîte de sélection. Vous pouvez cependant modifier le style, comme le montre cette image d'une ligne de dimension multicolore, avec des gradients et une police différente. | Si nous ne pouvons pas sélectionner les nouveaux éléments à l'aide de la souris sur le canevas, y a-t-il une autre approche que nous pouvons utiliser ? La sélection d'éléments individuels dans l'éditeur XML fonctionne toujours et sélectionne l'élément correspondant sur le canevas. Même avec cette sélection, les interactions avec la souris sont limitées : vous pouvez faire glisser les poignées de redimensionnement, mais vous ne pouvez toujours pas faire glisser l'objet lui-même pour le déplacer (bien que l'utilisation des touches du curseur fonctionne) ; vous ne pouvez pas non plus cliquer sur l'objet pour passer aux poignées de rotation/d'inclinaison ou aux autres modes désormais disponibles avec la boîte de sélection. Vous pouvez cependant modifier le style, comme le montre cette image d'une ligne de dimension multicolore, avec des gradients et une police différents. |
| |
**There’s just one problem with this approach, and it’s something of a deal-breaker. The “L” in LPE stands for “Live” because the output from an LPE is calculated dynamically whenever the original path changes, or the parameters are adjusted. This means that any manipulation of the original path – even just nudging the position of one of the nodes – or any changes to the LPE parameters, will cause the output to be recalculated and all your manual changes to be discarded. You might think that this is okay, so long as you do your changes last, and then don’t touch the object again, but the LPE output is also calculated when your file is loaded from disk: save the file, and reopen it later, and your manual changes are gone. There’s simply no way to manually edit the parts of the LPE such that Inkscape won’t throw your changes away at some point. | **There’s just one problem with this approach, and it’s something of a deal-breaker. The “L” in LPE stands for “Live” because the output from an LPE is calculated dynamically whenever the original path changes, or the parameters are adjusted. This means that any manipulation of the original path – even just nudging the position of one of the nodes – or any changes to the LPE parameters, will cause the output to be recalculated and all your manual changes to be discarded. You might think that this is okay, so long as you do your changes last, and then don’t touch the object again, but the LPE output is also calculated when your file is loaded from disk: save the file, and reopen it later, and your manual changes are gone. There’s simply no way to manually edit the parts of the LPE such that Inkscape won’t throw your changes away at some point. |
The reason that these new elements are not selectable on the canvas is that they’re all created in a “locked” state. The ability to lock objects has been in Inkscape for a long time, but has generally been a poor substitute for keeping objects arranged in suitable layers and locking the whole layer instead. This is because a locked object is difficult to unlock again – after all, you can’t select it with the mouse to indicate which object you want to unlock. This situation improved with the release of Inkscape 1.0, which added an “Unlock Objects Below” entry to the context menu (see part 101 of this series for more details). Perhaps we could use that to allow easier editing of the individual components of our dimension line?** | The reason that these new elements are not selectable on the canvas is that they’re all created in a “locked” state. The ability to lock objects has been in Inkscape for a long time, but has generally been a poor substitute for keeping objects arranged in suitable layers and locking the whole layer instead. This is because a locked object is difficult to unlock again – after all, you can’t select it with the mouse to indicate which object you want to unlock. This situation improved with the release of Inkscape 1.0, which added an “Unlock Objects Below” entry to the context menu (see part 101 of this series for more details). Perhaps we could use that to allow easier editing of the individual components of our dimension line?** |
| |
Il n'y a qu'un seul problème avec cette approche, et il s'agit d'une sorte de rupture de contrat. Le "L" de LPE signifie "Live" (en direct), car la sortie d'un LPE est calculée dynamiquement chaque fois que le chemin original change ou que les paramètres sont ajustés. Cela signifie que toute manipulation de la trajectoire d'origine - même s'il s'agit simplement de modifier la position de l'un des nœuds - ou toute modification des paramètres de l'EPL entraînera un nouveau calcul de la sortie et la suppression de toutes vos modifications manuelles. Vous pourriez penser que cela n'est pas grave, tant que vous effectuez vos modifications en dernier et que vous ne touchez plus à l'objet, mais la sortie LPE est également calculée lorsque votre fichier est chargé depuis le disque : sauvegardez le fichier et rouvrez-le plus tard, et vos modifications manuelles sont perdues. Il n'y a tout simplement aucun moyen de modifier manuellement les parties du LPE de telle sorte qu'Inkscape ne rejette pas vos modifications à un moment donné. | Il n'y a qu'un seul problème avec cette approche et il s'agit d'une sorte de rupture de contrat. Le « L » de LPE signifie « Live » (en direct), car la sortie d'un LPE est calculée dynamiquement chaque fois que le chemin original change ou que les paramètres sont ajustés. Cela signifie que toute manipulation de la trajectoire d'origine - même s'il s'agit simplement de modifier la position de l'un des nœuds un chouïa - ou toute modification des paramètres du LPE entraînera un nouveau calcul de la sortie et la suppression de toutes vos modifications manuelles. Vous pourriez penser que cela n'est pas grave, tant que vous effectuez vos modifications en dernier et que vous ne touchez plus à l'objet, mais la sortie du LPE est également calculée lorsque votre fichier est chargé depuis le disque : sauvegardez le fichier et rouvrez-le plus tard, et vos modifications manuelles sont perdues. Il n'y a tout simplement aucun moyen de modifier manuellement les parties du LPE de telle sorte qu'Inkscape ne supprime pas vos modifications à un moment donné. |
| |
La raison pour laquelle ces nouveaux éléments ne sont pas sélectionnables sur le canevas est qu'ils sont tous créés dans un état "verrouillé". La possibilité de verrouiller des objets existe depuis longtemps dans Inkscape, mais elle s'est généralement révélée être un piètre substitut au maintien des objets dans des couches appropriées et au verrouillage de la couche entière. En effet, un objet verrouillé est difficile à déverrouiller à nouveau - après tout, vous ne pouvez pas le sélectionner avec la souris pour indiquer quel objet vous voulez déverrouiller. Cette situation s'est améliorée avec la sortie d'Inkscape 1.0, qui a ajouté une entrée "Déverrouiller les objets ci-dessous" au menu contextuel (voir la partie 101 de cette série pour plus de détails). Peut-être pourrions-nous l'utiliser pour faciliter l'édition des composants individuels de notre ligne de cote ? | La raison pour laquelle ces nouveaux éléments ne sont pas sélectionnables sur le canevas est qu'ils sont tous créés dans un état « verrouillé ». La possibilité de verrouiller des objets existe depuis longtemps dans Inkscape, mais elle s'est généralement révélée être un piètre substitut au maintien des objets dans des couches appropriées et au verrouillage de la couche entière. En effet, un objet verrouillé est difficile à déverrouiller à nouveau - après tout, vous ne pouvez pas le sélectionner avec la souris pour indiquer quel objet vous voulez déverrouiller. Cette situation s'est améliorée avec la sortie d'Inkscape 1.0, qui a ajouté une entrée « Déverrouiller les objets ci-dessous » au menu contextuel (voir la partie 101 de cette série pour plus de détails). Peut-être pourrions-nous l'utiliser pour faciliter l'édition des composants individuels de notre ligne de cote ? |
| |
| |
So what’s the solution? Is there a way that we can style the individual parts of the dimension lines beyond the limited options provided in the LPE parameters? Well, there is… but only in a way that removes their link to the original path. For example, do you want to style the leader lines as dashes, or with a different thickness to the arrowed dimension line? It’s possible, but only by also losing the live update of the text value when you move or modify the path.** | So what’s the solution? Is there a way that we can style the individual parts of the dimension lines beyond the limited options provided in the LPE parameters? Well, there is… but only in a way that removes their link to the original path. For example, do you want to style the leader lines as dashes, or with a different thickness to the arrowed dimension line? It’s possible, but only by also losing the live update of the text value when you move or modify the path.** |
| |
Il suffit de cliquer avec le bouton droit de la souris sur la dimension et de sélectionner l'option Déverrouiller dans le menu contextuel pour que les éléments individuels puissent être sélectionnés avec la souris. Ils peuvent maintenant être stylisés individuellement, et peuvent même être cliqués pour passer aux poignées de rotation/d'inclinaison et aux autres modes de boîte de sélection. En interne, l'attribut "sodipodi:insensitive" a été supprimé du nœud SVG de chaque élément, ce qui permet à Inkscape de traiter ces éléments comme n'importe quel objet normal sélectionnable, déplaçable et modifiable... jusqu'à ce que vous modifiiez le chemin d'origine, que vous changiez les paramètres LPE ou que vous sauvegardiez et chargiez le fichier. Malheureusement, le simple déverrouillage de ces objets ne suffit pas à rompre leur lien avec l'effet Live. | Il suffit de cliquer avec le bouton droit de la souris sur la dimension et de sélectionner l'option Déverrouiller dans le menu contextuel pour que les éléments individuels puissent être sélectionnés avec la souris. Ils peuvent maintenant être stylisés individuellement, et peuvent même être cliqués pour passer aux poignées de rotation/d'inclinaison et aux autres modes de boîte de sélection. En interne, l'attribut « sodipodi:insensitive » a été supprimé du nœud SVG de chaque élément, ce qui permet à Inkscape de traiter ces éléments comme n'importe quel objet normal sélectionnable, déplaçable et modifiable... jusqu'à ce que vous modifiiez le chemin d'origine, que vous changiez les paramètres LPE ou que vous sauvegardiez et chargiez le fichier. Malheureusement, le simple déverrouillage de ces objets ne suffit pas à rompre leur lien avec l'effet Live. |
| |
Quelle est donc la solution ? Existe-t-il un moyen de styliser les parties individuelles des lignes de dimension au-delà des options limitées fournies par les paramètres LPE ? Eh bien, oui... mais seulement d'une manière qui supprime leur lien avec la trajectoire d'origine. Par exemple, voulez-vous donner un style aux lignes de repère sous forme de tirets, ou avec une épaisseur différente de celle de la ligne de cote fléchée ? C'est possible, mais seulement si vous perdez également la mise à jour en direct de la valeur du texte lorsque vous déplacez ou modifiez le chemin. | Quelle est donc la solution ? Existe-t-il un moyen de styliser les parties individuelles des lignes de dimension au-delà des options limitées fournies par les paramètres LPE ? Eh bien, oui... mais seulement d'une manière qui supprime leur lien avec la trajectoire d'origine. Par exemple, voulez-vous donner un style aux lignes de repère sous forme de tirets ou avec une épaisseur différente de celle de la ligne de cote fléchée ? C'est possible, mais seulement si vous perdez également la mise à jour en direct de la valeur du texte lorsque vous déplacez ou modifiez le chemin. |
| |
| |
For most people, all this talk of styling parts of the Measure Segments LPE will be somewhat academic. In the vast majority of cases, the normal output from the effect will be sufficient, and the parameters it provides will give enough flexibility to style the new elements well enough. If more complex adjustments are needed, then using Object to Path will usually suffice, even if it does mean sacrificing live updates of the dimensions. It would be great if Inkscape offered a means to indicate that an element has been manually styled, but that you still want the position and text content to update, but perhaps that’s too niche a requirement to warrant the development time.** | For most people, all this talk of styling parts of the Measure Segments LPE will be somewhat academic. In the vast majority of cases, the normal output from the effect will be sufficient, and the parameters it provides will give enough flexibility to style the new elements well enough. If more complex adjustments are needed, then using Object to Path will usually suffice, even if it does mean sacrificing live updates of the dimensions. It would be great if Inkscape offered a means to indicate that an element has been manually styled, but that you still want the position and text content to update, but perhaps that’s too niche a requirement to warrant the development time.** |
| |
Pour ce faire, il faut utiliser l'entrée de menu Chemin > Objet vers Chemin. Historiquement, c'est le mécanisme utilisé pour "fixer" la sortie d'un LPE, en réduisant toutes les parties "vivantes" de la chaîne d'effets pour produire un simple chemin SVG qui a la même apparence que la sortie finale du LPE. Avec le LPE Mesure des segments, vous pouvez toujours utiliser cette même entrée de menu pour " corriger " la sortie des LPE, sauf que cette fois, le nom de la commande devient quelque peu erroné : vous ne convertissez plus l'objet en un élément <chemin>, mais vous brisez le lien entre le chemin d'origine et les divers éléments <chemin> et <texte> générés. En d'autres termes, le choix de cette option ne convertit pas réellement votre objet en un chemin, mais il le convertit en objets éditables distincts. Naturellement, cela signifie que les éléments ne sont plus "vivants", et vous perdez donc toute la mise à jour automatique qui est si utile dans un effet comme celui-ci. | Pour ce faire, il faut utiliser l'entrée de menu Chemin > Objet vers Chemin. Historiquement, c'est le mécanisme utilisé pour « fixer » la sortie d'un LPE, en réduisant toutes les parties « vivantes » de la chaîne d'effets pour produire un simple chemin SVG qui a la même apparence que la sortie finale du LPE. Avec le LPE Mesurer des segments, vous pouvez toujours utiliser cette même entrée de menu pour « corriger » la sortie des LPE, sauf que cette fois, le nom de la commande devient quelque peu erroné : vous ne convertissez plus l'objet en un élément <chemin>, mais vous brisez le lien entre le chemin d'origine et les divers éléments <chemin> et <texte> générés. En d'autres termes, le choix de cette option ne convertit pas réellement votre objet en un chemin, mais il le convertit en objets éditables distincts. Naturellement, cela signifie que les éléments ne sont plus « vivants », et vous perdez donc toute la mise à jour automatique qui est si utile dans un effet comme celui-ci. |
| |
Pour la plupart des gens, toute cette discussion sur le stylisme des parties de l'EPL des segments de mesure sera quelque peu théorique. Dans la grande majorité des cas, la sortie normale de l'effet sera suffisante, et les paramètres qu'il fournit donneront suffisamment de flexibilité pour styliser les nouveaux éléments de manière satisfaisante. Si des ajustements plus complexes sont nécessaires, l'utilisation de Object to Path sera généralement suffisante, même si cela implique de sacrifier les mises à jour en direct des dimensions. Ce serait formidable si Inkscape offrait un moyen d'indiquer qu'un élément a été stylé manuellement, mais que vous souhaitez toujours que la position et le contenu du texte soient mis à jour, mais c'est peut-être une exigence trop niche pour justifier le temps de développement. | Pour la plupart des gens, toute cette discussion sur le style des parties du LPE des segments de mesure sera quelque peu théorique. Dans la grande majorité des cas, la sortie normale de l'effet sera suffisante et les paramètres qu'il fournit donneront suffisamment de flexibilité pour styliser les nouveaux éléments de manière satisfaisante. Si des ajustements plus complexes sont nécessaires, l'utilisation de Objet en chemin sera généralement suffisante, même si cela implique de sacrifier les mises à jour en direct des dimensions. Ce serait formidable si Inkscape offrait un moyen d'indiquer qu'un élément a été stylisé manuellement, mais que vous souhaitez toujours que la position et le contenu du texte soient mis à jour, mais c'est peut-être une exigence trop « de niche » pour justifier le temps de développement. |
| |
| |
Notice that “path144” is indented compared with the rest of the elements? That’s the original path to which we’ve applied the LPE, and it’s indented because it is a child of the Inkscape layer (the <g> element above it). The newly created <path> and <text> elements, however, are not indented because they are siblings of the layer. This means that they live alongside the layer, not inside it, in the XML structure. Now let’s see what happens when we hide the layer.** | Notice that “path144” is indented compared with the rest of the elements? That’s the original path to which we’ve applied the LPE, and it’s indented because it is a child of the Inkscape layer (the <g> element above it). The newly created <path> and <text> elements, however, are not indented because they are siblings of the layer. This means that they live alongside the layer, not inside it, in the XML structure. Now let’s see what happens when we hide the layer.** |
| |
Cependant, même si vous ne voulez pas styliser les parties de dimension, il y a un aspect important de l'approche de cette LPE dont vous devez être conscient, car le comportement est assez surprenant, et pourrait facilement vous prendre au dépourvu. Le comportement des Segments de Mesure par rapport aux couches est, à mon avis, cassé. | Cependant, même si vous ne voulez pas styliser les parties de dimension, il y a un aspect important de l'approche de ce LPE dont vous devez être conscient, car le comportement est très surprenant, et pourrait facilement vous prendre au dépourvu. Le comportement de Mesurer des segments par rapport aux calques est, à mon avis, cassé. |
| |
Regardons à nouveau les nouveaux éléments dans l'éditeur XML. Il s'agit du même contenu que la capture d'écran précédente, mais je l'ai recadrée pour ne montrer que les détails pertinents. | Regardons à nouveau les nouveaux éléments dans l'éditeur XML. Il s'agit du même contenu que la capture d'écran précédente, mais je l'ai recadrée pour ne montrer que les détails pertinents. |
| |
Remarquez que "path144" est en retrait par rapport au reste des éléments ? C'est le chemin original auquel nous avons appliqué le LPE, et il est en retrait parce qu'il est un enfant du calque Inkscape (l'élément <g>au-dessus). Les éléments <path> et <text> nouvellement créés, cependant, ne sont pas en retrait car ils sont frères et sœurs du calque. Cela signifie qu'ils vivent à côté du calque, et non à l'intérieur, dans la structure XML. Voyons maintenant ce qui se passe lorsque nous masquons le calque. | Remarquez-vous que « path144 » est en retrait par rapport au reste des éléments ? C'est le chemin original auquel nous avons appliqué le LPE, et il est en retrait parce qu'il est un enfant du calque Inkscape (l'élément <g> au-dessus). Les éléments <path> et <text> nouvellement créés, cependant, ne sont pas en retrait car ils sont frères et sœurs du calque. Cela signifie qu'ils vivent à côté du calque, et non à son intérieur, dans la structure XML. Voyons maintenant ce qui se passe lorsque nous masquons le calque. |
| |
| |
There is a solution to this issue, but it’s not pretty. You can unlock the generated dimension content (right-click > Unlock Objects Below) – though you may need to do this multiple times for each part of the content. Then you need to select all the parts. Finally you can move them into the right layer using the Layer > Move Selection to Layer… menu option. Doing this will cause Inkscape to re-run the LPE, locking the objects again, but they will now be on the correct layer. The good news is that, once they’ve been moved, they tend to stay put. Further changes to the path or the LPE parameters won’t suddenly break them back out to the top level again. It would be much better, though, if Inkscape simply created them in the same layer as the original path by default.** | There is a solution to this issue, but it’s not pretty. You can unlock the generated dimension content (right-click > Unlock Objects Below) – though you may need to do this multiple times for each part of the content. Then you need to select all the parts. Finally you can move them into the right layer using the Layer > Move Selection to Layer… menu option. Doing this will cause Inkscape to re-run the LPE, locking the objects again, but they will now be on the correct layer. The good news is that, once they’ve been moved, they tend to stay put. Further changes to the path or the LPE parameters won’t suddenly break them back out to the top level again. It would be much better, though, if Inkscape simply created them in the same layer as the original path by default.** |
| |
La ligne originale est cachée, mais les éléments de dimension ne le sont pas. Ils se trouvent tous au niveau supérieur du SVG, pas dans le même calque que le chemin auquel ils sont associés, et ne sont donc pas affectés par le masquage du calque lui-même. Cela se produit indépendamment de la profondeur de l'imbrication de votre chemin original. Essayez de créer un dessin technique montrant différentes vues d'un objet : le bon sens voudrait que vous placiez chaque vue dans un calque distinct afin de pouvoir les activer et les désactiver individuellement, mais les dimensions resteront visibles. Dans l'exemple suivant, l'image de gauche montre un simple dessin technique d'un cylindre, tandis que l'image de droite montre le résultat du masquage du calque "Vue du dessus". Ce n'est pas exactement ce à quoi la plupart des gens s'attendent. | La ligne originale est cachée, mais les éléments de dimension ne le sont pas. Ils se trouvent tous au niveau supérieur du SVG, pas dans le même calque que le chemin auquel ils sont associés, et ne sont donc pas affectés par le masquage du calque lui-même. Cela se produit indépendamment de la profondeur de l'imbrication de votre chemin original. Essayez de créer un dessin technique montrant différentes vues d'un objet : le bon sens voudrait que vous placiez chaque vue dans un calque distinct afin de pouvoir les activer et les désactiver individuellement, mais les dimensions resteront visibles. Dans l'exemple suivant, l'image de gauche montre le simple dessin technique d'un cylindre, tandis que l'image de droite montre le résultat du masquage du calque « Vue du dessus ». Ce n'est pas exactement ce à quoi la plupart des gens s'attendent. |
| |
Il existe une solution à ce problème, mais elle n'est pas très jolie. Vous pouvez déverrouiller le contenu de la dimension générée (clic droit > Déverrouiller les objets ci-dessous) - bien que vous deviez peut-être le faire plusieurs fois pour chaque partie du contenu. Ensuite, vous devez sélectionner toutes les parties. Enfin, vous pouvez les déplacer dans le bon calque en utilisant l'option de menu Calque > Déplacer la sélection vers le calque.... Inkscape réexécutera alors le LPE, verrouillant à nouveau les objets, mais ils se trouveront désormais sur le bon calque. La bonne nouvelle est qu'une fois qu'ils ont été déplacés, ils ont tendance à rester en place. De nouvelles modifications du chemin ou des paramètres LPE ne les ramèneront pas soudainement au niveau supérieur. Ce serait cependant bien mieux si Inkscape les créait simplement dans le même calque que le chemin d'origine par défaut. | Il existe une solution à ce problème, mais elle n'est pas très jolie. Vous pouvez déverrouiller le contenu de la dimension générée (clic droit > Déverrouiller les objets ci-dessous) - bien que vous deviez peut-être le faire plusieurs fois pour chaque partie du contenu. Ensuite, vous devez sélectionner toutes les parties. Enfin, vous pouvez les déplacer dans le bon calque en utilisant l'option de menu Calque > Déplacer la sélection vers le calque.... Inkscape réexécutera alors le LPE, verrouillant à nouveau les objets, mais ils se trouveront désormais sur le bon calque. La bonne nouvelle est qu'une fois qu'ils ont été déplacés, ils ont tendance à rester en place. De nouvelles modifications du chemin ou des paramètres LPE ne les ramèneront pas soudainement au niveau supérieur. Ce serait cependant bien mieux si Inkscape les créait simplement dans le même calque que le chemin d'origine par défaut. |
**Last month we looked at how to use this effect in practical terms. This time we’ve examined some of the technical details behind it. Now that the genie is out of the bottle, it’s likely that future LPEs will also create new elements rather than just single paths, so understanding what’s happening, and how they’re different from older LPEs, might be a useful skill to add to your Inkscape repertoire.** | **Last month we looked at how to use this effect in practical terms. This time we’ve examined some of the technical details behind it. Now that the genie is out of the bottle, it’s likely that future LPEs will also create new elements rather than just single paths, so understanding what’s happening, and how they’re different from older LPEs, might be a useful skill to add to your Inkscape repertoire.** |
| |
Le mois dernier, nous avons examiné comment utiliser cet effet en termes pratiques. Cette fois, nous nous sommes penchés sur les détails techniques qui le sous-tendent. Maintenant que le génie est sorti de la bouteille, il est probable que les futurs LPE créeront également de nouveaux éléments plutôt que de simples chemins. Comprendre ce qui se passe, et en quoi ils sont différents des anciens LPE, pourrait être une compétence utile à ajouter à votre répertoire Inkscape. | Le mois dernier, nous avons examiné comment utiliser cet effet en termes pratiques. Cette fois-ci, nous nous sommes penchés sur les détails techniques qui le sous-tendent. Maintenant que le génie est sorti de la lampe, il est probable que les futurs LPE créeront également de nouveaux éléments plutôt que de simples chemins. Comprendre ce qui se passe, et en quoi ils sont différents des anciens LPE, pourrait être une compétence utile à ajouter à votre répertoire Inkscape. |
| |
| |