Shape-rendering - Propriété CSS
Résumé des caractéristiques de la propriété shape-rendering
auto
| optimizeSpeed
| crispEdges
| geometricPrecision
auto
shape-rendering
passe d'une valeur à l'autre sans transition.Schéma syntaxique de shape-rendering
.
Description de la propriété shape-rendering
.
shape-rendering
définit si une forme dessinée en SVG doit être la plus lissée possible, ou, au contraire, nécessiter le moins de calculs.
Autrement dit shape-rendering
permet de choisir entre la précision du tracé ou la vitesse de calcul.
Les formes reconnues par SVG sont :
- Les lignes simples ou multiples : balises line et polyline.
- Les cercles et ellipses : balises circle et ellipse.
- Les rectangles et autres polygones : balises rect et polygon.
- Les tracés par chemin : balise path.
Remarque de syntaxe : les différentes valeurs acceptées par shape-rendering
adoptent le mode d'écriture camel-case
couramment utilisé en SVG
,
et non pas le mode d'écriture en kebab-case
plus courant en CSS.
Pour définir comment doit être tracés les textes, une propriété équivalente existe : text-rendering
.
Valeurs pour shape-rendering
.
- shape-rendering: auto;
Valeur par défaut.
auto
demande au navigateur de faire un compromis entre une tracé lissé et un temps de calcul réduit.L'exemple ci-dessous (et tous les suivants) présent une droite très légèrement inclinée, et un arc de cercle très peu courbé. C'est sur ce genre de formes que l'effet de la propriété
shape-rendering
est le plus visible.
shape-rendering: normal;
- shape-rendering: optimizeSpeed;
optimizeSpeed
demande au navigateur de donner la priorité à la vitesse de rendu, au détriment du lissage des tracés et de la précision géométrique. Cette valeur provoque généralement la désactivation de l'anticrénelage de forme.
shape-rendering: optimizeSpeed;
- shape-rendering: crispEdges;
Cette valeur donne la priorité à la netteté des contours. Cela s'obtient avec les compromis suivants :
- Désactivation de l'anti-crénelage, ce dernier ajoutant des pixels intermédiaires pour lisser les tracés.
- Recalage des tracés sur des valeurs de pixels entières.
shape-rendering: crispEdges;
- shape-rendering: geometricPrecision;
La valeur
geometricPrecision
donne la priorité à la précision des tracés, au détriment du temps de calcul et de la netteté des traits.
shape-rendering: geometricPrecision;
Valeurs globales
(communes à toutes les propriétés)
shape-rendering: initial (auto
)
shape-rendering: inherit
shape-rendering: revert
shape-rendering: revertLayer
shape-rendering: unset
Consultez les pages suivantes pour plus de détails : initial
, inherit
, revert
, revert-layer
, unset
.
Animation de la propriété shape-rendering
.
L'animation de la propriété shape-rendering
est possible de façon discrète (passage brutal d'une valeur à une autre), mais l'effet visuel est insignifiant.
Exemple interactif avec la propriété shape-rendering
.
Les trois lignes ci-dessous permettent de visualiser l'effet de la propriété shape-rendering
. Les deux premières sont des lignes ondulées, avec des épaisseurs
respectivement de 1 et 3 pixels. La troisième est une ligne horizontale positionnée entre deux pixels : y="50.5"
.
Prise en charge par les navigateurs (compatibilité).
shape-rendering
Navigateurs sur ordinateurs :
Navigateurs sur mobiles :
Navigateurs obsolètes ou marginaux :

Internet Explorer

UC Browser pour Androïd

Opéra

Samsung Internet

Opéra Mobile

QQ Browser

Baidu Browser

Safari sur IOS

Safari

Firefox

Edge

Chrome

Androïd Brower

Chrome pour Androïd

Firefox pour Androïd

KaiOS Browser

Opéra mini
Historique de la propriété shape-rendering
.
-
CSS 1 - Spécification concernant les feuilles de styles en cascade - Version 1
Première présentation de cette propriétéshape-rendering
.17 Novembre 1995Document de travail.12 Novembre 1996Proposé à la recommandation.17 Décembre 1996Recommandation.13 Septembre 2018Ancienne spécification, déclarée obsolète. -
SVG (Scalable Vector Graphics)
Ajout de la valeurgeometricPrecision
à la propriétéshape-rendering
.28 Août 2012Document de travail.15 Septembre 2016Candidat à la recommandation.
Voir aussi, à propos du SVG.
Le dessin des formes en SVG, est décrit par le module Scalable Vector Graphics (SVG) . On retrouve dans ce module la propriété shape-rendering
,
ainsi que les descriptions suivantes :