PHP旋转图像

问题描述:

我现在用下面的方法来存储从输入文件类型PHP旋转图像

$image = $request->file('file'); 
$filename = $item->itemId . '.png'; 
Storage::disk('s3')->put('/'.$filename, file_get_contents($image), 'public'); 

到服务器的图像,我发现方法与PHP

$filename = 'test.jpg'; 
$degrees = 180; 
header('Content-type: image/jpeg'); 
$source = imagecreatefromjpeg($filename); 
$rotate = imagerotate($source, $degrees, 0); 
imagejpeg($rotate); 

旋转图像但我不知道如何实现$ request-> file('file')的代码

谢谢!

+0

尝试使用http://image.intervention.io/!你可以直接从'$ request-> file('file')'制作图像! –

我不确定从imagecreatefromjpeg()和imagerotate()获取函数的位置,但是如果您只是使用PHP自己的可用函数(由Imagick提供),则可以做更简单的事情...

$image = new Imagick(); 
$image_filehandle = fopen('some/file.jpg', 'a+'); 
$image->readImageFile($image_filehandle); 

$image->rotateImage("FFFFFF", 90); # Rotate 90 degrees, keep background of "FFFFFF" (white) 

$image_icon_filehandle = fopen('some/file-rotated.jpg', 'a+'); 
$image->writeImageFile($image_icon_filehandle); 

如果图像旋转并留下一定数量的背景(对于以90为增量的旋转角度不会发生),则会应用背景颜色(“FFFFFF”)。