幅と高さのある base 64 画像データを取り込み、JavaScript で指定された幅と高さのサイズ変更された base 64 画像データを返す関数を作成しようとしています。本質的には
function imageResize(img, width, height) {
var newImg;
//PLAN:transform img with new width and height.
// - change width
// - change height
// - convert back to base 64 data
return newImg;
}
この投稿をたどるのに疲れましたが、うまくいきませんでした。私は現在、js で画像を変換する方法を見つけるための調査を行っており、新しいリードを見つけたら投稿を更新します。私がやろうとしていることをすでに実行している機能はありますか? 疑似コード内の 1 つ以上のコンポーネントでない場合は? どんなアドバイスでも大歓迎です。
これは私が実装しようとした現在の関数ですが、実際の画像が描画されていない空白のキャンバスを返します。
function imageResize(img, width, height) {
/// create an off-screen canvas
var canvas = document.createElement('canvas');
var ctx = canvas.getContext('2d');
/// set its dimension to target size
canvas.width = width;
canvas.height = height;
/// draw source image into the off-screen canvas:
ctx.drawImage(img, 0, 0, width, height);
/// encode image to data-uri with base64 version of compressed image
return canvas.toDataURL();
}
この問題を解決するにはどうすればよいですか?