Outils pour utilisateurs

Outils du site


issue106:inkscape

This month, we'll conclude our tour of LPEs by looking at the two new additions to Inkscape 0.91: Power Stroke and Clone Original Path. One limitation artists often find with Inkscape is its inability to produce variable thickness strokes. There are ways to fake it, which pretty much all rely on the “stroke” actually being a filled path in its own right. That inevitably leads to the follow-up problem of how to fill a shape drawn using such fake strokes. These two LPEs are Inkscape's answer to those problems.

Ce mois-ci, nous allons conclure notre tour des LPE en étudiant les deux nouveautés d'Inkscape 0.91 : Contour dynamique et Cloner le chemin original. Une des limitations que les artistes trouvent à Inkscape est son incapacité à produire des contours d'épaisseur variable. Il y a des façons de le simuler, qui s'appuient beaucoup sur un « contour » qui est à proprement parler un chemin rempli à part entière. Ceci conduit inévitablement au problème qui en découle : comment remplir une forme tracée avec de tels faux contours. Ces deux LPE apportent une réponse à ces problèmes.

Power Stroke This effect lets you vary the width of your path by adjusting “stroke knots” along its length. For cases where you might otherwise use PAP to provide some variability to the stroke width, Power Stroke will often achieve a similar effect but with more flexibility. Let's start with the simple example of applying this LPE to a straight line: The top line, in red, represents the original skeleton path. On applying the LPE the first result you'll see is that the skeleton is replaced by a closed path that encloses the original shape. The closed path takes on the attributes of the original skeleton path, so, in this case, it has a red stroke and a transparent fill, resulting in the second shape in the image. Usually you'll want your Power Stroke to be filled with no outline, so in the third image I've changed the style to a black fill with no stroke. You would be forgiven for thinking that we've just gone through a convoluted way to produce a slightly thicker black line with rounded end caps, but the fourth image shows the real secret to Power Stroke: this is the same as the third object, but with the Node tool selected (F2), revealing not only the normal start and end nodes, but three additional pink or purple colored handles (the “stroke knots”) sitting on the periphery of the shape.

Contour dynamique

Cet effet vous permet de faire varier la largeur de votre chemin en ajustant des « points de décalage » sur sa longueur. Dans les cas où vous auriez utilisé à la place l'effet Motif suivant un chemin pour donner de la variabilité à votre largeur de trait, le Contour dynamique réalise souvent un effet similaire, mais avec plus de flexibilité. Commençons par un simple exemple en appliquant ce LPE à une ligne droite :

La ligne du haut, en rouge, représente le chemin squelette d'origine. A l'application de ce LPE, le premier résultat visible est que le squelette est remplacé par un chemin fermé qui enferme la forme originale. Le chemin fermé prend les attributs de la forme squelette d'origine ; ainsi, dans ce cas, elle a un trait rouge et un remplissage transparent, autrement dit, la deuxième image. Habituellement, vous voudrez que votre Contour dynamique soit rempli sans avoir de bord ; dans la troisième image, j'ai donc changé le style pour un remplissage noir sans trait. Vous seriez pardonné de penser que nous avons juste trouvé une façon détournée de produire une ligne noire un peu plus épaisse avec des embouts arrondis, mais la quatrième image montre le vrai secret du Contour dynamique : c'est la même que le troisième objet, mais avec l'outil Nœuds sélectionné (F2), révélant non seulement les nœuds de départ et d'arrivée, mais aussi trois poignées additionnelles roses et violettes (les « points de décalage ») situées à la périphérie de la forme.

