2011-12-05 23 views
11

Bir resmi en çok width boyutuna yeniden boyutlandırmak istiyorum. Bu yüzden resmin yüksekliğini umursamıyorum, ancak her zaman onu belirli bir genişliğe yeniden boyutlandırmak istiyorum.ImageMagick - Maksimum genişliğe yeniden boyutlandırma

Bunu yaptığımdan eminim, şimdi nasıl yaptığımı hatırlayamıyorum.

cevap

29

bu genişlik birinci parametre olduğunu belirterek, o yapılır yöntemdir görünüyor. yüksekliği hakkında merak Başkası için

convert -resize '100' image.png 

, o zaman bu yapardın:

convert -resize 'x100' image.png 

Kaynak: http://www.imagemagick.org/script/command-line-processing.php

Düzenleme (2014 Kasım): Not o ImageMagick'in son sürümlerinde Artık Kevin Labécot'un yorumuna göre değerler etrafında tırnak kullanamazsınız.

+4

Bir grup görüntüyü yerinde yeniden boyutlandırmak istiyorsanız (yeni dosyalar oluşturmak yerine) 'convert' yerine 'mogrify' komutunu kullanabilirsiniz – Eli

+2

Artık tırnakları kullanarak boyut ayarına izin verilmiyor (geçersiz parametre). Ben tırnak kaldırmak zorunda kaldı ve mükemmel çalışır: 'dönüştürmek -resize 100 image.png' –

+0

@ KevinLabécot Bu ImageMagick hangi sürümü değişti hiç değişti biliyor musunuz? ... değilse bile, eski sürümlerde de alıntı yapılmaksızın bunu yapıp yapmadığınızı biliyor musunuz? – Brett

3

Sadece doğru en boy oranını çalışmak için matematiği takip ediyor musunuz?

$new_width = 400; // config 
$image_width = 480; // loaded from image 
$image_height = 786; // loaded from image 
$new_height = $new_width * ($image_height/$image_width); 
echo "$image_width x $image_height becomes $new_width x $new_height"; 
+2

Dude, şu şekilde görünmelidir: echo $ image_width. "X". $ Image_height. "Olur". $ New_width. "X". $ New_height; –

+1

Çift tırnaklar, php değişkenlerini ayrıştırır – Scuzzy

+1

Biliyorum, ama değişkenler html kodundan ayrılmalı;) –