0

jpeg画像のピクセルの色を知りたい

JavaScript では、画像からキャンバスを作成し、getImageData メソッドを使用してピクセルの色を取得します。

canvas.getContext("2d").getImageData( 0, 0, canvas.width, canvas.height );

そしてこの機能:

function getPixelColor( imagedata, x, y ) {
        var position = ( x + imagedata.width * y ) * 4, data = imagedata.data;
        return { r: data[ position ], g: data[ position + 1 ], b: data[ position + 2 ], a: data[ position + 3 ] };   
}

php では、これらの 3 行のコード:

    $img = imagecreatefromjpeg($imagepath) ;

    $rgb = imagecolorat($img, '1', '1');

    $colors = imagecolorsforindex($img, $rgb);

結果が等しいかどうかをチェックすると、それらが等しくないことがわかりました!

サンプル結果:

Canvas getImageData:

red : 238, green : 147, blue : 118

PHP imagecolorat:

red : 244, green : 145, blue : 113

誰でも私の結果を改善するための解決策を提案できますか?

ありがとう

4

1 に答える 1

1

さまざまなピクセルを見ています。phps の場合は 1,1、javacripts の場合は 0,0

于 2013-10-24T08:13:21.040 に答える