abracadabraPDF › Forums › PDF – Général › Afficher ou masquer un bloc dans Acrobat
- Ce sujet est vide.
-
CréateurSujet
-
29 octobre 2019 à 20:25 #46166max68Membre
Bonjour à tous
Savez-vous comment faire pour afficher ou masquer un bloc contenant du texte en cliquant sur un bouton.
L’idéal pour moi serait de générer cette fonction via Indesign mais je ne sais pas si c’est possible.
Je crois que dans Acrobat c’est possible à l’aide des calques mais je n’en suis pas certain.
Merci de votre aide !
-
CréateurSujet
-
AuteurRéponses
-
29 octobre 2019 à 23:14 #66396bebarthMaître des clés
bonjour,
…avec un petit script :Code:if (this.getField(“nomChamp”).display!=display.hidden) {
this.getField(“nomChamp”).display=display.hidden;
} else {
this.getField(“nomChamp”).display=display.visible;
}Regarde l’exemple !
@+
:bonjour:30 octobre 2019 à 07:49 #66397max68MembreMerci Bebarth c’est super.
Mais ici tu sélectionnes le texte (ce qui m’intéresse aussi). Je cherche à obtenir un PDF au format A4 qui aurait au moins un bouton. En cliquant dessus on fait apparaître un bloc qui sera mis en forme spécifiquement dans Indesign et qui contiendra du texte. Il faut que ce texte puisse être sélectionnable. J’ai vu dans acrobat pro, dans les options de bouton du formulaire qu’il y avait une action : définir la visibilité d’un calque. Je pense que ce peut être une solution sauf que je n’arrive pas à mettre en application cette fonction. À moins que vous ayez une autre idée ?Ajout : après une recherche j’ai vu ici http://abracadabrapdf.net/forum/index.php/topic,2995.msg16964.html#msg16964 comment faire sauf que je ne comprends pas comment “cibler” un calque.
Dans les options on sélectionne en effet “Définir la visibilité du calque” mais on ne peut a priori pas (j’ai pas trouvé) dire au bouton quel calque il doit afficher.
Si on a 3 boutons sensés afficher chacun un calque différent, comment fait-on si on ne peut pas dire à chaque bouton quel calque il doit afficher ?
Sais pas si je suis clair, en tout cas merci pour votre aide !30 octobre 2019 à 10:18 #66398bebarthMaître des clésbonjour,
Voici un script pour afficher/masquer un calque :Code:var ocgArray=this.getOCGs();
for (var i=0; iif (ocgArray.name==”nomDuCalque”) {
ocgArray.state=!ocgArray.state;
}
}@+
:bonjour:30 octobre 2019 à 10:56 #66399max68MembreMerci bebarth pour ton script ! c’est super cool.
Tu peux me dire comment le mettre en œuvre ? je n’ai jamais fais ça.
J’aimerais aussi faire cette action sans script en utilisant les outils Lien et Cible mais j’ai beau me creuser la tête je ne vois nul part dans la doc acrobat comment lier le bloc lien avec le calque que je cible.Voici la doc :
Association de la visibilité d’un calque à une destination de lien
Dans le panneau de visualisation, définissez les propriétés du calque associées à la destination.
Choisissez Affichage > Afficher/Masquer > Volets du navigateur > Destinations.
Le panneau Destinations s’affiche sous forme de fenêtre flottante. Vous pouvez l’ancrer aux autres panneaux en le faisant glisser vers le navigateur. Si le panneau est réduit, cliquez sur le bouton Destinations pour le développer.
Choisissez Nouvelle destination dans le menu Options , puis attribuez un nom à la destination.Activez l’outil Lien , puis tracez le lien dans le panneau de visualisation. (Comme le contenu est ajouté à tous les calques, cela n’a pas d’importance si vous semblez créer le lien sur le calque cible. Le lien fonctionne indépendamment du calque sur lequel vous le créez.)
Dans la boîte de dialogue Créer un lien, sélectionnez Lien personnalisé et cliquez sur Suivant.
Dans le panneau Aspect de la boîte de dialogue Propriétés du lien, définissez l’aspect du lien.Cliquez sur l’onglet Actions dans la boîte de dialogue Propriétés du lien, choisissez Définir la visibilité du calque, puis cliquez sur Ajouter.
Fermez les boîtes de dialogue.
Vous pouvez tester le lien. Pour ce faire, modifiez les paramètres de calque, sélectionnez l’outil Main et activez le lien.On nous précise ici de choisir “Définir la visibilité du calque” mais à comment savoir quel calque doit être activé ?
Je ne pige rien à leurs explications :mur: :mur:30 octobre 2019 à 11:10 #66400max68MembreVoici un exemple de ce que je voudrais (les calques à afficher sont ici masqués dès le départ : voir la palette des calques)
30 octobre 2019 à 11:29 #66401MerlinMaître des clésBonjour
La documentation explique la méthode laborieuse et peu pratique, dont l’interface date des années 80, qui est intégrée à Acrobat Pro. Le mieux c’est de l’oublier.
:geek:J’ai placé ce script dans les 3 boutons, en adaptant à chaque fois le numéro du calque concerné (exemple joint).
Code:var ocgs = this.getOCGs();
for (var i=0; iocgs.state = false;
if (ocgs.name == “Base”) {ocgs.state = true;}
if (ocgs.name == “FICHE 1”) {ocgs.state = true;}
}30 octobre 2019 à 17:50 #66402max68MembreOuha merci Merlin c’est exactement ce que je veux faire.
Comme je l’ai dit plus haut, ici il faut du javascript.
C’est certes la voie royale mais je ne comprends rien à ce langage et je suis dépendant de la (très) bonne volonté de personnes disponibles comme toi, bebarth et bien d’autre.
c’est pourquoi je m’efforce d’utiliser les outils fournis par Adobe.
Peut-être auriez-vous une solution en passant par les outils interactifs d’indesign, c’est lui que j’utilise la plupart du temps ?
Encore merci !31 octobre 2019 à 10:27 #66403MerlinMaître des clésNon, InDesign ne permet pas d’afficher/masquer des calques, de mémoire il ne permet pas non plus d’afficher/masquer un champ. Ses possibilités “PDF interactif” sont très limitées.
Le problème de la méthode “pousse-souris” d’Acrobat c’est qu’afficher un calque c’est simple, mais en général ça signifie qu’il faut en masquer d’autres. Et c’est là que ça devient laborieux.
31 octobre 2019 à 17:39 #66404bebarthMaître des clésbonjour,
Voici une version sans JavaScript. On joue juste sur la visibilité des calques en action des boutons.
J’ai rajouté un bouton pour ne voir aucune fiche.
Par contre il n’y a pas la possibilité d’en voir plusieurs à la fois (dans cet exemple).
@+
:bonjour:1 novembre 2019 à 10:36 #66405max68MembreMerci bebarth !
C’est cool, ça fonctionne bien. A priori tu as créer le look avec ID et l’interactivité avec Acrobat ou tout avec ID ?
Sinon dans AC comment fais-tu pour dire au bouton “afficher fiche 2” de rendre visible le calque sur lequel se trouve la fiche 2.
En regardant tes options de boutons rien ne l’indique. As-tu modifier la nature des blocs fiches ?
C’est ce lien entre le bouton et la cible que je ne comprends pas du tout. L’action du bouton est réglée sur “définir la visibilité du calque” oui, mais de quel calque !!!! :doute: :mur:1 novembre 2019 à 11:51 #66406bebarthMaître des clésbonjour,
Je n’ai rien fait avec InDesign !
La visibilité des calques est définie dans l’état du moment où l’on crée l’action.
Par exemple, si tu crées l’action alors que les calques des fiches 1 et 2 sont visibles, l’action rendra toujours les calques de ces fiches visibles…
@+
:bonjour:2 novembre 2019 à 14:41 #66407MerlinMaître des cléscomment fais-tu pour dire au bouton “afficher fiche 2” de rendre visible le calque sur lequel se trouve la fiche 2.
Il faut d’abord définir l’état “cible” des calques, c’est à dire leur visibilité finale, avant d’utiliser l’action Afficher/masquer un calque.
-
AuteurRéponses
- Vous devez être connecté pour répondre à ce sujet.