Donnez vie à vos documents numériques !
 

Répondre à : Enregistrer la visibilité des Calques OGC apres le remplissage du formulaire

abracadabraPDF Forums PDF – Général Enregistrer la visibilité des Calques OGC apres le remplissage du formulaire Répondre à : Enregistrer la visibilité des Calques OGC apres le remplissage du formulaire

#73147
Merlin
Maître des clés

Bonjour

 

Avec Reader on ne peut pas aplatir ni modifier l’état de base (affiché/masqué) des calques.

Il n’y a que deux solutions :

  • la signature numérique, qui fige le document.
  • utiliser JavaScript pour enregistrer l’état des calques à la fermeture et le rétablir à la réouverture du document.

 

Exemple de script, la fonction GestionCalques() doit être utilisée lors de chaque modification de l’état des calques, ou bien en Action « Quand le document sera enregistré » (Document will save), et la fonction Ouverture() doit être exécutée à chaque ouverture du document :

 

function GestionCalques() {
ocg = this.getOCGs(this.pageNum);
indexCalque = 0;
code = "";
while (indexCalque < this.ocg.length)
{
if (ocg[indexCalque].state)
{
code=code + "1";
}
else
{
code=code + "0";
}
indexCalque = indexCalque + 1;
}
this.getField("CalqCode").value = code;
}

 

function Ouverture() {
ocg = this.getOCGs(this.pageNum);
code = this.getField("CalqCode").valueAsString;
indexCalque = 0;
while (indexCalque<this.ocg.length)
{
statut = code.substring(indexCalque,(indexCalque+1));
console.println("Rang " + indexCalque + " statut :" + statut)
if (statut==1)
{
ocg[indexCalque].state=true;
}
else
{
ocg[indexCalque].state=false;
}
indexCalque = indexCalque+1;
}
}