サーバーの仕様でconvertコマンドにてimagemagickを使用しています
サムネイルの作成でどんな写真がきても指定サイズにフィットしてトリミングするにはどの様にするのでしょうか?
現在は下記の様にリサイズ後に中央からトリミングしておりますが、横長写真は上下サイズが指定サイズに足らなくなってしまいます。
-resize 150x -gravity center -crop 150x100+0+0
別途 cropThumbnailImage というものを見つけたのですが、convertコマンドでする方法がわかりませんでした。
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
横長の場合は x150 ではなく x100 と縦の方を基準にしてやればよいので、画像の縦横を比較して値を変更すればよいかと。
list($width, $height) = getimagesize(元画像);//横縦サイズ取得
$resize = ($width > $height) ? "x100":"150x";//横長なら x100 他は 150x
exec("convert -resize $resize ~");
ちなみに "convert -define jpeg:size=150x100 -resize $resize ~"
とサイズ指定すると早くなります。またcropThumbnailImageを使用したいなら
$image = new Imagick("元画像");
$image->cropThumbnailImage(150, 100);
$image->writeImage('保存ファイル名');
こっちが簡単かも知れませんね。
有難うございます
list($width, $height) = getimagesize(元画像);//横縦サイズ取得
$resize = ($width > $height) ? "x100":"150x";//横長なら x100 他は 150x
にてうまくできました、PHPで画像サイズ取得、応じて縦長か横長に振り分け
勉強になりました
cropThumbnailImageは自身のサーバ(convertコマンドでのみimagemagickが使える?)での使用方法が分かららず、PHP内にnew Imagickなどを使うとエラーになってしまいましたが
上記の振り分けの方が色々理解ができ、使用してこうと思います。
合わせてサイズ指定で早くなる方法も有難うございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- フリーソフト 倍率自動調整して全画面表示できるフリーの画像ビューアー 1 2023/08/24 10:55
- 写真・ビデオ 明日が期限!職務経歴書(EXCEL)に写真添付可能なアプリ。 証明写真でアプリを探しても紙に貼るタイ 2 2022/06/29 17:57
- 画像編集・動画編集・音楽編集 わかりやすい写真編集ソフト 3 2022/07/16 09:59
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
- 面接・履歴書・職務経歴書 履歴書の写真のサイズが合いません 証明写真機で履歴書サイズに指定し撮影したのに貼り付けてみたら上下左 5 2023/06/19 16:24
- 画像編集・動画編集・音楽編集 動画を、静止画写真のように、好きな画角で拡大とかトリミングした編集動画にできるのでしょうか? 5 2023/01/27 11:16
- その他(悩み相談・人生相談) いつも通っている愛犬のトリミングサロンでの不快?というか疑問点があります。 いつも通ってる愛犬のトリ 2 2022/05/24 22:50
- 犬 いつも通っている愛犬のトリミングサロンでの不快?というか疑問点があります。 いつも通ってる愛犬のトリ 2 2022/05/24 21:58
- 画像編集・動画編集・音楽編集 A1サイズで画像作成(300枚以上の写真を並べたいです) 1 2023/08/03 12:18
- その他(Microsoft Office) 複数の写真を1枚に印刷 5 2023/05/05 22:41
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
透過PNGが透過されない!!
-
C# Excelファイルへの画像挿入。
-
手作業で埋め込んだ、UserForm1...
-
ビットマップ画像を読み込むプ...
-
クリックされた画像URLの照合
-
Illustratorで文字と画像を流し...
-
PHPでPDFを画像で表示したい
-
PHPで吐き出した画像にリンクを...
-
拡張子php画像をjpg画像等に変...
-
VBSの「MsgBox」について
-
画像ファイル pngのメリットを...
-
PHP MySQLに画像を直接保存
-
Pythonで画像の読み込みが上手...
-
Webbrowser上に表示した画像を...
-
ListViewコントロールでサムネ...
-
libpng 24bpp rawをPNGに変換す...
-
php,mysqlにて画像パス保存/表...
-
VBAでJPGサイズ変更
-
pictureboxに表示した画像のフ...
-
画像リストを作りたい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBSの「MsgBox」について
-
拡張子php画像をjpg画像等に変...
-
透過PNGが透過されない!!
-
Illustratorで文字と画像を流し...
-
アップロード画像数でCSSを分け...
-
imageフォルダに、画像をリサイ...
-
PythonのTkinter詳しい方へ。画...
-
VBAでJPGサイズ変更
-
C# Excelファイルへの画像挿入。
-
ListViewコントロールでサムネ...
-
PHPで吐き出した画像にリンクを...
-
php,mysqlにて画像パス保存/表...
-
PHP+PostgreSQLを使ってPDFファ...
-
スマートフォンから画像のアッ...
-
画像にテキストを埋め込むジェ...
-
実行ファイル(exe)に画像ファ...
-
ビットマップ画像を読み込むプ...
-
改行コードのカウント
-
Ajaxで画像表示
-
画像アップロードのファイル名...
おすすめ情報