Outils pour utilisateurs

Outils du site


issue112:inkscape

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
issue112:inkscape [2016/08/31 18:31] – [2] auntieeissue112:inkscape [2016/08/31 18:54] (Version actuelle) – [3] auntiee
Ligne 61: Ligne 61:
 It hardly seems fair to have wasted your reading time with a description of one poorly implemented filter, and another that hasn't been implemented at all, so I'll finish this instalment by adding another useful primitive to your toolbox: Morphology. It hardly seems fair to have wasted your reading time with a description of one poorly implemented filter, and another that hasn't been implemented at all, so I'll finish this instalment by adding another useful primitive to your toolbox: Morphology.
  
-Despite its fancy sounding name, this is a very simple filter: all it does is makes things thicker or thinner. And it does so with the minimum of fuss: there's just a drop-down to select between “erode” (make things thinner) and “dilate” (make things thicker), and a pair of optionally linked “radius” sliders to set the amount of erosion or dilation that will take place. Let's see this filter in action – in each case the first text object is unfiltered, and the second is filtered as described, with a radius of 2.5.**+Despite its fancy sounding name, this is a very simple filter: all it does is makes things thicker or thinner. And it does so with the minimum of fuss: there's just a drop-down to select between “erode” (make things thinner) and “dilate” (make things thicker), and a pair of optionally linked “radius” sliders to set the amount of erosion or dilation that will take place. Let's see this filter in action – in each case the first text object is unfiltered, and the second is filtered as described, with a radius of 2.5.** 
  
-Ceci conclut notre tour des primitives de remplissage d'Inkscape. La spécificité SVG, cependant, en a une autre : Tile (Tuile), qui vous permet d'alimenter la sortie à partir d'une autre primitive répétée (tuilée) sur la totalité de la région du filtre. Pour qu'elle marche, la primitive d'entrée doit avoir une région de filtre plus petite que celle qui sera tuilée ; mais, comme Inkscape utilise une région de filtre unique pour la totalité de la chaîne de filtrage, même si cette primitive devait être implémentée, elle n'aurait aucun effet visible.+Ceci conclut notre tour des primitives de remplissage d'Inkscape. Cependant, la spécificité SVG en a une autre : Tile (Tuile), qui vous permet d'inclure la sortie d'une autre primitive qui sera répétée (tuilée) sur la totalité de la région du filtre. Pour qu'elle marche, la primitive qui rentre doit avoir une région de filtre plus petite que celle ou elle sera tuilée ; mais, comme Inkscape utilise une région de filtre unique pour la totalité de la chaîne de filtrage, même si cette primitive devait être implémentée, elle n'aurait aucun effet visible.
  
-Ça ne paraît pas très sympa de vous avoir fait perdre votre temps à lire la présentation d'un filtre aussi pauvrement implémentéet d'un autre pas du tout implémenté ; aussi, je finirai cet article par une autre primitive utile de la boîte à outils : Morphologie.+Ça ne paraît pas très sympa de vous avoir fait perdre votre temps à lire la présentation d'un filtre aussi pauvrement implémenté et d'un autre pas du tout implémenté ; aussi, je finirai cet article par une autre primitive utile de la boîte à outils : Morphologie.
  
-En dépit de son joli nom, c'est un filtre très simple : tout ce qu'il fait est de rendre les choses plus épaisses ou plus fines. Et il le fait avec le minimum de chichis : il n'y a qu'une liste déroulante, pour sélectionner « Contracter » (rendre les choses plus fines) ou « Dilater » (les rendre plus épaisses) et une paire des réglettes « Rayon », liées en option, pour ajuster la quantité de finesse ou d'épaisseur appliquée. Regardons ce filtre en action ; dans chaque cas, le premier objet texte est non filtré, et le second est filtré comme indiqué, avec un rayon de 2.5.+En dépit de son joli nom, c'est un filtre très simple : tout ce qu'il fait est de rendre les choses plus épaisses ou plus fines. Et il le fait avec le minimum de chichis : il n'y a qu'une liste déroulante, pour sélectionner « Contracter » (rendre les choses plus fines) ou « Dilater » (les rendre plus épaisses) et une paire de réglettes « Rayon », liées en option, pour ajuster la quantité de finesse ou d'épaisseur appliquée. Regardons ce filtre en action ; dans chaque cas, le premier objet texte est non filtré, et le second est filtré comme indiqué, avec un rayon de 2,5.
  
 **These filters are particularly useful when used with the Composite primitive, often in “In” or “Out” modes. In the following example, I've used a Flood filter to create a translucent white fill, then used a Composite “In” to trim it to the size of my eroded text. A little Gaussian Blur and Offset later, and you've got a filter that gives a 3D appearance to your text. **These filters are particularly useful when used with the Composite primitive, often in “In” or “Out” modes. In the following example, I've used a Flood filter to create a translucent white fill, then used a Composite “In” to trim it to the size of my eroded text. A little Gaussian Blur and Offset later, and you've got a filter that gives a 3D appearance to your text.