The effect automatically adds these nodes at the start and end of the path, and somewhere towards the middle. Using the Node tool they can be dragged perpendicularly to the skeleton path to set the stroke width at that point, but can also be dragged along the path to change the location at which the thickness changes. Taking the previous example; dragging the handles around a little lets us easily produce this result: As you can see, the thickness of the line is set by each of the nodes, with sections in-between ramping linearly from one node to the next. Looking at the LPE's UI you'll notice a pop-up menu for the Interpolator Type. This is what is producing the linear change; pick another value to alter the way in which the width of the path is modified from one node to the next. You can't fail to have noticed the rounded ends to the line. They weren't present on the original skeleton path, so where did they come from? A quick scan of the effect UI will show that several of the controls from the Stroke Style tab of the Fill and Stroke dialog are replicated as part of the LPE. From there, you can set start and end caps (the source of the rounded ends in this case), as well as the join type and miter limit for paths with angles in them. These all operate in a similar way to the equivalent controls in the Style and Stroke dialog, except that the LPE offers more options.

L'effet ajoute ces nœuds automatiquement au début et à la fin du chemin, et quelque part vers le milieu. En utilisant l'outil Nœuds, ils peuvent être tirés perpendiculairement au chemin squelette pour régler l'épaisseur du trait à cet endroit, mais ils peuvent être aussi déplacés le long du chemin pour modifier l'endroit où l'épaisseur change. Prenons l'exemple précédent : en déplaçant un peu les poignées, nous produisons facilement ce résultat :

Comme vous pouvez le voir, l'épaisseur de la ligne est réglée par chacun des nœuds, avec les sections intermédiaires qui croissent linéairement de l'un à l'autre. En regardant l'interface utilisateur de ce LPE, vous noterez un menu déroulant pour le Type d'interpolateur. C'est ce qui détermine la modification linéaire ; prenez une autre valeur et la façon dont la largeur évolue d'un nœud à l'autre est modifiée.

Vous avez certainement noté les terminaisons arrondies de la ligne. Elles n'étaient pas présentes dans le chemin squelette d'origine ; alors, d'où viennent-t-elles ? Un coup d’œil rapide sur l'interface de l'effet montrera que plusieurs contrôles de l'onglet Style de trait du dialogue Remplissage et contour sont répliqués dans ce LPE. Depuis celui-ci, vous pouvez régler les terminaisons de début et de fin (la source des terminaisons arrondies dans ce cas), aussi bien que le type de raccord et la limite de raccord pour les chemins comportant des angles. Ils opèrent tous de la même manière que dans le dialogue Remplissage et contour, sauf que le LPE offre plus d'options.

With three handles for manipulating the Power Stroke, you can already produce some useful results, but the real power comes when you add even more handles. Unfortunately, this is done via a rather clunky approach that can sometimes be a bit unstable, particularly on more complex paths. The first step is to select your path and switch to the Node tool, so that the handles are visible. Next you have to hold the Control-key whilst clicking on a handle. This will create a second handle, directly on top of the first one, which you can then drag to its new location. If you do experience problems, such as the handle becoming detached from the path and having no effect, undo your changes, and then try again, duplicating a different handle instead. Our simple line with three handles quickly turns into something more bumpy once a few more are added: To delete a handle you have to click on it whilst holding the Control and Alt keys. There's no way to select multiple handles in order to move or delete several at a time. You've probably noticed that you can drag handles past one another with ease – that's thanks to the Sort Points checkbox in the effect's UI. Uncheck that for a different behaviour in which the shape is drawn from handle to handle based on their original ordering rather than their final position along the line. It's useful for some effects, but generally it's better to leave the box checked. With all that background out of the way, let's take a look at this LPE when used on a more complex path. It's time to return to my efforts to manually trace “Frankie” (see parts 16-21 for my previous attempts at this): The parts of the path that stretch inside the outline – the mouth, nose and ears – were particularly fiddly to get right. In practice it's probably faster to just use a simple path for the outline, then draw those parts separately. But you can clearly see how the LPE allows the path to thicken and thin to give more of a dynamic feel to the character than a simple fixed width line could achieve.

