Fermer, enregistrer, imprimer : ce qu’exécute le document
Exécutez un script juste avant que le document soit fermé, enregistré ou imprimé, et un autre une fois qu’il est enregistré ou imprimé.
Résumé
Un formulaire peut inscrire la date sur lui-même au moment de partir à l’impression, ou rappeler à qui le ferme qu’un champ est resté vide. Chacun de ces moments — avant la fermeture, avant l’enregistrement, après l’enregistrement, avant l’impression, après l’impression — peut recevoir son propre script. Ce que le logiciel de lecture en fait ne regarde que lui : beaucoup de programmes n’en exécutent aucun, donc rien de ce dont un document a besoin ne doit en dépendre.
Techniquement
Écrit au premier niveau d’une requête, sous
"document_triggers"
document_triggers écrit le /AA du catalogue du document : /WC avant la fermeture, /WS avant l’enregistrement, /DS après l’enregistrement, /WP avant l’impression et /DP après l’impression. Chaque moment reçoit un seul script, {"script": "…"}, la seule action que la norme permet à ces moments de déclencher : toute autre action est refusée, et un moment omis ne déclenche rien. Un script appelle les fonctions que le document déclare sous scripts.
Schéma de la requête
-
document_triggers— objet, facultatif. Absent, le document ne déclenche rien. -
document_triggers.will_close— script, facultatif. Exécuté juste avant la fermeture du document. -
document_triggers.will_save— script, facultatif. Exécuté juste avant l’enregistrement du document. -
document_triggers.saved— script, facultatif. Exécuté une fois le document enregistré. -
document_triggers.will_print— script, facultatif. Exécuté juste avant l’impression du document. -
document_triggers.printed— script, facultatif. Exécuté une fois le document imprimé.
Aucune partie de PDF/A ne permet à un document d’agir quand on le ferme, l’enregistre ou l’imprime. Une requête qui en revendique une et donne ces moments est écrite quand même, et un check de cette partie le relève parmi ses constats.
Une requête entière qui crée un PDF
{
"document_triggers": {
"will_print": { "script": "app.alert('This copy is for internal use.');" }
},
"standard_fonts": [{ "name": "sans", "face": "helvetica" }],
"items": [
{
"type": "text",
"rect": { "llx": 60, "lly": 740, "urx": 535, "ury": 765 },
"content": ["A document that speaks up before it is printed"],
"font": "sans",
"font_size": 14
}
]
}
S’y retrouver
L’ordre du passage d’un champ au suivant Ce qu’une page déclenche à l’arrivée et au départ Les scripts que le document enregistre sous un nom Ce dont le document dit être fait Le sommaire cliquable sur le côté Des points d’arrivée qui ont un nom Suivre un article de colonne en colonne Comment le document s’ouvre et s’imprime
Où aller ensuite
Toutes les clés JSON d’une requête, en une page Les quarante et un autres réglages d’une requête