4

画像をトリミングするためのクラスをPHPで作成しましたが、動作します。問題は、私が数学を理解していないということです。それがどのように機能するかを示す最良の方法は、おそらく画像を使用することです.

私が理解していないのはimagecopyresampled()、ソース画像の x および y 変数の参照点として実際に使用されるものを PHP で使用する場合です。

最初はそれが画像の中心であると仮定しました。つまり、絶対中心 = y/2 と x/2 です。これはy値では機能しましたが、xでは機能しませんでした。リサンプリング領域の左側から x を計算しました。

(source y - resamplearea y) / 2

2 つの異なる基準点があるように私には思えます。PHP マニュアルの関連ドキュメントを読みましたが、リファレンス ポイントについて何も見つかりません。

左下隅から参照されていますか?もしそうなら、なぜ私は自分でそれを解決しなければならなかったのですか?

小さな例の抜粋:

imagecopyresampled($outputImage, $this->tempImage, 0, 0, $this->src_x, $this->src_y, $this->outputx, $this->outputy, $this->inputImageWidth, $this->inputImageHeight);

何か不足していますか?

JPEG サンプリング

4

0 に答える 0