如何使用 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
)

更新于:2021年8月9日

浏览量:159

启动您的职业生涯

完成课程获得认证

开始学习
广告