IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Comparer ou interdire une nuance de code couleur blanc


Sujet :

Langage PHP

  1. #1
    Membre éclairé
    Avatar de clavier12AZQSWX
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Avril 2009
    Messages
    1 414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 414
    Points : 871
    Points
    871
    Par défaut Comparer ou interdire une nuance de code couleur blanc
    bonjour,

    j'ai une variable qui contient un code couleur en HTML pour du texte à afficher (par exemple #e22d2d ) sur du fond blanc.
    L'utilisateur choisit sa couleur dans un composant dhtml côté client dont je n'ai pas la main et il peut choisir blanc, ce que je veux lui interdire.
    côté serveur, je peux remplacer toutes les valeurs #ffffff par #000000 mais si l'utilisateur choisit #efffff , je détecte pas ce cas alors que c'est du blanc pour l'oeil humain !

    comment gérer ça ? y-a-t-il une variable ou constante php qui indique "nuance_de_blanc" et donc je pourrais me servir ?
    par exemple :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    if ($couleur<nuance_de_blanc) echo "idiot tu vas publier du texte blanc sur du blanc";

    ou peut-être existe-t-il une différence entre couleur texte et couleur fond à respecter ?
    par exemple :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    if ($couleur_texte-$couleur_fond<???) echo "idiot tu vas publier du texte presque invisible sur du blanc";

  2. #2
    Membre expert
    Avatar de cavo789
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2004
    Messages
    1 780
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 780
    Points : 3 033
    Points
    3 033
    Christophe (cavo789)
    Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be

  3. #3
    Membre éclairé
    Avatar de clavier12AZQSWX
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Avril 2009
    Messages
    1 414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 414
    Points : 871
    Points
    871
    Par défaut
    ok merci.
    donc il faut chercher au niveau de la différence de contraste.

    j'ai également trouvé ça :

    https://www.splitbrain.org/blog/2008...trast_with_php

  4. #4
    Membre expert
    Avatar de cavo789
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2004
    Messages
    1 780
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 780
    Points : 3 033
    Points
    3 033
    Par défaut
    Un calcul de contraste me paraît le meilleur angle. Si demain ton fond est gris foncé, ton exigence de couleur sera différente. Un calcul de contraste est donc la meilleure approche selon moi.
    Christophe (cavo789)
    Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be

  5. #5
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 193
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 193
    Points : 8 403
    Points
    8 403
    Billets dans le blog
    17
    Par défaut
    Autre approche, avec une représentation HSL de la couleur on peut très facilement retrouver les couleurs claires => Celles dont la luminance tend vers 100%, et ce quelque soit leur teinte
    Reste à convertir le RGB en HSL et à déterminer un seuil de luminance max.
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  6. #6
    Membre éclairé
    Avatar de clavier12AZQSWX
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Avril 2009
    Messages
    1 414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 414
    Points : 871
    Points
    871
    Par défaut
    merci pour tous vos détails.
    dans mon cas c'est juste une utilisation basique (une étiquette tag avec un titre d'une couleur et un fond d'une autre couleur).
    Quand je vois que même google ne gère pas cela au moment du choix des couleurs des catégories, je me dis que je vais faire confiance à l'OS ou au navigateur qui doit gérer ça sans-doute automatiquement dans le package "accessibilité/déficiance visuel" ou le mode nuit/jour.
    ça ne m'étonnerait pas qu'il y ait un override des couleurs quand les utilisateurs concernés actives ces fonctionnalités.

  7. #7
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 829
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 829
    Points : 15 259
    Points
    15 259
    Par défaut
    Citation Envoyé par clavier12AZQSWX Voir le message
    dans mon cas c'est juste une utilisation basique (une étiquette tag avec un titre d'une couleur et un fond d'une autre couleur).
    Quand je vois que même google ne gère pas cela au moment du choix des couleurs des catégories, je me dis que je vais faire confiance à l'OS ou au navigateur qui doit gérer ça sans doute automatiquement dans le package "accessibilité/déficience visuelle" ou le mode nuit/jour.
    ça ne m'étonnerait pas qu'il y ait un override des couleurs quand les utilisateurs concernés activent ces fonctionnalités.
    Tiens, on en a déjà causé ici il y a 6 ans environ, mais pas en php, directement dans le traitement d'images, et il y en a 7 pages !
    Bon courage et bonne lecture, tu verras que ce n'est pas aussi simple qu'on l'imagine...
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  8. #8
    Membre éclairé
    Homme Profil pro
    Webdesigner
    Inscrit en
    Juin 2014
    Messages
    424
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Hautes Pyrénées (Midi Pyrénées)

    Informations professionnelles :
    Activité : Webdesigner
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juin 2014
    Messages : 424
    Points : 849
    Points
    849
    Par défaut
    Une façon de faire :
    (on définie une densité minimum - $tolerance - et on vérifie que l'ensemble des canaux ne soit pas trop "clair")
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $couleur = '#ded6e9'
    $tolerance = 50;
    $accept = 255 - $tolerance;
    echo "<p>$accept</p>";
    $e1 = hexdec(substr($entree,1,2));
    $e2 = hexdec(substr($entree,3,2));
    $e3 = hexdec(substr($entree,5,2));
    $erreur = false;
    if($e1 > $accept and  $e2 > $accept and $e3 > $accept)
        $erreur = '<p>Couleur trop proche du blanc.</p>';
    if( ! $erreur) { // on peut continuer) }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [QST] Faire une boite fond noir, couleur blanc
    Par hannibal.76 dans le forum Débuter
    Réponses: 12
    Dernier message: 19/05/2010, 15h01
  2. Récupérer le code couleur de chaque pixel d'une image
    Par darkwall_37 dans le forum Débuter
    Réponses: 4
    Dernier message: 18/05/2010, 23h14
  3. Codes couleur à aller chercher dans une cellule
    Par vandewinkel dans le forum Excel
    Réponses: 6
    Dernier message: 29/01/2010, 14h17
  4. Savoir le code couleur de la valeur dans une cellule.
    Par Benjycool dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 19/01/2009, 13h36
  5. [lstlisting] Mettre une ligne de code en couleur
    Par elekis dans le forum Mise en forme
    Réponses: 1
    Dernier message: 31/07/2007, 14h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo