在我的项目中,我使用Transloadit API实现了图像上传,除了旋转之外,所有属性都能正常工作。当我硬编码旋转值时,它工作正常,上传的图像旋转正确。但是,当我尝试通过设置图像的rotation : true
来自动旋转图像时,它不起作用。我尝试了太多的图像,但看起来我的代码有问题。这是我的代码文件"Index.html":
<html>
<head><title>Title</title></head>
<body>
<form action="/image/upload.php" enctype="multipart/form-data" method="POST">
<input type="file" name="my_file" multiple="multiple" />
</form>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<script src="https://assets.transloadit.com/js/jquery.transloadit2-v2-latest.js"></script>
<script type="text/javascript">
$(function()
{
$('form').transloadit(
{
wait: true,
triggerUploadOnFileSelection: true,
params:
{
auth:
{
key: "MY_API_KEY"
},
steps:
{
thumb:
{
use: ":original",
robot: "/image/resize",
result: true,
rotation: true
}
}
}
});
});
</script>
</body>
</html>
我的PHP代码
<?php
$result = $_POST['transloadit'];
if (ini_get('magic_quotes_gpc') === '1')
{
$result = stripslashes($result);
}
$result = json_decode($result, true);
echo "<pre>";
print_r($result);
?>
当您使用布尔值时,如果系统认为图像方向错误,则您可以选择旋转,在这种情况下,这可能是系统或您选择测试的图像类型的问题,为了强制执行旋转,请使用整数值度数。
请进一步查看此处的文档。
我向Transloadit的支持团队提出了同样的问题,最终从的支持团队得到了这个答案
看起来图像包含imagemagick
(还)不理解的格式的元旋转数据。我们很快就会有一个新版本的ImageMagick
在幕后,它可能会解决这个问题。但我还不能给你一个确切的日期,什么时候会直播。然而,我们的自动旋转应该在用例的99.9%
中工作。