Forums Développement Multimédia

Aller au contenu

Formulaire PDF "save as" ('nom de champ').pdf

PAO InDesign Acrobat PDF

52 réponses à ce sujet

#46 JRB

    abracadabrantesque

  • Members
  • PipPipPipPipPipPipPipPip
  • 1864 messages

Posté 19 September 2012 - 21:06 PM

Salut,


- Sais tu que Adobe a cessé le développement de Adobe Reader pour Linux/Unix depuis déjà un certain temps ?
(De mémoire, il est resté en version 9)
:cry:


- Pour que cela fonctionne il faut impérativement préalablement installer un script d'application sur chaque poste utilisé, c'est-à-dire placer un fichier.JS dans un des sous-dossiers "JavaScripts" d'Acrobat.

- Ca ne peut fonctionner que avec Acrobat, et pas avec Adobe Reader, donc pas sur Linux.

- En général la méthode de contournement c'est d'afficher une boite de dialogue/alerte contenant un nom de fichier copiable, et ensuite suivie de la boite de dialogue d'enregistrement où l'utilisateur peut coller le nom de fichier.
C'est un peu lourdingue, mais il n'y a pas mieux…

Voici le JavaScript à placer, par exemple, dans un bouton "Enregistrer-sous" :


/* abracadabraPDF.net - 2012 - Tous droits réservés
/******************************************************/
/* mise en variable */
var strFixe = "Titre du document";
/* mise en variable nom des champs */
var strNom = this.getField("champ1").value;
var strNum = this.getField("champ2").value
/* détection de la langue et mise en variable des textes */
if (app.language == "FRA")
{var strTitre = strFixe + " - Enregistrement";
var strQuestion = "COPIEZ \[ctrl-C ou cmd-C\] le nom propos\u00E9 ci-dessous et COLLEZ le \[ctrl-V ou cmd-V\] dans la fen\u00EAtre suivante pour l'utiliser comme nom de fichier :";
}
else
{var strTitre = strFixe + " - Save As";
var strQuestion = "COPY \[ctrl-C ou cmd-C\] below proposed text and PASTE it \[ctrl-V ou cmd-V\] in the following box to use it as file name:";
}
/* concaténation du nom de fichier */
var strDisplay = strNum + "_" + strNom + "_" + strFixe + ".pdf";
/* affichage du nom de fichier et enregistrement */
var saveRep = app.response({cQuestion: strQuestion, cTitle: strTitre, cDefault: strDisplay,});
if (saveRep != null)
{app.execMenuItem("SaveAs");}
/******************************************************/

En rouge ce sont les parties personnalisables du code, le reste ne doit pas être modifié.

On peut voir ce JavaScript à l'œuvre dans le PDF ci-joint.
(Le code de déverrouillage est disponible gratuitement sur simple demande par email ou MP)

:cool:

Fichier(s) joint(s)


Acrobate du PDF, InDesigner et Photoshopographe
abracadabraPDF.net

#47 rgodin

    Ceinture Blanche

  • Members
  • Pip
  • 4 messages

Posté 20 September 2012 - 12:41 PM

Bonjour,


Merci pour l'info concernant Linux...

Je te remercie. J'ai réussi ce matin trouver les emplacements et à installer le script d'application que tu avais fournis dans une de tes réponses, et cela marche... même sous Linux (en étendant les droits au Reader).
Seul problème, l'enregistrement lorsque l'on rempli le N° de secours ne marche qu'une seule fois. SI je modifie le contenu du champ (le numéro de secours), le réenregistrement ne se fait plus. Je ne comprends pas car il n'y a que sur mon mac où cela fonctionne parfaitement. As tu une idée du pourquoi cela ne fonctionne qu'une seule fois sur Windows XP et Linux ?

Cordialement

#48 JRB

    abracadabrantesque

  • Members
  • PipPipPipPipPipPipPipPip
  • 1864 messages

Posté 20 September 2012 - 19:14 PM

Voir le messagergodin, le 20 September 2012 - 12:41 PM, dit :

