如何使用 PHP 中的 imageaffinematrixget() 函数获取仿射变换矩阵?
**imageaffinematrixget()** 是 PHP 中一个内置函数,用于获取仿射变换矩阵。此函数常用于线性代数和计算机图形学。
语法
array imageaffinematrixget(int $type, mixed $options)
参数
**imageaffinematrixget()** 仅接受两个参数:**$type** 和 **$options**。
**$type** − $type 参数指定整数到 IMG_AFFINE 常量。
IMG_AFFINE_TRANSLATE
IMG_AFFINE_SCALE
IMG_AFFINE_ROTATE
IMG_AFFINE_SHEAR_HORIZONTAL
IMG_AFFINE_SHEAR_VERTICAL
**$options** − 如果 type 为 IMG_AFFINE_TRANSLATE 或 IMG_AFFINE_SCALE,options 必须是一个数组,键为 x 和 y,两者都具有浮点值。如果 type 为 IMG_AFFINE_ROTATE、IMG_AFFINE_SHEAR_HORIZONTAL 或 IMG_AFFINE_SHEAR_VERTICAL,options 必须是一个指定角度的浮点数。
返回值
它返回一个仿射变换矩阵,一个键从 0 到 5 且值为浮点数的数组。失败时,返回 false。
示例 1:使用 IMG_AFFINE_SCALE
<?php $matrix_scale = imageaffinematrixget(IMG_AFFINE_SCALE, array('x' => 2, 'y' => 3)); print_r($matrix_scale); ?>
输出
Array ( [0] => 2 [1] => 0 [2] => 0 [3] => 3 [4] => 0 [5] => 0 )
示例 2
<?php $angle = 280; // Get the image affine matrix using imageaffinematrixget() function $matrix_vertical = imageaffinematrixget(IMG_AFFINE_SHEAR_VERTICAL, $angle); // Output the matrix values print("<pre>".print_r($matrix_vertical, true)."</pre>"); ?>
输出
Array ( [0] => 1 [1] => -5.6712818196177 [2] => 0 [3] => 1 [4] => 0 [5] => 0 )
广告