Donnez vie à vos documents numériques !
 

Une lettre = une couleur

abracadabraPDF Forums PDF – Général Une lettre = une couleur

  • Ce sujet est vide.
  • Créateur
    Sujet
  • #45920
    boucledore95
    Participant

    Bonjour,

    Dans une case texte, j’aimerai écrire par exemple V-V-N-D avec le V en vert, le N en orange et le D en rouge et les tirets en couleur bleu. Il n’y aura toujours que ces 3 lettres.
    Est-ce possible avec un javascript ? Je n’ai trouvé aucune aide sur le forum.

    Merci d’avance

    Frédérique

Affichage de 3 réponses de 1 à 3 (sur un total de 3)
  • Auteur
    Réponses
  • #64561
    Merlin
    Maître des clés

    Bonjour.

    Dans les Propriétés du champ de texte, dans l’onglet Options, il y a une coche « Autoriser le format RTF » (Rich Text Format).
    Un fois cette case cochée, après avoir saisi le texte il faut faire CTRL-E (ou CMD-E sur MacOS) pour afficher la barre des Propriétés du texte (couleurs, polices, etc.).
    :Smiley15:

    V-V-N-D avec le V en vert, le N en orange et le D en rouge et les tirets en couleur bleu. Il n’y aura toujours que ces 3 lettres

    :jerisjaune:

    #64562
    boucledore95
    Participant

    MERCI. Je pensais que ce serait tellement plus compliqué que cela :)

    #64563
    bebarth
    Maître des clés

    bonsoir,
    Je viens d’écrire un petit script pour changer automatiquement la couleur des caractères V, N, D et -.
    A mettre en script d’action de champ désactivé !

    Code:
    var leTexte = this.event.target.value;
    var leTexte = leTexte.replace(/V/gi, « ,VERT, »);
    var leTexte = leTexte.replace(/N/gi, « ,ORANGE, »);
    var leTexte = leTexte.replace(/D/gi, « ,ROUGE, »);
    var leTexte = leTexte.replace(/-/gi, « ,BLEU, »);
    var leTexte = leTexte.replace(/,,/gi, « , »);
    var n = leTexte.charAt(0);
    var nn = leTexte.charAt(leTexte.length-1);
    if (n!= », ») {
        var debut = 0;
    } else {
        var debut = 1;
    }
    if (nn!= », ») {
        var fin = 0;
    } else {
        var fin = 1;
    }
    var laChaine = leTexte.substring(debut,leTexte.length-fin);
    var chaine = laChaine.split(« , »);
    var spans = new Array();
    for (var i=0; i    var texte = chaine;
        switch (texte) {
            case « VERT »:
            var txtSpan= »V »;
            var colSpan=color.green;
            break;
            case « ORANGE »:
            var txtSpan= »N »;
            var colSpan=[« CMYK », 0,0.35,0.85,0];
            break;
            case « ROUGE »:
            var txtSpan= »D »;
            var colSpan=color.red;
            break;
            case « BLEU »:
            var txtSpan= »-« ;
            var colSpan=color.blue;
            break;
            default:
            var txtSpan=texte;
            var colSpan=color.black;
        }
        spans = new Object();
        spans.text = txtSpan;
        spans.textColor = colSpan;
    }
    this.event.target.richValue = spans;

    @+
    :bonjour:

Affichage de 3 réponses de 1 à 3 (sur un total de 3)
  • Vous devez être connecté pour répondre à ce sujet.