Donnez vie à vos documents numériques !
 

Couleur PDF en fonction d’un champs text

abracadabraPDF Forums PDF – Général Couleur PDF en fonction d’un champs text

  • Ce sujet est vide.
  • Créateur
    Sujet
  • #46324
    elo3434
    Membre

    Bonjour à tous,

    Je me permets de vous contacter pour un problème que je rencontre sur un fichier PDF.
    voici mon souci : dans mon fichier PDF j’ai un tableau qui correspond à une réglette. Grâce au champ remplissage, je peux obtenir mon niveau de risque (Très prudent, prudent, équilibré, offensif et très offensif.)
    Je veux pouvoir mettre en relation ces 5 niveaux, (qui se trouvent être transformés en un champ texte juste au dessus) et que cela puisse se répercuter sur une réglette avec différentes couleurs qui se colorie en fonction du niveau de risque qui est inscrit. (Pas de liste déroulante car c’est un document qui grâce a des balises et un JSON se complète)
    Exemple : si mon niveau de risque est très prudent > la case Très prudent se met en vert
    Si mon niveau de risque est Prudent, la case Prudent se met en vert clair….
    Comment puis-je réaliser cette étape sur mon PDF ?
    Très Prudent
    Prudent
    Si mon niveau de risque est Très prudent, je souhaite que la case Très prudent soit coloriée d’une certaine couleur, sans que les autres le soient.
    Merci d’avance pour votre réponse.
    Bien à vous
    Élodie

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

    Bonjour et bienvenue

    A priori c’est assez facile, mais pour bien comprendre et ne pas se parler à l’aveuglette il faudrait que tu partages ton fichier, ou un exemple avec juste les champs concernés.

    #67583
    elo3434
    Membre

    Bonjour,

    Merci votre réponse
    Ci-joint l’exemple que j’ai raccourci car le document fait 10 pages..
    J’espère que cela ne posera pas problème étant donné que chaque partie fait partie d’une autre feuille, mais document confidentiel.

    Bien à vous
    Elo

    #67584
    Merlin
    Maître des clés

    Je ne comprend pas pourquoi tu n’utilises pas des listes déroulantes (dropdown) ou bien des menus popup JavaScript, ce serait beaucoup plus simple.
    L »intérêt c’est que ça permet de limiter la saisie, parce-qu’avec des champs texte l’utilisateur peut saisir n’importe quoi, et/ou faire des fautes.
    Ce qui complique la reconnaissance de la saisie par JavaScript.
    Parce-que :
    Très élevée, très élevée, Tres elevée, Tres elevèe, etc. : ce n’est pas la même valeur.

    Par ailleurs je n’ai pas trouvé l’indication de la correspondance des couleurs dans ton document.

    PS : les banquiers et les assureurs sont très à cheval sur le « confidentiel », alors que par nature ils ont les mêmes besoins et produisent donc des documents très similaires. J’en ai déjà fait plusieurs des comme ça.
    :Smiley08:

    #67585
    elo3434
    Membre

    Merci pour la réponse

    Je ne peux pas faire de liste déroulante car dans le document, les emplacement bleu correspondant à un champs text sont répercutés en fonction de ce que récupère le JSON qui permet donc de changer le nom du score en fonction d’un résultat :
    Par exemple si le score à prendre des risque est Moyen > cela correspond à un score de 25 à 50. Le JSON répercute cette information dans le champ bleu et indique que le profil est moyen, si le score est en 0 et 20 > j’aurai très faible ….

    ces informations doivent permettre de colorier les réglettes en fonction du champs text généré

    aucune possibilité d’avoir des erreurs car pas possible de saisir.

    les couleurs devront varier entre le bleu et le rouge :
    bleu = très faible
    vert = faible
    Jaune = moyen
    orange = Elevée
    rouge= très élevée

    merci de votre aide

    PS je ne suis pas assureur ou banquier ;) juste assistante technique et commerciale dans une société de DEV :)

    #67586
    Merlin
    Maître des clés

    Je ne peux pas faire de liste déroulante car dans le document, les emplacement bleu correspondant à un champs text sont répercutés en fonction de ce que récupère le JSON qui permet donc de changer le nom du score en fonction d’un résultat :
    Par exemple…

    Je ne comprend pas ce que tu appelles un « JSON ».  Ce sont les scripts JavaScript ?
    Quoi qu’il en soit je ne vois pas pourquoi il serait plus difficile de détecter une valeur dans une liste déroulante que dans un champ text…  :doute:
    Quelque soit cette difficulté, il faut savoir que les popup menus JavaScript se placent dans des champs text, donc ce serait juste un truc à ajouter, sans devoir modifier d’éventuels scripts.

    Télécharge ce document pour bien voir la différence, le popup menu JavaScript apparait sur le bouton gris, la liste déroulante est juste en-dessous.
    Dans cet exemple on utilise un bouton mais le menu popup JavaScript pourrait tout aussi bien être utilisé sur un champ texte (si on l’utilise pour récupérer la valeur sélectionnée par l’utilisateur).
    https://www.abracadabrapdf.net/pdf-de-demo/formulaires/champs-formulaire/

    aucune possibilité d’avoir des erreurs car pas possible de saisir

    Oui, c’est l’idée que je propose.

    je ne suis pas assureur ou banquier

    Moi non plus, mais ton exemple est typique des formulaires de « consentement éclairé » qu’ils font remplir et signer pour les placements financiers.
    :Smiley03:

    #67587
    bebarth
    Maître des clés

    bonjour,

    Je ne comprend pas ce que tu appelles un « JSON ».  Ce sont les scripts JavaScript ?

    https://www.w3schools.com/jsref/jsref_obj_json.asp
    et
    https://www.w3schools.com/js/js_json_intro.asp
    @+
    :bonjour:

    #67588
    Merlin
    Maître des clés

    Oui, j’avais regardé ces pages mais ça ne m’aide pas beaucoup car je n’en comprend pas l’intérêt dans les formulaires PDF.  :Euuuh:
    Mais c’est bien de savoir que ça y fonctionne.  :Smiley01:

    #67589
    bebarth
    Maître des clés

    Je n’ai jamais utilisé ces scripts.J’ai juste lu vite fait quand je suis tombé sur ces pages.
    @+
    :bonjour:

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