Donnez vie à vos documents numériques !
 

Afficher/Masquer une deuxième page d’un PDF. – RÉPONDU

abracadabraPDF Forums PDF – Général Afficher/Masquer une deuxième page d’un PDF. – RÉPONDU

  • Ce sujet est vide.
  • Créateur
    Sujet
  • #44307
    KALO
    Membre

    Bonsoir le forum,

    Pour ce nouveau problème, je voudrais savoir s’il est possible, par une case à cocher d’afficher ou masquer la deuxième page d’un PDF ?

    J’ai dans mon fichier ci-dessous un tableau destiné à être rempli et imprimé.

    Initialement, l’utilisateur ne verra qu’une seule page à l’écran et si les lignes du tableau ne suffisent pas, il pourra avec la case à cocher afficher la 2ème page et continuer sa saisie sur la page 2 sur 2)

    La 2ème difficulté, c’est lorsque le document est imprimé, je souhaiterais que les numéros de pages s’adaptent selon qu’il y a 1 page ou 2 pages d’utilisées ou d’imprimées…(“page 1 sur 1” si une seule page du tableau est remplie sinon “page 1 sur 2” et “page 2 sur 2” si les 2 pages sont utilisées ou imprimées.)

    N’ayant pas d’idée pour réaliser ce genre de résultat; j’ai pensé à une case à cocher.

    Est-ce que cela est-il réalisable sans trop de codes, sinon y a-t-il beaucoup plus simple ?

    Merci d’avance pour votre aide.

    Cordialement

    [attachment deleted by admin]

