Question

Je suis un novice javascript, j'ai ce morceau de code dans un script jsx que je voudrais redimensionner la toile 20 pour cent sur les deux côtés horizontaux et verticaux.

resizeCanvas = docRef.resizeCanvas(curWidth + 20, curHeight + 20, AnchorPosition.MIDDLECENTER);

20 fait référence à ce que l'unité de la règle est définie sur. (Pouces, pixels, centimètres, etc.).

Quelle est la méthode appropriée de redimensionner la toile de 20 pour cent?

Je soupçonne que je dois changer les unités avant que les resizeCanvas à Units.PERCENT puis revenir à la valeur par défaut après le redimensionnement. Pour moi, cela semble être beaucoup de frappe, est-il une meilleure méthode?

Était-ce utile?

La solution

Je le ferais comme ceci:

resizeCanvas = docRef.resizeCanvas(curWidth * 1.2, curHeight * 1.2, AnchorPosition.MIDDLECENTER);

Vous devrez peut-être utiliser Math.round ou Math.floor pour forcer la largeur et la hauteur pour être des nombres entiers si la fonction resizeCanvas ne gère pas automatiquement.

Autres conseils

est ce que je suis venu avec, est-ce la bonne méthode?

var strtRulerUnits = app.preferences.rulerUnits; // store default ruler units

function resizecanvas(){
   app.preferences.rulerUnits = Units.PERCENT; // change units to percent
   docRef.resizeCanvas(curWidth + 20, curHeight + 20, AnchorPosition.MIDDLECENTER, ); // add 20 % to the canvas
   app.preferences.rulerUnits = strtRulerUnits; // restore to default ruler units
   }

resizecanvas ();

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top