来自CSS Transform的PHP图像裁剪

时间:2013-10-03 18:03:54

标签: php css image imagemagick wideimage

我目前正在为客户构建一个图像裁剪工具,前端允许用户上传和图像并放大/缩小并平移缩放图像,直到他们满意为止。

这一切都运行正常,当我需要裁剪此图像时,工具使用css变换进行放大和缩小并处理平移当我将其发布到我的PHP脚本时,它开始变得复杂我得到一个数组,如这一个:

(
[0] => 0.4095092758326518
[1] =>  0
[2] =>  0
[3] =>  0.4095092758326518
[4] =>  -1257.469970703125
[5] =>  -441.6499938964844
)

我已经知道[0]是一个比例因子,[4]和[5]是我的x,y位置,以获得正确的位置我已经将我的x和y位置除以键0中的比例因子

然后我需要获取我正在裁剪的视口的宽度和高度(例如)329px x 237px这是按比例因子缩小0.277(并且最终输出需要按比例放大以匹配此值)< / p>

我正在使用WideImage php库,但也可以访问imageMagick,

我的最终x,y和宽度和高度值的代码如下所示:

$width = $vport['w']/$scale;
$height = $vport['h']/$scale;
$posY = (abs($matrix[5]))/$matrix[0];
$posX = (abs($matrix[4]))/$matrix[0];

其中$ matrix是我的CSS转换数组,$ scale是= 0.277

这似乎并没有结束,但在某些缩放级别它会破坏。我很欣赏我可能不清楚什么是错的,或者问题是诚实的,我不知道自己。如果有人建立了这样的东西,或者对我可能出错的地方有一些建议,这将是很好的。

汤姆:)

0 个答案:

没有答案