Avec trois poignées pour manipuler le Contour dynamique, vous pouvez déjà produire quelques résultats utiles, mais la pleine puissance est atteinte en ajoutant des poignées supplémentaires. Malheureusement, ceci se fait par une approche malaisée qui peut être parfois instable, particulièrement avec des chemins complexes. D'abord, sélectionnez votre chemin et passez sur l'outil Nœuds, de telle sorte que les poignées soient visibles. Puis, en appuyant sur la touche Ctrl, cliquez sur une poignée. Cela créera une seconde poignée qui recouvre la première, que vous pouvez ensuite tirer vers sa nouvelle position. Si vous avez des problèmes, tels qu'un détachement de la poignée du chemin et une perte d'effet, annulez vos modifications et essayez à nouveau, en dupliquant une autre poignée. Notre simple ligne avec trois poignées se transforme en quelque chose de plus bosselé en en ajoutant quelques-unes de plus :

Pour supprimer une poignée, cliquez dessus tout en appuyant sur les touches Ctrl et Alt. Il n'y a aucun moyen de sélectionner plusieurs poignées pour les bouger ou les enlever d'un coup. Vous avez probablement noté que vous pouvez facilement tirer les poignées l'une au-delà de l'autre, ceci grâce la case à cocher « Trier les points » dans l'interface de l'effet. Décochez-la pour un comportement différent, où la forme est tracée de poignée en poignée en fonction de leur position d'origine plutôt que leur position finale le long de la ligne. C'est utile pour certains effets, mais c'est généralement mieux de laisser la case cochée.

Le contexte étant décrypté, regardons ce LPE quand nous l'utilisons sur un chemin plus complexe. C'est le moment de revenir à mon effort pour tracer « Frankie » à la main (voyez les parties 16 à 21 pour mes tentatives précédentes) :

Les parties du chemin qui dépassent de la ligne générale - la bouche, le nez et les oreilles - ont été particulièrement délicates à mettre au point. En pratique, c'est probablement plus rapide de n'utiliser qu'un simple chemin pour la ligne générale, puis de dessiner ces parties séparément. Mais vous pouvez clairement voir comment le LPE permet d'épaissir et de rétrécir le chemin pour donner une plus grande impression de mouvement au personnage qu'avec une simple ligne à largeur fixe.

Clone Original Path Our final LPE follows on directly from those efforts to manually trace Frankie. One problem with the Power Stroke or PAP effects is that they draw strokes as filled paths, so setting a fill color on them actually changes the color of the “stroke”, not the area inside it. To clarify, if I were to select the Power Stroke path in the Frankie example and set its fill color to red, the result would just be a red Power Stroke, not a black Power Stroke with a red fill inside the face area. Previously, I've shown you how to work around this limitation using the Bucket Fill tool or by manually drawing a second path that you can fill and then send below the outline. Neither of these solutions is ideal, and both can take a lot of manual tweaking to get right. Wouldn't it be easier if you could just fill the original skeleton path with a different color, without affecting the fill that's used for the Power Stroke? Effectively that's what the Clone Original Path effect lets you do. There are a few ways to use this effect, but we'll start with the long-winded method, to give you a better understanding of what's happening. First you'll need a sacrificial skeleton. Don't worry, we're not heading into Voodoo territory, but rather you'll need a skeleton path that will completely disappear once you use the LPE. Its only purpose is to serve as an object to apply the effect to, so a simple straight line will suffice. Select the path and add the Clone Original Path LPE to it, then gasp in amazement as… nothing happens. There are a few more steps to go through before the effect has any visible impact.

Cloner le chemin original

Notre dernier LPE poursuit directement ses efforts pour tracer Frankie à la main. Un problème avec le Contour dynamique ou l'effet « Motif suivant un chemin », c'est qu'ils tracent des traits sous forme de chemins pleins, ce qui fait qu'un changement de leur couleur de remplissage modifie la couleur du trait, mais pas la surface intérieure. Pour clarifier, si vous aviez sélectionné le chemin en Contour dynamique dans l'exemple de Frankie et passé la couleur en rouge, le résultat aurait été un contour dynamique rouge, et non un trait noir de contour dynamique avec un remplissage en rouge de la surface du visage.

