2010-05-03 4 views
2

Je suis un novice javascript, j'ai ce bit de code dans un script jsx que je voudrais redimensionner le canvas +20 pour cent sur les côtés horizontaux et verticaux.Comment définir le pourcentage de toile augmentation dans photoshop javascript

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

20 se réfère à l'unité sur laquelle la règle est définie. (pouces, pixels, centimètres, etc.)

Quelle est la méthode appropriée pour redimensionner le canevas de 20 POUR CENT?

Je suspecte que je devrais changer les unités avant le resizeCanvas à Units.PERCENT et puis revenir à la valeur par défaut après le redimensionnement. Pour moi, cela semble être beaucoup de dactylographie, y a-t-il une meilleure méthode?

Répondre

3

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.

+0

C'est génial! Merci – Chris

+0

merci, ajouté un vote à vous aussi. –

2

C'est ce que j'ai trouvé, 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();

Questions connexes