Module:Color contrast/Documentation

Aller à la navigation Aller à la recherche

La documentation pour ce module peut être créée à Module:Color contrast/Documentation/doc

Erreur de script : Erreur Lua à la ligne 1 : unexpected symbol near '=='.

== Utilisation ==
Ce module fournit quatre fonctions pour calculer le contraste de couleurs entre elles ou par rapport à un fond noir.

=== Fonctions exportables ===
Lorsque la fonction prend en argument, elle doit être appelée depuis un modèle. Sinon, elle doit être appelée depuis un module.

* <code>lum(frame)</code> – Prend en argument un code (hexadécimal, littéral… ) de couleur et retourne son contraste avec le noir.
* <code>_ratio(args)</code> et <code>ratio(frame)</code> où args = { couleur1, couleur2, error="code à renvoyer si erreur" } – renvoie le contraste entre deux couleurs (nombre entre 0 et 1).
* <code>_greatercontrast(args)</code> et <code>greatercontrast(frame)</code> où args = { couleur_ref, couleur1, couleur2, bias=biais, css=false } – compare le contraste de deux couleurs par rapport à une couleur de référence et retourne celle qui a le meilleur contraste.
* <code>_styleratio(args)</code> et <code>styleratio(frame)</code> où args = { chaîne css, couleur fond par défaut, couleur texte par défaut } – Calcule le contraste entre la couleur du texte et celle du fond dans une chaîne de caractères css.

=== Modules externes et autres éléments dont ce module a besoin pour fonctionner ===
* <code>[[mw:Extension:Scribunto/Lua reference manual/fr#mw.loadData|mw.loadData]]</code> – Charge efficacement un tableau lua contenu dans un autre module ;
* <code>[[mw:Extension:Scribunto/Lua reference manual/fr#mw.text.unstripNoWiki|mw.text.unstripNoWiki]]</code> – Remplace les [[mw:strip marker|strip markers]] <nowiki><nowiki></nowiki> par la chaine d'origine ;
* <code>[[mw:Extension:Scribunto/Lua reference manual/fr#mw.ustring.match|mw.ustring.match]]</code> – Cherche la première correspondance d'un motif dans une chaine de caractères ;
* <code>[[mw:Extension:Scribunto/Lua reference manual/fr#mw.text.split|mw.text.split]]</code> – Découpe une chaine de caractères en sous-chaines et retourne le résultat sous la forme d'un tableau ;
* <code>[[mw:Extension:Scribunto/Lua reference manual/fr#mw.ustring.gsub|mw.ustring.gsub]]</code> – Remplace toutes les occurrences d'un motif dans une chaîne de caractères par une chaîne de remplacement ;

* <code>[[Module:Color contrast/colors]]</code> – Sous-module gérant les couleurs définies par leur nom et pas un code hexadécimal.

=== Modules lua utilisant ce module ===
* [[Module:Overlay]] (utilise <code>_greatercontrast</code>)
* [[Module:Adjacent stations]] (utilise <code>_greatercontrast</code> et <code>_ratio</code>)
* [[Module:Routemap]] (utilise <code>_greatercontrast</code>)

=== Modèles appelant directement ce module ===
* [[Modèle:Infobox Personnalité des sciences humaines et sociales]] et [[Modèle:Charte SHS]] (utilisent <code>greatercontrast</code>)

== Exemples ==
=== Appel depuis un modèle ===
lum :

<code><nowiki>{{#invoke:Color contrast|lum|#4444FF}}</nowiki></code> donne : {{#invoke:Color contrast|lum|#4444FF}}

<code><nowiki>{{#invoke:Color contrast|lum|red}}</nowiki></code> donne : {{#invoke:Color contrast|lum|red}}

ratio :
<code><nowiki>{{#invoke:Color contrast|ratio|red|blue|error=?}}</nowiki></code> donne : {{#invoke:Color contrast|ratio|red|blue|error=?}}

greatercontrast :
<code><nowiki>{{#invoke:Color contrast|greatercontrast|FFF|green|000}}</nowiki></code> donne : {{#invoke:Color contrast|greatercontrast|FFF|green|000}}

styleratio :
<code><nowiki>{{#invoke:Color contrast|styleratio|text-align:center;background-color:#FFF;color:#000|white|#202122}}</nowiki></code> donne : {{#invoke:Color contrast|styleratio|text-align:center;background-color:#FFF;color:#000|white|#202122}}

=== Appel depuis un module ===
<syntaxhighlight lang="lua">
local styleratio = require('Module:Color contrast')._styleratio

args = { "text-align:center;background-color:#FFF;color:#000", "white", "#202122" }

return styleratio(args)
</syntaxhighlight>

{{Projet|Scribunto}}<includeonly>
[[Catégorie:Module appelé directement par un modèle]]
[[Catégorie:Module appelé par un autre module]]
</includeonly>