3

だから私はこれについていくつかの調査を行ったが、適切な答えを見つけることができず、これを行う方法さえあるかどうか疑問に思った:

基本的に、大きなファイル (adobe cs ファイル、画像ファイル、ビデオなど) を Web サイトにアップロードした後、それらのサムネイルを作成する必要があります。私はこの部分を実行しましたが、アップロードが完了した後にユーザーを待たせないために、いくつかのマルチスレッド技術を使用して実際にうまく機能します。

現在、すべてのサムネイルのサイズを 250x250 の正方形サイズに変更しています。これは IM コマンドです。

convert -quiet examplefile.extn 
-thumbnail x250 
-resize 250x< 
-background white 
-gravity center 
-crop 250x250+0+0 
+repage 
-unsharp 0x.5 
-quality 80 
-flatten 
thumbnail.jpg

動画や psd ファイルで見栄えがよくなります ;) さて、いくつかの Web サイトの要件が変更されたことがわかりました (それが起こると気に入らないでしょうか?) そして、アスペクト比に基づいて画像のサイズを変更する必要があります。条件は次のとおりです。

高さ/幅 > 1 の場合、サムネイルの幅を 250 に設定し、高さは自由 (最大 500) にします。高さ/幅 <= 1 の場合、サムネイルの HEIGHT を 250 に設定し、幅は自由 (最大 500) にします。

これは可能ですか?私は自分自身を研究し続けているので、ポインタ、提案、代替案は大歓迎です...

4

1 に答える 1

2

サイズ変更オプションはこちら: http://www.imagemagick.org/script/command-line-processing.php#geometry

convert -quiet examplefile.extn -thumbnail 250x250 +repage -unsharp 0x.5 -quality 80 thumbnail.jpg

あなたのコードは少し複雑すぎるようです - 縦横比を維持し、最大寸法が 250px になる上記を試してください。

もっと複雑なことをしたい場合は、IM の外でそれを行い、幅と高さの寸法を変数としてコマンドに渡します。

-thumbnail {$width}x{$height}
于 2012-05-21T15:52:26.797 に答える