2011-07-07 12 views
1

私はCodeigniterのイメージライブラリを使用してイメージのサイズを変更しています。私は、CIが指定された寸法に収まるようにイメージのサイズを変更するだけです:30px x 20pxボックスに合わせてサイズ変更された50px x 50pxイメージは、20px x 20pxにリサイズされ、空白スペースは黒い領域になります。サイズを完全に合わせるためにイメージのサイズを変更する(Codeigniter)

私がしたいのは、リサイズ画像が30pxのスペース全体を30pxのスペースで塗りつぶし、余分な部分が切り取られるようにすることです。

これはCodeigniterで可能ですか?

答えて

1

「マスター」ディメンションとして幅または高さのいずれかを選択してイメージをサイズ変更してから、トリミングする必要があると思います。

私はこのコードをテストしていませんが、それを試してみましょう。他に何もないなら、それはあなたにその考えを与えるはずです。

$config['source_image'] = '/path/to/image/mypic.jpg'; 

$config['width'] = 30; 
$config['height'] = 0; // No restraint on height 
$this->load->library('image_lib', $config); 
$this->image_lib->resize(); 

$config['x_axis'] = 30; // Same width as before 
$config['y_axis'] = 20; // Crop to height 
$this->image_lib->initialize($config); 
$this->image_lib->crop(); 

代わりにクロップ寸法を中央に置いてみてください。どちらの方法を選んでも、ある時点で画像が切り取られる必要があります。

$config['height'] = 0が高さを無視する正しい方法であるかどうかわからないことがあります。FALSE、本当に高い数値、または完全に削除されている可能性があります(CIイメージのlibで作業していないwhile)。

関連する問題