Je te remercie. J'ai réussi ce matin trouver les emplacements et à installer le script d'application que tu avais fournis dans une de tes réponses, et cela marche.

Scuse, j'aurais pu aussi joindre le PDF ci-joint.
:smile:

Fichier(s) joint(s)


Acrobate du PDF, InDesigner et Photoshopographe
abracadabraPDF.net

#49 JRB

    abracadabrantesque

  • Members
  • PipPipPipPipPipPipPipPip
  • 1864 messages

Posté 20 September 2012 - 19:16 PM

Voir le messagergodin, le 20 September 2012 - 12:41 PM, dit :

Seul problème, l'enregistrement lorsque l'on rempli le N° de secours ne marche qu'une seule fois. SI je modifie le contenu du champ (le numéro de secours), le réenregistrement ne se fait plus. Je ne comprends pas…

Là je ne comprend pas la question…
Qu'est-ce que le n° de secours ?
De quel formulaire est-il question ???

:eusa_doh:
Acrobate du PDF, InDesigner et Photoshopographe
abracadabraPDF.net

#50 rgodin

    Ceinture Blanche

  • Members
  • Pip
  • 4 messages

Posté 20 September 2012 - 21:50 PM

Bonsoir et merci pour tes réponses...
Le N° de secours correspond à un champ qui fait partie de mon formulaire. C'est ce que j'ai essayé de décrire dans mon premier post. C'est lui qui donne une partie du nom lors de l'enregistrement de mon document grace à ton script d'application (exemple : 2012 - Fiche alerte - 48 où 48 est le N° de secours).
Donc comme je te disais, j'arrive à enregsitrer automatiquement mon formulaire grace à ton script d'application si je rentre par exemple le N°48 dans le champ N° de secours (2012 - Fiche alerte - 48.pdf) . Par contre si je desire changer le numéro 48 par le 49 (parce que, par exemple je me suis trompé) et bien le document ne se réenregistre pas en 2012 - Fiche alerte - 49.pdf. Comme si la manipulation n'était autorisée qu'une fois... Je ne sais pas si je suis bien clair...

Cordialement

#51 JRB

    abracadabrantesque

  • Members
  • PipPipPipPipPipPipPipPip
  • 1864 messages

Posté 22 September 2012 - 13:51 PM

C'est déjà plus clair en effet.
Donc : oui, ça ne fonctionne qu'une seule fois, le principe étant d'utiliser toujours le même fichier/matrice de départ enregistré comme modèle (ou coché comme modèle sur le Finder du Mac ou l'explorateur de Windows) pour éviter de l'écraser en enregistrant-tout-court.
C'est pour ça que dans mon formulaire d'exemple le bouton "Enregistrer-sous" est à usage unique : il disparait après que l'on ait cliqué dessus.

:cool:
Acrobate du PDF, InDesigner et Photoshopographe
abracadabraPDF.net

#52 rgodin

    Ceinture Blanche

  • Members
  • Pip
  • 4 messages

Posté 23 September 2012 - 07:13 AM

Bonjour,

Bon OK je comprends mieux... Merci pour tes conseils.

#53 castorameur

    Ceinture Blanche

  • Members
  • Pip
  • 1 messages

Posté 15 September 2015 - 08:10 AM

Bonjour,

je déterre ce sujet car j'ai vu que dans app.response on ne pouvait pas mettre de \ dans la chaine cDefaut car javascript l'interprete. Comment faire pour indiquer un chemin et pas seulement un nom de fichier

merci



3 utilisateur(s) li(sen)t ce sujet

0 membre(s), 3 invité(s), 0 utilisateur(s) anonyme(s)

authorised training centre

Centre de Formation Mediabox - Adobe et Apple Authorised Training Center.

Déclaré auprès de la Direction du Travail et de la Formation Professionnelle

Mediabox : SARL au capital de 62.000€ - Numéro d'activité : 11 75 44555 75 - SIRET : 49371646800035

MEDIABOX, 23, rue de Bruxelles, 75009 PARIS

FFP