-1
URLから画像を読み込んでキャンバスに描画したいと思います。私のキャンバスは完全なウィンドウサイズを取ります。マウスの位置に100x100のサイズでイメージを表示したいだけです。私のコードは以下の通りです:元の画質でキャンバスにURLから画像を描画する方法
drawImage(imageUrl) {
const ctx = this.canvas.getContext('2d');
ctx.clearRect(0, 0, this.canvas.width, this.canvas.height);
const image = new Image();
image.onload =() => {
ctx.imageSmoothingEnabled = false;
ctx.drawImage(image, this.state.mousePos.x, this.state.mousePos.y,
100, 100);
};
image.src = 'https://cdn.sstatic.net/stackexchange/img/logos/so/so-icon.png';
}
画像はWebページに描画できますが、画質はかなり低いです。以下は、上記のリンクからorianlの画像です:
あなたは2つの画像を比較することができ、その品質はかなり異なっている:以下
すると、イメージが私のキャンバス上に示されています。どのようにしてキャンバスに高品質の画像を描くことができますか?
画像の幅と高さは明確に定義されていますか? –
これを158 X 158にして、リサンプルのギザギザを避けます。微妙な色のグラデーションがない場合でもエイリアシング設定で再生される可能性があります。 – dandavis
CSSからキャンバスに適用される幅と高さは伸縮しますが、その情報は提供していません。 – kamoroso94