質問

私はJavaScriptの初心者です。JSXスクリプトには、水平方向と垂直方向の両方の側面で+20%のキャンバスをサイズ変更したいというコードがあります。

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

20は、定規が設定されているユニットを指します。 (インチ、ピクセル、センチメートルなど)。

キャンバスを20%サイズ変更する適切な方法は何ですか?

ResizeCanvasの前にユニットをユニットに変更しなければならないのではないかと疑っています。私にとって、それは多くのタイピングのようです、より良い方法はありますか?

役に立ちましたか?

解決

私はこのようにそれをします:

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

使用する必要があるかもしれません Math.round また Math.floor 幅と高さを強制します。 resizeCanvas 関数はそれを自動的に処理しません。

他のヒント

これは私が思いついたものです、それは適切な方法ですか?

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();

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top