Précédemment, j'avais montré comment contourner la limitation en utilisant l'outil Remplir, une zone bornée, ou en dessinant à main levée un second chemin qui peut être rempli et passé sous la ligne générale. Aucune de ces solutions n'est idéale et chacune peut demander pas mal de temps de réglage pour un parfait ajustement. Est-ce que ça ne serait pas plus simple si vous pouviez juste remplir le chemin squelette d'origine avec une couleur différente, sans effet sur le remplissage qui aurait été utilisé par le Contour dynamique ? Effectivement, c'est ce que vous pouvez faire avec Cloner le chemin original.

Il y a plusieurs manières d'utiliser cet effet, mais nous allons commencer avec la méthode la plus longue, pour vous donner une meilleure compréhension de ce qui se passe. D'abord, nous avons besoin d'un squelette à sacrifier. Pas de panique, nous n'entrons pas dans le domaine du Vaudou, mais disons que nous avons besoin d'un chemin squelette qui disparaîtra complètement quand nous aurons utilisé l'effet. Son seul intérêt est d'être un objet sur lequel appliquer l'effet ; aussi, une simple ligne suffira. Sélectionnez le chemin et ajoutez-lui le LPE Cloner le chemin original, puis, pour votre plus grand étonnement…, rien ne se passe. Il y a quelques étapes de plus à réaliser avant que l'effet ait un impact visible.

Having applied the effect, you next need to select your Power Stroked path, then copy it to the clipboard. Re-select the sacrificial skeleton and use the first button in the effect's UI to paste the path from the clipboard. Your skeleton will disappear, and it will seem that the Power Stroked path has been selected instead. Appearances can be deceptive, however – use the arrow keys to move the selected item and you'll realise that you've actually got a clone of the skeleton path used in the Power Stroke. Fill it with a color and send it back in the stack and you've achieved in seconds what would have taken several minutes to do manually. You can fill your clone with a gradient or pattern, if you prefer, or change the stroke style. In principle you can also apply other LPEs – although they don't always chain as well as you might hope. And because it's a clone, you can change the shape of the original skeleton path (the one used for the Power Stroke), and your filled version will automatically update to match it – comic creators rejoice! No more does every tweak to an outline have to entail a corresponding manual update to the fill shape! With the cloned path selected, the second button in the UI will select the original – though the classic Shift-D shortcut or Edit > Clone > Select Original menu entry both also work. Cloning a path in this way isn't restricted to the Power Stroke LPE, so if you need a copy of the skeleton that you used with any other effect, just follow the same steps.

Ayant appliqué l'effet, vous devez ensuite sélectionner votre chemin de Contour dynamique, puis le copier dans le presse-papier. Re-sélectionnez le chemin à sacrifier et utilisez le premier bouton dans l'interface de l'effet pour coller le chemin depuis le presse-papier. Votre squelette disparaîtra et il semblera que le chemin de Contour dynamique a été sélectionné à la place. Cependant, les apparences sont trompeuses ; utilisez vos touches fléchées pour déplacer l'objet sélectionné et vous réaliserez qu'en fait vous avez un clone du chemin squelette qui est utilisé dans le Contour dynamique. Remplissez-le d'une couleur et renvoyez-le dans la pile et vous aurez réalisé en quelques secondes ce qui vous aurait demandé plusieurs minutes à la main.

Vous pouvez remplir votre clone avec un dégradé ou un motif, si vous préférez, ou modifier le style du trait. En principe, vous pouvez appliquer les autres LPE - bien qu'ils ne s'enchaînent pas toujours aussi bien qu'espéré. Et, parce que c'est un clone, vous pouvez changer la forme du chemin squelette d'origine (celui utilisé pour le Contour dynamique), et votre version remplie se mettra à jour automatiquement pour conserver la ressemblance ; créateurs de BD, réjouissez-vous ! Terminées les retouches manuelles de la forme remplie à chaque ajustement de l'esquisse !

