#php #amazon-s3 #laravel-8 #orientation #intervention
#php #amazon-s3 #ларавель-8 #ориентация #вмешательство
Вопрос:
Я сохранил изображения на s3 (портрет). Теперь, если я отвечу на них на странице с изображением вмешательства, я увижу их в альбомной ориентации.
То же самое не произойдет, если я отвечу на них Storage::response()
функцией (мне нужно использовать изображение вмешательства, чтобы изменить их размер).
Поэтому я решил сохранить локально эскиз изображения, и это то, что я безуспешно пытался сделать:
- сохранил копию в локальном хранилище, открыл ее, сориентировался и снова сохранил: НЕ РАБОТАЕТ;
- открыт из s3, вызовите функцию setFileInfoFromPath, сориентируйте ее и сохраните снова: НЕ РАБОТАЕТ
Это код, который я использовал для первого снимка:
$localThumbPath = storage_path("app/tmp/thumb_{$id}.{$ext}"); // STORAGE IS S3 $img = Image::make(Storage::get("folder/{$id}.{$ext}")); $img-gt;save($localThumbPath); $img = Image::make($localThumbPath)-gt;orientate()-gt;resize(100, 150, function ($constraint) { $constraint-gt;aspectRatio(); }); $img-gt;save($localThumbPath); $s3 = Storage::disk('s3'); // maybe useless $filePath = "/folder/thumb_{$id}." . $ext; $s3-gt;put($filePath, (string)$img-gt;encode(), 'public-read');