Javascript 在php中使用imagerotate()无法获得精确的图像旋转
我正在使用Javascript 在php中使用imagerotate()无法获得精确的图像旋转,javascript,php,mysql,image-rotation,Javascript,Php,Mysql,Image Rotation,我正在使用imagerotate()和imagecreatefromstring()函数旋转base64图像并更新回MySQL。 这是我的密码 $imageData = $rs[0]['image_data'];//image from DB $im = imagecreatefromstring($imageData); $degrees = $_REQUEST['selectrotate'];//Dynamic degrees. ob_start();
imagerotate()
和imagecreatefromstring()
函数旋转base64
图像并更新回MySQL。这是我的密码
$imageData = $rs[0]['image_data'];//image from DB
$im = imagecreatefromstring($imageData);
$degrees = $_REQUEST['selectrotate'];//Dynamic degrees.
ob_start();
$destImage = imagerotate($im, $degrees, 0) ;
imageJPEG($destImage);
$image_thumb =mysql_real_escape_string(ob_get_contents());
$imageDV=$image_thumb;
ob_end_clean();
发生的情况如下:
$destImage = imagerotate($im, $degrees, 0);
在这行中,当我硬编码$degrees
替换一些值时,旋转工作正常。
但对于动态度,旋转需要+180。若“动态”值为90,则图像将旋转到270度
请帮助。听起来像是设置为负数。(270°=-90°)您的表单是否在引擎盖下传递了正确的值?是的,安东尼。我正在获取$_请求['selectrotate']的正确值;另外,如果您阅读了PHP手册,但它会逆时针旋转图像,因此如果您选择90度,并且它会逆时针旋转270度,那么它只会逆时针旋转90度。请参阅手册:正如@Anthony所述,270°=-90°,这反过来仍然是90°(但方向相反),因此它可以正确旋转。这很有趣,但为什么它的请求变量输出与硬编码输出不同?您是否只使用180°硬编码测试?