0

HTML5キャンバスを使用して画像ビューアアプリケーションを作成しています。私は2つのキャンバスを使用しました。1つはユーザーに表示されない実際の幅と高さで画像をロードするために使用され(これはDOMツリーに追加されていない非表示のキャンバスです)、2つ目は実際にユーザーに表示されます。画像の実際の解像度は1200*800です。サイズ1200*800の非表示のキャンバスに画像をロードしてから、解像度700 * 600の表示のキャンバスに画像をロードしようとしました(ctx.drawImage(hiddenCanvas、0,0,700,600のようなコードを追加しました)。この解像度の画像全体。以下の質問があります。

  1. 表示されているキャンバスにロードするときにアスペクト比を維持しますか?または、アスペクト比の操作を手動で実行しますか。
  2. そうすると画質が落ちますか?これは、imageviewerアプリケーションを実行するための標準的な方法ですか?

このビューアにズームイン、ズームアウト、パンのような機能を追加する必要があります。

誰でも私の質問に答えてください。

4

2 に答える 2

1

と言うと,0,0,700,600、アスペクト比が自動的に指定されます。

ほとんどのサイズ変更操作では、画質が低下します。1200x800の画像のサイズを700x600に変更すると、何らかの補間(線形、バイキュービックなど)が実行されます。

于 2012-11-21T08:26:07.510 に答える
0

あなたが使用することができます

var name=new Image();
name.src="name.fileformat";
context.drawImage(name,X, Y, sizeX, sizeY);

しかし、パン、ズームなどについては、私は何も持っていません。

于 2016-10-09T08:51:24.480 に答える