abracadabraPDF › Forums › PDF – Général › Piece jointe et icône
- Ce sujet contient 80 réponses, 3 participants et a été mis à jour pour la dernière fois par
destylast, le il y a 4 mois et 1 semaine.
-
CréateurSujet
-
18 octobre 2022 à 10:54 #71590
destylast
ParticipantBonjour je suis un petit nouveau du script pour des documents PDF et j’aurais deux questions :
1- j’ai besoin de créer un bouton pour enregistrer mes pièces jointes sur mon PDF mais en changement son emplacement à chaque fois pour qu’elles ne se chevauchent pas et voici le code que j’ai :
var annot = this.addAnnot({
page: this.pageNum,
type: « FileAttachment »,
author: « abracadabraPDF »,
contents: « Double-clic pour ouvrir »,
attachIcon: « PushPin »,
point: [400,500],
strokeColor: color.red,
});mais il se chevauche à chaque fois, snif snif.
2- peut on changer la taille de l’icône de la pièce jointe ainsi que de la remplacer par un personnel (un script explicatif serait le bienvenu pour mes deux questions).
-
CréateurSujet
-
AuteurRéponses
-
18 octobre 2022 à 11:41 #71592
bebarth
Maître des clésbonjour,
Il est normal que tes icônes s chevauchent à chaque fois vu que tu leurs donnes la même position [400,500] !
Le sujet a été traité il y a déjà un certain temps…Personnalisation d’un bouton permettant d’importer une pièce jointe
Je te joins le fichier que j’avais fait à l’époque. Essaye de l’étudier et n’hésite pas à demander ce que tu ne comprends pas !
Il n’est pas possible de personnaliser les icônes, mais on peut modifier leurs tailles comme indiqué dans le lien.
@ Merlin : Le fichier Excel que l’on a extrait m’a bien été utile pour retrouver le post et le fichier…
@+
😎Attachments:
You must be logged in to view attached files.18 octobre 2022 à 15:44 #71613Merlin
Maître des clésBonjour
2- peut on changer la taille de l’icône de la pièce jointe ainsi que de la remplacer par un personnel (un script explicatif serait le bienvenu pour mes deux questions).
Non. Tout ce qu’on peut remplir c’est l’info-bulle, qui est ici dans ton script :
contents: « Double-clic pour ouvrir »,
18 octobre 2022 à 15:45 #71614Merlin
Maître des clésLe fichier Excel que l’on a extrait m’a bien été utile pour retrouver le post et le fichier
EXCEllent !
👍
18 octobre 2022 à 16:14 #71620destylast
Participantmerci pour vos réponse, la je suis en plein test et je vous ferai un retour une fois le tout OK
18 octobre 2022 à 17:32 #71622bebarth
Maître des clésBonjour 2- peut on changer la taille de l’icône de la pièce jointe ainsi que de la remplacer par un personnel (un script explicatif serait le bienvenu pour mes deux questions). Non. Tout ce qu’on peut remplir c’est l’info-bulle, qui est ici dans ton script :
contents: « Double-clic pour ouvrir »,
eh ben si, comme expliqué dans le post !
@+
😎18 octobre 2022 à 20:31 #71626Merlin
Maître des clésAh ben oui !
😉
19 octobre 2022 à 13:15 #71632destylast
Participantje commence a désespère cela ne fonctionne pas, en pj mon PDF avec mon script et je suis adobe acrobat DC.
Attachments:
You must be logged in to view attached files.19 octobre 2022 à 15:43 #71634bebarth
Maître des clésbonjour,
Le script ne fonctionnait pas car l’objet annots est nul (n’existe pas vu qu’il n’y a aucun commentaire).
Je te conseille de travailler avec la console pour voir les messages d’erreurs.
J’ai jeune (JavaScriptologiquement) lorsque j’ai écrit ce script et j’y ai donc apporté quelques modifications. 🤓var aRect=this.getField("Buttonn").rect;
annots=this.getAnnots();
var j=0;
if (annots!=null) {
for (var i=0; i<annots.length; i++) {
if (annots.type=="FileAttachment") j++;
}
}
if (j>4) {
app.alert({cMsg:"Vous ne pouvez importer plus de 5 pièces jointes.", nIcon:2});
} else {
var annot=this.addAnnot({
page: this.pageNum,
type: "FileAttachment",
author: "abracadabraPDF",
contents: "Double-clic pour ouvrir la piece jointe",
attachIcon: "PushPin",
point: [aRect[0]-(25*(j+1)), aRect[1]-10],
strokeColor: color.red,
});
annot.contents=annot.attachment.name;
annots=this.getAnnots();
for (var i=0; i<annots.length; i++) {
if (annots.type=="FileAttachment") {
var licone=annots.attachIcon;
var r=annots.rect;
r[2]=r[0]+20;
r[3]=r[1]+40;
annots.setProps({rect: r});
}
}
}
N’hésite pas à demander des explications.
@+
😎Attachments:
You must be logged in to view attached files.20 octobre 2022 à 08:27 #71641destylast
ParticipantMerci pour ton retour très pros(pour la console, faut-il encore bien l’interprète le message d’erreur) mais j’aurais 3 questions:
1- je limite mes pièces jointes à 5 mais si la personne efface une d’elle sur les 5 et veuille la remplacer par exemple la position n° 3 la nouvelle viendra se superposer sur la 5 donc il y a un problème comment faire ?
2-sur mon futur formulaire j’aurais des champs en surbrillance (couleur bleue par défaut) à remplir, je sais que l’on peut changer dans les paramètres pour changer cette couleur par script aussi mais peut on changer la surbrillance seulement d’un champ cela passera par script car pas possible de le faire avec les réglages.
3-et la dernière peut on définir un mot de passe pour un ensemble de champ réserver à certaines personnes(particulier et administration).
Un petit exemple serai bienvenu que je puisse essayer d’assimiler le principe et encore merci de vos réponses.
20 octobre 2022 à 12:07 #71642Merlin
Maître des clés1. Il faut initialiser un compteur à zéro et désactiver le bouton d’importation dès qu’il arrive à 5.
Si le document est susceptible d’être fermé et réutilisé ensuite, je te conseille de stocker le compteur dans un champ masqué et non pas dans une variable volatile (qui disparait à la fermeture du document).
2. La surbrillance et la couleur de surbrillance est la même pour tous les champs, on ne peut pas faire de cas particuliers. Sauf si on simule la surbrillance en affectant des couleurs via JavaScript mais c’est une autre paire de manches.
3. Oui. Je ne connais pas ton document mais il y a peut-être plus simple : remplacer le mot de passe par une touche « secrète ».
Par exemple en utilisant CTRL + clic ou MAJ + clic, c’est une bête astuce à laquelle on ne pense pas assez souvent.
(Un champ peut déclencher une action différente de l’action « de base » si l’utilisateur se sert d’une de ces deux touches de modification en cliquant.)
20 octobre 2022 à 12:44 #71643destylast
Participanta tu des exemples à me montrer pour que je puisse comprendre.
20 octobre 2022 à 13:54 #71644Merlin
Maître des clés1. Ouvre le document « test1f_BB.pdf » posté ci-dessus par bebarth, il inclut la limitation à 5 pièces jointes (en utilisant une méthode plus subtile que celle que je suggérais).
3. Place ce script en évènement « souris relevée » (mouse up) dans un champ :
if (event.shift) // Si clic + majuscule
{app.alert("Vous avez cliqué en appuyant sur la touche majuscule."}
else
{app.alert("Coucou."}
20 octobre 2022 à 15:56 #71645bebarth
Maître des clésPar exemple en utilisant CTRL + clic ou MAJ + clic, c’est une bête astuce à laquelle on ne pense pas assez souvent.
Je connais event.shift pour maj+clic mais je ne connais pas pour ctrl+clic ! C’est quoi la commande ?
1- je limite mes pièces jointes à 5 mais si la personne efface une d’elle sur les 5 et veuille la remplacer par exemple la position n° 3 la nouvelle viendra se superposer sur la 5 donc il y a un problème comment faire ?
Les pièces jointes sont indiquées dans l’ordre où on les importe. Si tu supprimes la numéro 3, la numéro 4 devient la numéro 3 et la numéro 5 devient numéro 4. Le nouveau fichier importé arrivera toujours en dernière position.
On peut désactiver la surbrillance de tous les champs avec app.runtimeHighlight=false et la simuler uniquement pour un champ avec event.target.fillColor=[« RGB », 200/255,1,1]; par exemple !
@+
😎20 octobre 2022 à 20:09 #71646Merlin
Maître des clésIl faut remplacer « shift » par « modifier » :
La touche « modifier » c’est la touche CTRL sur Windows ou la touche CMD sur Mac.
if (event.modifier)
{app.alert("Vous avez cliqué en appuyant sur la touche CTRL ou la touche CMD.");}
else
{app.alert("Coucou.");}
20 octobre 2022 à 22:11 #71647bebarth
Maître des clés👏💪👍
@+
😎21 octobre 2022 à 07:45 #71648destylast
ParticipantMerci pour vos conseils, là je travaille sur ma structure de mon PDF pour insérer mon formulaire avec mes scripts par la suite et je pense encore faire appel a vos conseils si un problème se présente et de votre coté si je peux rendre service cela sera avec plaisir.
21 octobre 2022 à 08:46 #71649Merlin
Maître des clés👍
21 octobre 2022 à 18:03 #71650bebarth
Maître des clésL’api reference indique pour event.modifier :
Specifies whether the modifier key is down during a particular event. The modifier key on the Microsoft
Windows platform is Control and on the Mac OS platform is Option or Command. This property is not
supported on UNIX.Pour info, sur Mac, seule la touche Option fonctionne, la touche Commande n’est pas reconnue (le fichier joint indique que l’on a appuyé sur aucune touche) et avec la touche ctrl rien ne se passe…
@+
😎Attachments:
You must be logged in to view attached files.22 octobre 2022 à 18:34 #71653destylast
ParticipantBonjour,
Me revoici avec mon formulaire presque fini mais avec un petit souci(gros même),
Dans mon tableau sur la colonne des pièce jointe je voudrai mettre 5 fichiers par case et si cela n’est pas possible avec la limitation de 5 ou alors juste pouvoir avec le bouton les mettre au même endroit du bouton au nombre de 5 sans qu’il ne se superpose car actuellement il se répartisse sur l’ensemble des boutons et moi je voudrais qu’il soit indépendant de chaque bouton.
Exemple: bouton 1 cinq pièces jointes dans la case/bouton 2 cinq pièces jointes dans la case ainsi de suite pour tout les boutons du tableau.
Un exemple serai top et encore merci.
22 octobre 2022 à 18:36 #71654destylast
Participantok fichier de moins 1MB news 1
-
Cette réponse a été modifiée le il y a 5 mois par
destylast.
-
Cette réponse a été modifiée le il y a 5 mois par
destylast.
-
Cette réponse a été modifiée le il y a 5 mois par
destylast.
-
Cette réponse a été modifiée le il y a 5 mois par
destylast.
Attachments:
You must be logged in to view attached files.23 octobre 2022 à 09:28 #71662Merlin
Maître des clés« Pour info, sur Mac, seule la touche Option fonctionne, la touche Commande n’est pas reconnue (le fichier joint indique que l’on a appuyé sur aucune touche) et avec la touche ctrl rien ne se passe… »
C’est bien possible, en fait je n’ai pas testé sur Mac depuis fort fort longtemps car je préfère utiliser la touche MAJ, c’est plus simple à expliquer car ça vaut pour les deux plateformes.
23 octobre 2022 à 09:33 #71663Merlin
Maître des clés« Exemple: bouton 1 cinq pièces jointes dans la case/bouton 2 cinq pièces jointes dans la case ainsi de suite pour tout les boutons du tableau. »
Je ne sais pas ce qu’en pense bebarth mais dans ce cas je ne vois pas comment faire autrement qu’en mettant un compteur pour chaque bouton.
23 octobre 2022 à 09:41 #71664destylast
Participantoui pas simple et de plus pour un débutant, un exemple serai bienvenu la je test des solutions mais rien ne fonctionne snif
23 octobre 2022 à 10:29 #71665bebarth
Maître des clésbonjour,
Je vais y réfléchir… mais pas aujourd’hui, certainement demain !@+
😎23 octobre 2022 à 13:48 #71666bebarth
Maître des clés…ça ne m’empêche pas de réfléchir !
Que doit-on faire si une pièce jointe est supprimée ? Remettre toutes les icônes à la suite ou laisser un espace vierge pour éventuellement remettre une icône à cette place ?@+
😎 -
Cette réponse a été modifiée le il y a 5 mois par
-
AuteurRéponses
- Vous devez être connecté pour répondre à ce sujet.