Ligne 77: Ligne 77:
 Ces filtres sont particulièrement utiles quand ils sont utilisés avec la primitive Composite, souvent en mode « In » ou « Out ». Dans l'exemple suivant, j'ai utilisé un filtre Remplissage pour créer un remplissage blanc translucide, puis j'ai utilisé une Composite « In » pour l'ajuster à la taille de mon texte contracté. Après un peu de Flou gaussien et d'Offset, vous obtenez un filtre qui donne une apparence 3D à votre texte. Ces filtres sont particulièrement utiles quand ils sont utilisés avec la primitive Composite, souvent en mode « In » ou « Out ». Dans l'exemple suivant, j'ai utilisé un filtre Remplissage pour créer un remplissage blanc translucide, puis j'ai utilisé une Composite « In » pour l'ajuster à la taille de mon texte contracté. Après un peu de Flou gaussien et d'Offset, vous obtenez un filtre qui donne une apparence 3D à votre texte.
  
-« Out » peut bien fonctionner avec la dilatation,  pour creuser le centre de l'image dilatée. Comme exemple simple, considérez une primitive Morphologie que dilate la source, puis une Composite « Out » qui ne garde que les parties de cette image qui dépassent de l'objet source d'origine. Il ne reste que le contour de votre objet, avec un milieu transparent.+« Out » peut bien fonctionner avec la dilatation,  pour creuser le centre de l'image dilatée. Comme exemple simple, considérez une primitive Morphologie que dilate la source, puis une Composite « Out » qui ne garde que les parties de cette image qui dépassent de l'objet source d'origine. Il ne reste que le contour de votre objet, dont l'intérieur est transparent. 
  
-Maintenant, plutôt que d'embosser l'objet source, que se passe-t-il si vous enfoncez une autre version dilatée, de sorte que vous enlevez une petite excroissance au cœur d'un plus grosse dilatation ? Fusionnez  avec l'objet original et vous avez un contour qui entoure l'original, à une distance réglé par la plus petite dilatation, avec une épaisseur égale à la différence entre les dilatations intérieure et extérieure (vous devrez peut-être augmenter la taille de la région du filtre pour éviter que le résultat soit tronqué).+Maintenant, plutôt que d'enfoncer l'objet source, que se passe-t-il si vous enfoncez une autre version dilatée, de sorte que vous enlevez une petite excroissance au cœur d'une plus grosse dilatation ? Fusionnez  avec l'objet original et vous avez un contour qui entoure l'original, à une distance réglé par la plus petite dilatation, avec une épaisseur égale à la différence entre les dilatations intérieure et extérieure (vous devrez peut-être augmenter la taille de la région du filtre pour éviter que le résultat soit tronqué).
  
 **Finally, how about taking the previous idea and stacking it up a little further. You can have several outlines, all at different distances from the original object, then just merge everything together at the end. Things start to get a little complex as you add more outlines, because you're juggling a pair of Morphology primitives and a Composite for each layer of the onion, but, in principle, it's possible to carry on adding as many as you like, so long as you can keep track of them all. **Finally, how about taking the previous idea and stacking it up a little further. You can have several outlines, all at different distances from the original object, then just merge everything together at the end. Things start to get a little complex as you add more outlines, because you're juggling a pair of Morphology primitives and a Composite for each layer of the onion, but, in principle, it's possible to carry on adding as many as you like, so long as you can keep track of them all.