Le chemin cloné étant sélectionné, le second bouton de l'interface sélectionnera l'original, bien que le raccourci classique Maj-D ou l'entrée de menu Éditer > Cloner > Sélectionner l'original fonctionne aussi. Le clonage d'un chemin de cette façon n'est pas limité au LPE Contour dynamique ; aussi, si vous avez besoin d'une copie du squelette que vous avez utilisé avec un autre effet, suivez simplement les mêmes étapes.

You can streamline the creation process a little by copying the Power Stroke path to the clipboard before you create your sacrificial skeleton rather than afterwards. But the Inkscape developers are nicer than that, and have added an option that will automatically create an infinitesimally small sacrificial path that has just a single node, add the Clone Original Path effect to it, and connect it to your original path, all from a single menu entry. Just select the Power Stroked path, then use Edit > Clone > Clone Original Path (LPE), and then set the fill and stroke you want for your clone. The only way it could be any faster is if there was a keyboard shortcut for the menu option. But wait! Inkscape 0.91 does include a keyboard shortcut editor. Click on the Edit > Preferences menu item, then in the dialog, drill down to Interface > Keyboard Shortcuts. Expand the Edit section of the pane on the right and you should find Clone Original Path (LPE) in the list. Click in the Shortcut column for that entry, then press the new keyboard shortcut you wish to use (I went for CTRL-ALT-SHIFT-D to keep it in line with the other cloning shortcuts).

Vous pouvez rationaliser un peu le processus de création en copiant le chemin du Contour dynamique dans le presse-papier avant de créer le squelette à sacrifier plutôt qu'après. Mais les développeurs d'Inkscape sont encore plus sympas et ils ont ajouté une option qui créera automatiquement un chemin à sacrifier tellement petit qu'il a juste un nœud, lui ajoutera l'effet Cloner le chemin original et le connectera à votre chemin d'origine. Il suffit de sélectionner le chemin du Contour dynamique, puis utilisez Éditer > Cloner > Cloner le chemin original (LPE) ; ensuite, réglez le remplissage et le contour que vous désirez pour votre clone. La seule façon d'accélérer serait d'avoir un raccourci clavier pour l'option du menu.

