JavaScript aplatir  (Lu 128 fois) Partager ce sujet Imprimer

1 B


GERYGOLPA  24 septembre 2020 : 20:44

Bonjour,

j'utilise aujourd'hui pour le verrouillage de mes champs le script suivant:(pour les champs commençants par i)

for (var i=0; i<this.numFields; i++) {
   var fname = this.getNthFieldName(i);
   var f = this.getField(fname);
   f.readonly = true;
}

Quelle est cette commande, est-ce différent ?
this.flattenPages();

Merci

IP archivée


Merlin  25 septembre 2020 : 00:36

Bonjour

flattenPages (aplatissement dans toute la page) incruste tous les champs de formulaire et les annotations dans la couche graphique du PDF, en leur faisant perdre toutes leurs propriétés. C'est irréversible.
Et ça ne fonctionne pas avec Acrobat Reader.
https://help.adobe.com/en_US/acrobat/acrobat_dc_sdk/2015/HTMLHelp/Acro12_MasterBook/JS_API_AcroJS/Doc_methods.htm?rhhlterm=flatten&rhsyns=%20#XREF_97907_flattenPages

readonly (lecture seule) est une propriété booléenne réversible, via les outils d'édition d'Acrobat Pro, ou bien via JavaScript dans Acrobat Reader.
https://help.adobe.com/en_US/acrobat/acrobat_dc_sdk/2015/HTMLHelp/Acro12_MasterBook/JS_API_AcroJS/Field_properties.htm?rhhlterm=readonly&rhsyns=%20#XREF_27391_readonly

IP archivée


GERYGOLPA  25 septembre 2020 : 06:59

Merci pour le retour, aucun problème je n'utilise que Acrobat DC et cela fonctionne impeccable.

IP archivée


bebarth  25 septembre 2020 : 07:26

bonjour,
j'utilise aujourd'hui pour le verrouillage de mes champs le script suivant:(pour les champs commençants par i)
for (var i=0; i<this.numFields; i++) {
   var fname = this.getNthFieldName(i);
   var f = this.getField(fname);
   f.readonly = true;
}
Par contre, ce script ne s’applique pas qu’aux champs dont le nom commence par un i, mais à tous les champs... :Euuuh:
@+
 :bonjour:

IP archivée


GERYGOLPA  25 septembre 2020 : 07:43

oui tout a fait j'ai inversé 2 scripts

IP archivée