Affichage de 22 réponses de 1 à 22 (sur un total de 22)
  • Auteur
    Réponses
  • #53796
    alex
    Participant

    Ci-joint une solution assez rustique à base de masque (un champ texte qui masque ou non la page 2)
    Si la case n’est pas cochée, le tableau de la page 2 est invisible, les pieds de page sont adaptés et l’impression limitée à la première page.
    Si la case est cochée, le tableau de la page 2 est visible, les pieds de page sont adaptés et l’impression comprend les deux pages.
    On peut aussi utiliser un calque pour masquer la page 2.
    On peut aussi interdire de passer sur la page 2 tant que la case n’est pas cochée.
    Pourquoi ne pas afficher/Masquer la page 2?
    Avec AcroForm sous Acrobat il n’est plus possible depuis la version 7 à ma connaissance de masquer ou afficher une page (template), pour ça il faut passer en xfa sous Adobe LiveCycle Designer, ce que je ne conseille pas.

    [attachment deleted by admin]

    #53797
    Merlin
    Maître des clés

    Avec AcroForm sous Acrobat il n’est plus possible depuis la version 7 à ma connaissance de masquer ou afficher une page (template), pour ça il faut passer en xfa sous Adobe LiveCycle Designer, ce que je ne conseille pas.[/color]

    Alex : c’est à mon sens la 2e nouveauté importante d’Adobe Reader XI après la possibilité d’enregistrer n’importe quel PDF, activé ou non : c’est la possibilité d’utiliser la fonction spawnPageFromTemplate avec Reader !!!
    Voir : http://abracadabrapdf.net/articles.php?lng=fr&pg=1019

    C’est d’ailleurs ce qui me fait penser que LC Designer commence à sentir le sapin…

    :extra:

    #53798
    alex
    Participant

    C’est juste Merlin, je viens de voir ça ! Un truc comme ça devrait alors marcher pour transformer toutes les pages d’un document sauf la première en templates:
    numNewTemplates=this.numPages;
    for ( var i = 0; i < numNewTemplates; i++)
    {
    var t = this.createTemplate({cName:”myTemplate”+i, nPage:1 });
    t.hidden = true;
    }

    #53799
    alex
    Participant

    Résultat des courses sous Acrobat X et XI (script au niveau document):
    NotAllowedError: Les paramètres de protection interdisent l’accès à cette propriété ou à cette méthode.
    Doc.createTemplate:4:Field Templates:Mouse Up
    Il faut sans doute créer ces templates en contexte privilégié. Ensuite on verra si on peut les manipuler au niveau document…
    Je vois ça et je reviens vers vous.
    Bon week-end.

    #53800
    Merlin
    Maître des clés

    As tu essayé le PDF proposé en lien dans l’article sur Reader XI ?
    ==> http://abracadabrapdf.net/file/ReaderXI_trombinoscope_demo.pdf

    Ce PDF utilise les Templates ainsi que l’importation d’image dans un bouton.

    :Smiley01:

    #53801
    KALO
    Membre

    Bonjour le forum, Merlin, Alex,

    @Alex, merci beaucoup pour votre aide, c’est exactement le résultat que je voulais,

    Je retiens donc que c’est un masque qui a été utilisé dans mon cas mais que c’est possible avec un calque également,
    J’ai également situé le script que vous avez indiqué dans le document sous les “Options avancées”….

    J’ai pour ma part Acrobat 9 pro et Adobe Reader X,

    Votre autre idée d’interdire l’accès à la 2ème page tant que la case n’est pas cochée, est intéréssante…

    Dans ce 2ème cas, est-ce qu’il serait inutile d’utiliser un masque ou un calque…??

    Sinon, pouvez-vous svp me proposer un exemple ?

    Par ailleurs, peut-on éviter le bouton “Impression” sur le document et préféré la commande “Imprimer” du logiciel ??

    @Merlin, merci également pour vos précisions et les liens que vous avez postés…

    Sympa le fichier PDF en exemple, par contre le bouton “Nouvelle page” ne donne rien chez moi…

    Faut-il posséder Reader XI ou bien remplir tous les champs pour que ça ma marche ??

    Merci à vous

    Cordialement

    #53802
    Merlin
    Maître des clés

    Sympa le fichier PDF en exemple, par contre le bouton “Nouvelle page” ne donne rien chez moi…
    Faut-il posséder Reader XI ou bien remplir tous les champs pour que ça ma marche ??

    Oui, c’est une nouveauté de Reader XI, donc ça ne fonctionne avec aucune des versions antérieures (mais ça fonctionne avec Acrobat 4 et toute version ultérieure).
    :idee:

    (Décidément, j’ai bien du mal à le faire lire cet article…!)
    :Smiley03:

    #53803
    Merlin
    Maître des clés

    Par ailleurs, peut-on éviter le bouton “Impression” sur le document et préféré l’outil “Imprimer” du logiciel ??

    Non, car c’est lui qui calcule quelles pages doivent être imprimées avant d’appeler la fonction d’impression du logiciel.
    Par-contre on peut le remplacer par un signet.

    :Smiley01:

    #53804
    Merlin
    Maître des clés

    Sinon, pouvez-vous svp me proposer un exemple ?

    Ben… Il y en a déjà 2…
    :joker:

    #53805
    alex
    Participant

    Pour répondre à @Kalo
    1-Si on interdisait d’accéder à la seconde page, il ne serait pas nécessaire de masquer la zone de saisie par un calque ou un masque(champ de texte).
    2-Le bouton d’impression lance un script qui reprend les propriétés de l’imprimante utilisée pour en modifier certains paramètres (pour nous la plage des pages imprimées). On peut le faire lors de la sélection par la case à cocher.
    Reader X suffit pour tout ça.
    3-Voir ci-dessous, je pense qu’on va pouvoir masquer la seconde page tout simplement. Il faudra attendre lundi !
    Pour répondre à Merlin..
    Effectivement, les templates sont fonctionnels avec effet rétroactif sur la version X.
    Je te transmets un script d’application qui permet de créer des templates, de les lister, de les activer ou désactiver sous Acrobat X ou XI. Reste à vérifier qu’on les manipule bien sous Reader. On pourrait ouvrir un fil pour ça ?

    #53806
    Merlin
    Maître des clés

    Effectivement, les templates sont fonctionnels avec effet rétroactif sur la version X.

    Je viens de re-tester avec Reader X : ça ne fonctionne pas.
    Ce qui ne me surprend pas car pendant le beta-test Leonard avait affirmé qu’il n’en était pas question.
    Mais comme seuls les imbéciles ne changent pas d’avis et que c’est loin d’en être un …
    :Smiley03:

    On pourrait ouvrir un fil pour ça ?

    C’est fait.
    ==> http://abracadabrapdf.net/forum/index.php/topic,1785.new.html#new
    :Smiley01:

    #53807
    alex
    Participant

    Effectivement, après tests, les templates ne sont pas accessibles par script sur Adobe Reader 11, même en contexte privilégié alors que qu’ils le sont sous Acrobat….

    #53808
    KALO
    Membre

    Re,

    merci encore Merlin, Alex,

    (Décidément, j’ai bien du mal à le faire lire cet article…!)

    @Merlin, vous avez raison de le signaler, effectivement j’avais une course et suis parti précipitemment sans lire votre lien, avec en bonus une prune pour excès de vitesse sur la route…

    Mais, je mes les garde tjrs aux heures creuses.

    Ben… Il y en a déjà 2…

    Pour l’exemple, je parlais de l’autre méthode qu’évoquait Alex à savoir empêcher l’accés à la 2ème page tant que la case n’est pas cochée,
    donc au script…

    @ Alex, merci pour vos réponses,

    je doutais un peu qu’on puisse utiliser la commande “Imprimer” d’Acrobat au lieu du bouton “Impression” pour lancer la ou les pages utilisées,

    Sinon pour l’autre méthode, avec une restriction d’accès à la 2ème page, c’est a priori possible avec la version Reader X, mais qu’il faut que je patiente à lundi…

    Voilà je vais passer dès à présent à la lecture des liens que vous avez postés afin de m’instruire un peu…

    Bonne soirée

    Cordialement

     

    #53809
    KALO
    Membre

    Je viens de lire le lien sur Reader XI et de télécharger cette dernière version,

    espérons que les administrateurs le téléchargeront rapidement sur les postes de travail également…

    Sinon, le bouton “nouvelle page” fonctionne dans le ficher exemple mais effectivement sans pouvoir accéder aux nouvelles pages….!!!

    Bonne soirée

    #53810
    Merlin
    Maître des clés

    Sinon, le bouton “nouvelle page” fonctionne dans le ficher exemple mais effectivement sans pouvoir accéder aux nouvelles pages….!!!

    Alors là il va falloir t’expliquer mieux que ça…
    Comment ça on ne peut pas accéder aux nouvelles pages ???

    :doute:  :Euuuh: :oh: :Smiley03:

    #53811
    KALO
    Membre

    Bonjour le forum, Merlin,

    Merlin, je me corrige dans mon précédent message, j’ai bien accés à la 2ème page mais si je remplis l’une ou l’autre page,
    les champs qui ont été complétés se dupliquent sur les 2 ou l’ensemble des pages….!!

    Vous allez me dire que c’est normal car chaque nouvelle page est une duplication de la 1ère page et donc les champs auront le même nom…!!

    Mais quel est l’utilité dans ce cas de créer des nouvelles pages si l’on ne peut pas saisir différemment chaque page ??

    Cordialement

    #53812
    maxwyss
    Membre

    Kalo: Le code pour créer une page du modèle, a une option qui renomme les champs sur les pages. Avec ça, on n’a pas cet effet.

    en detail: template.spawn() a l’option bRename qui devrait être active (true) par defaut.

    HTH.

    Max Wyss.

    #53813
    KALO
    Membre

    Bonjour maxwyss,

    Merci pour votre réponse,

    le problème c’est que je ne trouve pas l’instruction template.spawn() ou ni comment l’intégrer dans le document…

    Dans les options avancées, je retrouve dans le fichier exemple un script nommé “Init” sans les mots “bRename” ou “spawn”,

    Faut-il le rajouter quelque part dans ce script ??

    Cordialement

    #53814
    maxwyss
    Membre

    Bonjour Kalo: Je viens de telecharger le fichier example, et je note que cet example utilise une version “ancienne” de la commande de créer une page d’un modèle: spawnPageFromTemplate(), qui fait partie du Object Doc. Selon la documentation Acrobat JavaScript, cette méthode ist considerée obsolète, et il est recommandé de utiliser spawn() du Object Template. Neanmoins, les arguments de la méthode sont similaires, et en fait, le flag pour renommer les champs est posé, Si on crée une troisième page, les noms de champs sont adaptés.

    Le problème avec le fichier démo est que la première page a été créée par la même methode, devenant la deuxième page, et ensuite, la première page a été effacée. Pour être consistant, on aurait du renommer les champs de la (nouvelle) première page en “P0.trombi.xxx”.

    Cet example est une demonstration (pas prévu, certainement) de ce qui peut se passer si on a des pages créées d’un modèle et on “joue” avec des pages…

    Le code pour créer une nouvelle page est vachement simple, et il est associé au champ “P1.trombi.reseticon”.

    HTH.

    Max Wyss.

    #53815
    Merlin
    Maître des clés

    Je dois reconnaître que mon fichier d’exemple n’était pas fait pour ça à l’origine et que j’y ai intégré un vieux script dont je me servait déjà avec Acrobat 4…
    Donc pas forcément de première fraicheur !

    D’autre part, s’agissant d’un exemple vite-fait je n’ai pas cherché du tout à gérer les noms de champs dupliqués, même si c’est aisément faisable.

    Ce PDF n’a que 2 objectifs : montrer qu’on peut dupliquer des Modèles et montrer qu’on peut importer une image dans un champ bouton.

    :bonjour:

    #53816
    KALO
    Membre

    Maxwyss, Merlin,

    Concernant mon fichier perso, je vais plutôt attendre la solution à évoquée par Alex avec la case à cocher pour autoriser ou non l’accès à la 2ème page….

    Cordialement

    #53817
    maxwyss
    Membre

    Merlin: Le fichier est absolument adequate pour demonstrer ce qu’il est prevu pour. Le script ancien fonctionne toujours, même avec Acrobat XI. En fait, ce fait est un peu etonnant, concernant la non-longéivité de autres implementations de scripting… donc une autre preuve que les investissements dans PDF (et AcroForms) sont bien justifiés.

    Max Wyss.

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