Mais attendez ! Inkscape 0.91 doit inclure un éditeur de raccourcis clavier. Cliquez sur l'élément du menu Édition > Préférences, puis, dans le dialogue, descendez jusqu'à Interface > Raccourcis claviers. Agrandissez la partie Édition du panneau de droite et vous devriez trouver Cloner le chemin original (LPE) dans la liste. Cliquez sur la colonne Raccourci de cette entrée, puis appuyez sur le nouveau raccourci clavier que vous souhaitez utiliser (j'ai choisi CTRL-ALT-MAJ-D pour être homogène avec les autres raccourcis du clonage).

There's one final trick up the sleeve of this LPE. Back in part 30, I introduced the use of “unset” fills and strokes to allow different clones to have different styles and colors. This effect offers another way to achieve a similar result. You can either select an original object that you wish to clone, and then use the Edit > Clone > Clone Original Path (LPE) menu option, or you can select a clone that you've already created and just click the “+” button in the Live Path Effects dialog. Now you can change the color and style of your clone with impunity, safe in the knowledge that changes to the original shape will still be reflected. For obvious reasons this works only where the parent object is a path or can be trivially converted into one – so it does work with stars, spirals and even text objects, but doesn't work with groups or bitmap images. It's worth noting that this approach does result in a second copy of the path data being stored in the clone's XML (see part 43 for details), unlike a normal clone which just hold a reference to the original. This means that not only is the file size a little larger, but any edits made to the original outside of Inkscape won't be reflected in the LPE clone, whereas they would with a “real” SVG clone. One advantage of this approach, however, is that you don't have to unset the fill and stroke on the original, so you won't be left with a black shape that you might have to hide under another object or by placing it off the side of the page.

Il y a un dernier tour dans le sac de ce LPE. Dans la partie 30, j'ai introduit l'utilisation des remplissages et contours « indéfinis » pour permettre à différents clones d'avoir des couleurs et des styles différents. Cet effet offre une autre façon d'arriver au même résultat. Vous pouvez, soit sélectionner un objet original que vous souhaitez cloner et, ensuite, utiliser l'option de menu Éditer > Cloner > Cloner le chemin original (LPE), soit sélectionner un clone que vous avez déjà créé et simplement cliquer sur le bouton « + » dans le dialogue des effets dynamiques. Maintenant, vous pouvez changer la couleur et le style de votre clone sans risque, en sachant qu'un changement dans l'original sera reproduit. Pour des raisons évidentes, ceci ne marche que si l'objet parent est un chemin ou peut y être facilement converti, ainsi, cela fonctionne avec des étoiles, des spirales et même des objets textes, mais ne marche pas avec des groupes ou des images bitmap.

Il faut signaler ici que cette approche entraîne l'enregistrement d'une seconde copie des données du chemin dans le XML du clone (voir partie 43 pour les détails), contrairement à un clone normal qui ne contient qu'une référence à l'original. Ceci signifie que, non seulement la taille du fichier est plus grande, mais que toute modification de l'original en dehors d'Inkscape ne sera pas reflétée sur le clone LPE, alors qu'elle le serait pour un « vrai » clone SVG. Cependant, un avantage de cette approche est que vous n'avez pas à « indéfinir » le remplissage et le contour de l'original ; vous ne vous retrouverez donc pas avec une forme noire que vous auriez à cacher sous un autre objet ou à mettre à l'écart à l'extérieur de la page.

Conclusion The Power Stroke and Clone Original Path LPEs are worthy additions to Inkscape 0.91. For a comic artist they could be reason enough to upgrade from an older version. Using little more than these two effects produced the best manual trace of Frankie so far: We've now reached the end of our tour of LPEs. There are more being added to the development builds all the time, so do check out the dialog with each future version of Inkscape. They represent perhaps the most common way in which the developers have broken through the limitations of the SVG format in order to add functionality that far exceeds what any normal SVG editor could offer. It's true that the UI for some is confusing, they're sometimes a little unstable, and that they often don't chain as well as they should, but it's well worth spending some time to play around with them as they can open a path to drawing possibilities that would be impossible or, at least, impractical to produce any other way.

Conclusion

Les LPE Contour dynamique et Cloner le chemin original sont des additions intéressantes dans Inkscape 0.91. Pour un auteur de BD, ils peuvent être une raison suffisante pour passer à la nouvelle version. L'utilisation d'un peu plus que ces deux effets a produit le meilleur tracé de Frankie jusqu'à aujourd'hui :

Nous avons maintenant atteint la fin de notre tour des LPE. Il y a en permanence des ajouts dans les build du développement, aussi, vérifiez la boîte de dialogue de chaque future version d'Inkscape. Elle représente peut-être la manière la plus courante que les développeurs ont trouvé pour passer outre les limitations du format SVG, de sorte d'ajouter des fonctionnalités qui dépassent largement ce qu'un éditeur SVG normal peut offrir. Il est vrai que, pour certains, l'interface utilisateur est déroutante, qu'ils sont parfois un peu instables et qu'ils ne s'enchaînent pas toujours comme ils le devraient, mais ça vaut le coup de passer du temps à les essayer car ils peuvent ouvrir une piste pour dessiner certaines choses qui seraient impossibles, ou à tout le moins, compliquées à réaliser par d'autres voies.

issue106/inkscape.txt · Dernière modification : 2016/04/15 16:08 de andre_domenech