Ligne 86: Ligne 86:
 It's worth remembering that filters are bitmap operations that take place at the rendering stage. Although you can think of the Morphology primitive as thinning or thickening your image, it's not doing so in a vector sense, but rather by just adding or removing pixels in a bitmap version of your object. With that in mind, it also makes sense that you can apply this primitive to bitmap images imported via the Image primitive. This allows you to hide the fine details of an image by eroding them away, or blotting them out through dilation of adjacent areas, without introducing the sort of softness you would expect if you just blurred the images. In either case, Mona ends up looking somewhat worse for the experience!** It's worth remembering that filters are bitmap operations that take place at the rendering stage. Although you can think of the Morphology primitive as thinning or thickening your image, it's not doing so in a vector sense, but rather by just adding or removing pixels in a bitmap version of your object. With that in mind, it also makes sense that you can apply this primitive to bitmap images imported via the Image primitive. This allows you to hide the fine details of an image by eroding them away, or blotting them out through dilation of adjacent areas, without introducing the sort of softness you would expect if you just blurred the images. In either case, Mona ends up looking somewhat worse for the experience!**
  
-Enfin, que se passe-t-il en prenant l'idée précédente et en la complétant un peu plus ? Vous pouvez avoir plusieurs contours, à des distances différentes de l'objet d'origine, que vous fusionnez ensuite tous ensemble pour terminer. Plus vous ajoutez de contours, plus les choses deviennent compliquées car vous jonglez avec une paire de primitives Morphologie et une Composite pour chaque couche de l'oignon ; mais, dans le principe, il est possible d'en rajouter autant que vous voulez, tant que vous ne vous perdez pas en route.+Enfin, que se passe-t-il si vous prenez l'idée précédente et la complétez un peu plus ? Vous pouvez avoir plusieurs contours, à des distances différentes de l'objet d'origine, que vous fusionnez ensemble pour terminer. Plus vous ajoutez de contours, plus les choses deviennent compliquéescar vous jonglez avec une paire de primitives Morphologie et une Composite pour chaque couche de l'oignon ; mais, théoriquement, il est possible d'en rajouter autant que vous voulez, tant que vous ne vous perdez pas en route.
  
 Et que dire de cette version, où j'ai utilisé aussi des primitives Matrice des couleurs en mode Décalage de teinte de façon à attribuer une couleur à chaque contour : Et que dire de cette version, où j'ai utilisé aussi des primitives Matrice des couleurs en mode Décalage de teinte de façon à attribuer une couleur à chaque contour :
  
-Il est bon de se rappeler que les filtres sont des opérations bitmap qui ont lieu pendant la phase de rendu. Bien que vous puissiez penser que la primitive Morphologie rétrécit ou dilate votre image, ce n'est pas réalisé dans un sens vectoriel, mais plutôt en ajoutant ou en retirant des pixels dans une version bitmap de votre objet. En le gardant en tête, il paraît possible d'appliquer la primitive à des images bitmap importées via la primitive Image. Ceci vous permet de cacher les détails précis d'une image en les dégradant un peu, ou en les cachant par une dilatation des zones adjacentes, sans introduire la sorte d'adoucissement que vous attendez en floutant les images. Dans pareil cas, Mona se sort bien mal d'un tel essai !+Il est bon de se rappeler que les filtres sont des opérations bitmap qui ont lieu pendant la phase de rendu. Bien que vous puissiez penser que la primitive Morphologie rétrécit ou dilate votre image, ce n'est pas réalisé dans un sens vectoriel, mais plutôt en ajoutant ou en retirant des pixels dans une version bitmap de votre objet. En gardant cela en tête, il paraît possible d'appliquer la primitive à des images bitmap importées via la primitive Image. Ceci vous permet de cacher les détails précis d'une image en les dégradant un peu, ou en les masquant par une dilatation des zones adjacentes, sans introduire la sorte d'adoucissement que vous attendriez en floutant les images. Dans les deux cas, Mona se sort bien mal d'un tel essai !
  
  
issue112/inkscape.1472661095.txt.gz · Dernière modification : 2016/08/31 18:31 de auntiee