この記事の例では、PHP で指定された画像サイズをインターセプトする方法について説明します。参考のためにみんなで共有してください。具体的な分析は次のとおりです:
imagecopyresampled($newim, $im, 0, 0, 7, 174, 120, 42, $new_img_width, $new_img_height); // 元のサイズ 120 x 42
imagecopyresampled($newim, $im, 0, 0, 100, 30, 500, 500, $new_img_width, $new_img_height) // 画像を切り取って 500 x 500 に配置します
imagecopyresampled($newim, $im, 0, 0, 100, 30, 10, 10, $new_img_width, $new_img_height); // 画像を切り出した後、10 x 10 に縮小します
これはおそらく、元のサイズの最初のパラメータを見て、次のように比較します。
$newim: imagecreate($new_img_width, $new_img_height); 空のレイヤーを作成します$im: imagecreatefromjpeg($filename);
で元の画像を読み込みます
0: 出力画像をどちら側から開始するかの x 点 (画像出力の点は指定可能、未指定の位置はレイヤーカラーまたは作成した画像になります)0: 出力グラフをどの側から開始するかという y 点 (上記と同じ)
7: 元の画像をどの辺 x から開始するか (どの x 点からインターセプトするかを指定します)
174: 元の画像をどの側 y から開始するか (インターセプトを開始するポイントを指定します。インターセプト ブロックのサイズは次の 2 つのパラメーターによって決定されます)
120: スクリーンショットの幅は、上記で指定した位置から開始して 120px になります (ズームインまたはズームアウトする場合は、ここでも決定されます)
42: スクリーンショットの大きさはどれくらいにする必要がありますか? 上で指定した位置から開始して、高さ 42px でスクリーンショットを開始します (ズームインまたはズームアウトする場合は、ここでも決定されます)
$new_img_width: これは、上で記述した 2 番目のパラメータ 0, 0 のセットから、どのくらいの幅で描画を開始するか (このプログラムでは、スクリーンショットのサイズが現在指定されています)
$new_img_height: これは、上記の 2 番目のパラメーター セット 0、0 から、どのくらいの高さで描画を開始するか (このプログラムでは、スクリーンショットのサイズが現在指定されています)
PHP サンプルコードは次のとおりです:
true
http://www.bkjia.com/PHPjc/925127.html