• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
0

Rotation image pdf interactif

Community Beginner ,
Nov 06, 2023 Nov 06, 2023

Copy link to clipboard

Copied

Bonjour,

J'ai réalisé un formulaire sur indesign et l'ai exporté en pdf interactif. Sur une première partie, j'ai des champs textes à remplir et des cases à cocher. Jusque là tout va bien ! Sur la 2nde partie, j'ai la possibilité d'insérer une image (un plan). J'ai appelé cette image "Plan" (les personnes qui utiliseront le pdf devront télécharger leur propre image). C'est maintenant que ça se complique pour moi :

J'aimerais que cette image puisse être mise soit en horizontale, soit en verticale, en fonction de l'image importée. J'ai pensé à un bouton qui pourrait faire en sorte que lorsque l'on clique dessus, l'image puisse pivoter. Sauf que tous les scripts que j'ai pu trouver et que j'insère dans la partie "actions" ne fonctionne pas...

Est ce que vous auriez une idée ? Ou est ce que sur pdf je peux tout simplement oublier cette fonction ?

Je vous remercie par avance pour l'aide que vous pourrez m'apporter ! 🙂

TOPICS
Create PDFs , Edit and convert PDFs , General troubleshooting , JavaScript , PDF forms

Views

145

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines

correct answers 2 Correct answers

Community Expert , Nov 06, 2023 Nov 06, 2023

bonjour,
Voici un exemple que j'avais proposé il y a quelques temps. Le script de cet exemple est :

 

for (var i=0; i<this.numFields; i++) {
var theName=this.getNthFieldName(i);
	if (theName!="rotate") {
		var f=this.getField(theName);
		var rect=f.rect;
		var length=rect[2]-rect[0];
		var height=rect[1]-rect[3];
		var centerX=(rect[0]+rect[2])/2;
		var centerY=(rect[1]+rect[3])/2;
		rect[0]=centerX-height/2;
		rect[1]=centerY+length/2;
		rect[2]=rect[0]+height;
		rect[3]=rect[1]-length;
		f.rect
...

Votes

Translate

Translate
Community Beginner , Nov 06, 2023 Nov 06, 2023

Hourra, j'ai trouvé !! Voici le script final :

var fieldNameToRotate = "Plan_af_image";
var field = this.getField(fieldNameToRotate);
if (field !== null) {
var rect = field.rect;
var length = rect[2] - rect[0];
var height = rect[1] - rect[3];
var centerX = (rect[0] + rect[2]) / 2;
var centerY = (rect[1] + rect[3]) / 2;
rect[0] = centerX - height / 2;
rect[1] = centerY + length / 2;
rect[2] = rect[0] + height;
rect[3] = rect[1] - length;
field.rect = rect;
var rot = field.rotation;
rot = rot + 90;
if (rot >= 360

...

Votes

Translate

Translate
Community Expert ,
Nov 06, 2023 Nov 06, 2023

Copy link to clipboard

Copied

bonjour,
Voici un exemple que j'avais proposé il y a quelques temps. Le script de cet exemple est :

 

for (var i=0; i<this.numFields; i++) {
var theName=this.getNthFieldName(i);
	if (theName!="rotate") {
		var f=this.getField(theName);
		var rect=f.rect;
		var length=rect[2]-rect[0];
		var height=rect[1]-rect[3];
		var centerX=(rect[0]+rect[2])/2;
		var centerY=(rect[1]+rect[3])/2;
		rect[0]=centerX-height/2;
		rect[1]=centerY+length/2;
		rect[2]=rect[0]+height;
		rect[3]=rect[1]-length;
		f.rect=rect;
		var rot=f.rotation;
		rot=rot+90;
		if (rot>=360) rot=rot-360;
		f.rotation=rot;
	}
}

 

 Tu peux partager un fichier si tu veux un script personnalisé.

@+

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Nov 06, 2023 Nov 06, 2023

Copy link to clipboard

Copied

Merci beaucoup @bebarth  pour ton retour rapide !

C'est exactement ce que je cherchais ! J'ai juste encore un petit soucis : lorsque je clique sur le bouton, tous les éléments pivotent (image souhaitée, mais également les champs texte en surbrillance ainsi que le bouton "Rotation" lui même !)

Est ce que tu sais ce que je dois rajouter dans le script pour qu'il n'y ait que l'image souhaitée qui puisse pivoter ?

Merci encore pour ton aide 🙂

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Nov 06, 2023 Nov 06, 2023

Copy link to clipboard

Copied

LATEST

Hourra, j'ai trouvé !! Voici le script final :

var fieldNameToRotate = "Plan_af_image";
var field = this.getField(fieldNameToRotate);
if (field !== null) {
var rect = field.rect;
var length = rect[2] - rect[0];
var height = rect[1] - rect[3];
var centerX = (rect[0] + rect[2]) / 2;
var centerY = (rect[1] + rect[3]) / 2;
rect[0] = centerX - height / 2;
rect[1] = centerY + length / 2;
rect[2] = rect[0] + height;
rect[3] = rect[1] - length;
field.rect = rect;
var rot = field.rotation;
rot = rot + 90;
if (rot >= 360) rot = rot - 360;
field.rotation = rot;
}

Merci mille fois pour ton aide @bebarth ! :):):)

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines