调整图像大小,笨
问题描述:
我需要根据宽度只有,高度不:( 来调整我的图片,因为我使用** ** $config['maintain_ratio'] = TRUE;
,笨自动解决它(那问题)有时我得到一个黑色固体作为一个额外的宽度或高度,调整图像大小,笨
我已经看过了所有与codegniter的形象 库的问题,我找不到与我的问题:(
什么
这里是最后的结果说明...
上传完成后我有这个...
$this->load->library('md_image');
$source='assets/img/hotellist/'.$data1['hotel_pictures'];
$width=746;
$height=400;
$dest = FALSE;
//$this->md_image->resize_image($source, $width, $height, $source);
$config['image_library'] = 'gd2';//imagemagik
$config['source_image'] = 'assets/img/hotellist/'.$data1['hotel_pictures'];
//$config['image_library'] = 'imagemagick';
//$config['library_path'] = '/usr/X11R6/bin/';
$config['create_thumb'] = FALSE;
$config['maintain_ratio'] = TRUE;
$config['width'] = 746;
$config['height'] = 400;
$config['quality'] = 75;
$config['encrypt_name'] = TRUE;
$config['remove_spaces'] = TRUE;
//$config['x_axis'] = 100;
//$config['y_axis'] = 300;
$img =$config['source_image'];
//var_dump('check problem',$config['source_image']);
$this->load->library('image_lib', $config);
$this->image_lib->resize();
那么我走裁剪部分
$new_img =$this->md_image->crop_to_ratio($source, $width, $height, $x = 17, $y = 9, $dest = FALSE);
的关怀总结一下,有人上传一张图片,它根据宽度调整大小只有 然后它就会冒出
PS:柜面有人需要它md_image
答
$this->load->library('md_image');
$source='assets/img/hotellist/'.$data1['hotel_pictures'];
$width=746;
$height=400;
$size = getimagesize($source);
$resize_height=($size[1]*746)/$size[0];
$dest = FALSE;
//$this->md_image->resize_image($source, $width, $height, $source);
$config['image_library'] = 'gd2';//imagemagik
$config['source_image'] = 'assets/img/hotellist/'.$data1['hotel_pictures'];
//$config['image_library'] = 'imagemagick';
//$config['library_path'] = '/usr/X11R6/bin/';
$config['create_thumb'] = FALSE;
$config['maintain_ratio'] = TRUE;
$config['width'] = 746;
$config['height'] = $resize_height;
$config['quality'] = 75;
$config['encrypt_name'] = TRUE;
$config['remove_spaces'] = TRUE;
//$config['x_axis'] = 100;
//$config['y_axis'] = 300;
$img =$config['source_image'];
//var_dump('check problem',$config['source_image']);
$this->load->library('image_lib', $config);
$this->image_lib->resize();
答
function resize_than_crop($path, $new_path, $width = 400, $height = 746) {
$this->load->library('image_lib');
$this->image_lib->initialize(array(
'image_library' => 'gd2',
'source_image' => $path,
'new_image' => $new_path,
'maintain_ratio' => true,
'master_dim' => 'width',
'width' => $width
));
$this->image_lib->resize();
$this->image_lib->clear();
$this->image_lib->initialize(array(
'image_library' => 'gd2',
'source_image' => $new_path,
'height' => $height
));
$this->image_lib->crop();
}
+0
感谢您花时间写这篇文章,但@ user3641704已经回答了,我会考虑在未来的项目中测试您的解决方案 – Fahad
问题出在哪里发生,在调整或作物? – jcorry
对不起,延迟回复, 有时,当图像的高度很大,即+ 700px的作物没有调整大小,如果高度稍大一点,即+ 100px,它会在调整大小后留下黑色的实体...希望此信息有助于@jcorry,谢谢。 – Fahad
如果我得到image_magick只根据高度调整大小,它对我来说是一个很大的成就,裁剪不是问题...如果我给它正确的尺寸width-> 700px高度 - >(*大于> 400px *)它庄稼棒! – Fahad