少し前に、オンライン コミュニティにアップロードされた画像から EXIF データを読み取る方法を書きました。写真から方向を取得した後、ファイルを正しい方向に回転させました。私のスクリプトからの短い部分のみ:
public function rotate($sourceFile, $targetFile, $orienation)
{
switch($orienation){
case 3: $degrees = '180'; break;
case 6: $degrees = '90'; break;
case 8: $degrees = '270'; break;
default: $degrees = '0';
}
$file = $sourceFile . DS . $targetFile;
$rotate = GlobalConfig::BIN_IMAGICK_CONVERT . ' -rotate ' . $degrees . ' ' . $file . ' ' . $file;
exec($rotate);
}
私のスクリプトは機能しています。しかし、私の質問は、Facebook のような他の大企業が、アップロードされた写真の回転をどのように処理するかということです。私の解決策は確かに最善ではないからです。