L'opacité et le mélange des couleurs
Déclarer un réglage de peinture — semi-transparence, mode de mélange — et l'appliquer ensuite aux formes par son nom.
Écrit au premier niveau d'une requête, sous
"graphics_states"
En mots de tous les jours
Écrit pour tout le monde. Il dit ce que cela pose sur une feuille de papier, et ne vous demande rien de plus.
Un surligneur laisse voir le texte en dessous : la couleur ne cache pas, elle se mélange. On peut faire pareil ici. On règle une fois « peins à moitié transparent », ou « mélange en assombrissant », on donne un nom à ce réglage, et on l'applique aux formes qu'on veut. Seize façons de mélanger existent, celles qu'utilisent les logiciels de dessin : multiplier, éclaircir, différencier.
Pour un développeur
Écrit pour celui qui écrit le programme appelant : le modèle, les unités, et les réglages qui portent le poids.
graphics_states déclare les états graphiques que le document définit pour lui-même, chacun sous le nom par lequel une forme dessinée l'applique. Un état est écrit une seule fois quel que soit le nombre de formes qui l'appliquent, et il dure le temps de la forme qui l'a nommé, pas plus. Seul ce qu'il nomme est écrit : un état qui nomme une opacité et rien d'autre laisse tout le reste en l'état.
Chaque clé, avec son défaut
La référence : quelles clés sont obligatoires, lesquelles sont facultatives, ce que vaut chacune par défaut et quelles combinaisons le serveur décline.
-
graphics_states— tableau, facultatif, vide par défaut. -
graphics_states[].name— chaîne, obligatoire. Le nom par lequel les éléments appliquent cet état. -
graphics_states[].state— objet, obligatoire. -
state.fill_alpha— nombre de 0 à 1, facultatif. L'opacité de chaque remplissage : 0 laisse tout passer, 1 couvre. -
state.stroke_alpha— nombre de 0 à 1, facultatif. L'opacité de chaque trait. Le remplissage et le trait se disent séparément : une forme à moitié transparente dehors et pleine dedans nomme les deux. -
state.blend_mode— chaîne, facultative. Seize valeurs :normal,multiply,screen,overlay,darken,lighten,color_dodge,color_burn,hard_light,soft_light,difference,exclusion,hue,saturation,color,luminosity. Les douze premiers mélangent chaque composante à part, les quatre derniers prennent une couleur entière à la fois. -
Un élément
pathourectapplique un état par sa clégraphics_state.
Une requête entière qui le dessine
Envoyez ceci tel quel et un PDF revient. Rien n'en a été retiré.
{
"graphics_states": [{ "name": "half", "state": { "fill_alpha": 0.5 } }],
"items": [
{
"type": "rect",
"rect": { "llx": 60, "lly": 700, "urx": 200, "ury": 790 },
"fill": [0.85, 0.15, 0.15]
},
{
"type": "rect",
"rect": { "llx": 140, "lly": 660, "urx": 280, "ury": 750 },
"fill": [0.15, 0.3, 0.85],
"graphics_state": "half"
}
]
}
La couleur et la façon dont elle est rendue
L'appareil pour lequel les couleurs sont dites Déclarer une couleur au-delà du rouge-vert-bleu Une couleur qui glisse vers une autre L'espace dans lequel la page mélange ses couleurs
Où aller ensuite
Chaque clé d'une requête, en une page Les trente-deux autres réglages d'une requête
Glossaire
- état graphique
- L'ensemble des réglages en vigueur pendant qu'une chose est dessinée : sa transparence, la façon dont deux couleurs se mélangent là où elles se recouvrent, la forme du bout d'un trait. Une forme en nomme un et il ne vaut que pour elle.