2

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

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

20 は、ルーラーが設定されている単位を表します。(インチ、ピクセル、センチメートルなど)。

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

resizeCanvas の前に単位を Units.PERCENT に変更し、サイズ変更後にデフォルトに戻す必要があると思われます。私には、それは多くのタイピングのように思えます。より良い方法はありますか?

4

2 に答える 2

3

私は次のようにします:

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

関数がそれを自動的に処理しない場合は、幅と高さを整数にするMath.roundか、強制する必要があるかもしれません。Math.floorresizeCanvas

于 2010-05-19T16:22:44.230 に答える
2

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

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

于 2010-05-03T15:10:25.880 に答える