CodeIgniter图像处理类的深入解析
图像处理 深入 解析 CodeIgniter
2023-06-13 09:15:01 时间
image.php
复制代码代码如下:
<?php
classImageextendsController{
functionImage()
{
parent::Controller();
$this->load->library("image_lib");
}
//缩略图
functionindex(){
echo"*调整图像大小<br>
*创建缩略图<br>
*图像裁剪<br>
*图像旋转<br>
*添加图像水印<br>
";
}
//缩略图
functionresize(){
/*
注意
当$config["create_thumb"]等于FALSE并且$config["new_image"]没有指定时,会调整原图的大小
当$config["create_thumb"]等于TRUE并且$config["new_image"]没有指定时,生成文件名为(原图名_thumb.扩展名)
当$config["create_thumb"]等于FALSE并且$config["new_image"]指定时,生成文件名为$config["new_image"]的值
当$config["create_thumb"]等于TRUE并且$config["new_image"]指定时,生成文件名为(原图名_thumb.扩展名)
*/
$config["image_library"]="gd2";//(必须)设置图像库
$config["source_image"]="ptjsite/upload/55002.jpg";//(必须)设置原始图像的名字/路径
$config["dynamic_output"]=FALSE;//决定新图像的生成是要写入硬盘还是动态的存在
$config["quality"]="90%";//设置图像的品质。品质越高,图像文件越大
$config["new_image"]="ptjsite/upload/resize004.gif";//设置图像的目标名/路径。
$config["width"]=575;//(必须)设置你想要得图像宽度。
$config["height"]=350;//(必须)设置你想要得图像高度
$config["create_thumb"]=TRUE;//让图像处理函数产生一个预览图像(将_thumb插入文件扩展名之前)
$config["thumb_marker"]="_thumb";//指定预览图像的标示。它将在被插入文件扩展名之前。例如,mypic.jpg将会变成mypic_thumb.jpg
$config["maintain_ratio"]=TRUE;//维持比例
$config["master_dim"]="auto";//auto,width,height指定主轴线
$this->image_lib->initialize($config);
if(!$this->image_lib->resize())
{
echo$this->image_lib->display_errors();
}else{
echo"成功的";
}
}
//图像裁剪
functioncrop(){
$config["image_library"]="gd2";//设置图像库
$config["source_image"]="ptjsite/upload/004.gif";//(必须)设置原始图像的名字/路径
$config["dynamic_output"]=FALSE;//决定新图像的生成是要写入硬盘还是动态的存在
$config["quality"]="90%";//设置图像的品质。品质越高,图像文件越大
$config["new_image"]="ptjsite/upload/crop004.gif";//(必须)设置图像的目标名/路径。
$config["width"]=75;//(必须)设置你想要得图像宽度。
$config["height"]=50;//(必须)设置你想要得图像高度
$config["maintain_ratio"]=TRUE;//维持比例
$config["x_axis"]="30";//(必须)从左边取的像素值
$config["y_axis"]="40";//(必须)从头部取的像素值
$this->image_lib->initialize($config);
if(!$this->image_lib->crop())
{
echo$this->image_lib->display_errors();
}else{
echo"成功的";
}
}
//图像旋转
functionrotate(){
$config["image_library"]="gd2";//(必须)设置图像库
$config["source_image"]="ptjsite/upload/001.jpg";//(必须)设置原始图像的名字/路径
$config["dynamic_output"]=FALSE;//决定新图像的生成是要写入硬盘还是动态的存在
$config["quality"]="90%";//设置图像的品质。品质越高,图像文件越大
$config["new_image"]="ptjsite/upload/rotate001.jpg";//设置图像的目标名/路径
$config["rotation_angle"]="vrt";//有5个旋转选项逆时针90180270度vrt竖向翻转hor横向翻转
$this->image_lib->initialize($config);
if(!$this->image_lib->rotate())
{
echo$this->image_lib->display_errors();
}
}
//文字水印
functionwatermark(){
$config["image_library"]="gd2";//(必须)设置图像库
$config["source_image"]="ptjsite/upload/003.jpg";//(必须)设置原图像的名字和路径.路径必须是相对或绝对路径,但不能是URL.
$config["dynamic_output"]=FALSE;//TRUE动态的存在(直接向浏览器中以输出图像),FALSE写入硬盘
$config["quality"]="90%";//设置图像的品质。品质越高,图像文件越大
$config["new_image"]="ptjsite/upload/crop004.gif";//设置图像的目标名/路径。
$config["wm_type"]="overlay";//(必须)设置想要使用的水印处理类型(text,overlay)
$config["wm_padding"]="5";//图像相对位置(单位像素)
$config["wm_vrt_alignment"]="middle";//竖轴位置top,middle,bottom
$config["wm_hor_alignment"]="center";//横轴位置left,center,right
$config["wm_vrt_offset"]="0";//指定一个垂直偏移量(以像素为单位)
$config["wm_hor_offset"]="0";//指定一个横向偏移量(以像素为单位)
/*文字水印参数设置*/
$config["wm_text"]="Copyright2008-JohnDoe";//(必须)水印的文字内容
$config["wm_font_path"]="ptj_system/fonts/type-ra.ttf";//字体名字和路径
$config["wm_font_size"]="16";//(必须)文字大小
$config["wm_font_color"]="FF0000";//(必须)文字颜色,十六进制数
$config["wm_shadow_color"]="FF0000";//投影颜色,十六进制数
$config["wm_shadow_distance"]="3";//字体和投影距离(单位像素)。
/*图像水印参数设置*/
/*
$config["wm_overlay_path"]="ptjsite/upload/overlay.png";//水印图像的名字和路径
$config["wm_opacity"]="50";//水印图像的透明度
$config["wm_x_transp"]="4";//水印图像通道
$config["wm_y_transp"]="4";//水印图像通道
*/
$this->image_lib->initialize($config);
$this->image_lib->watermark();
}
//图像水印
functionwatermark2(){
$config["image_library"]="gd2";//(必须)设置图像库
$config["source_image"]="ptjsite/upload/003.jpg";//(必须)设置原图像的名字和路径.路径必须是相对或绝对路径,但不能是URL.
$config["dynamic_output"]=FALSE;//TRUE动态的存在(直接向浏览器中以输出图像),FALSE写入硬盘
$config["quality"]="90%";//设置图像的品质。品质越高,图像文件越大
$config["new_image"]="ptjsite/upload/crop004.gif";//设置图像的目标名/路径。
$config["wm_type"]="overlay";//(必须)设置想要使用的水印处理类型(text,overlay)
$config["wm_padding"]="5";//图像相对位置(单位像素)
$config["wm_vrt_alignment"]="middle";//竖轴位置top,middle,bottom
$config["wm_hor_alignment"]="center";//横轴位置left,center,right
$config["wm_vrt_offset"]="0";//指定一个垂直偏移量(以像素为单位)
$config["wm_hor_offset"]="0";//指定一个横向偏移量(以像素为单位)
/*文字水印参数设置*/
/*
$config["wm_text"]="Copyright2008-JohnDoe";//(必须)水印的文字内容
$config["wm_font_path"]="ptj_system/fonts/type-ra.ttf";//字体名字和路径
$config["wm_font_size"]="16";//(必须)文字大小
$config["wm_font_color"]="FF0000";//(必须)文字颜色,十六进制数
$config["wm_shadow_color"]="FF0000";//投影颜色,十六进制数
$config["wm_shadow_distance"]="3";//字体和投影距离(单位像素)。
*/
/*图像水印参数设置*/
$config["wm_overlay_path"]="ptjsite/upload/overlay.png";//水印图像的名字和路径
$config["wm_opacity"]="50";//水印图像的透明度
$config["wm_x_transp"]="4";//水印图像通道
$config["wm_y_transp"]="4";//水印图像通道
$this->image_lib->initialize($config);
$this->image_lib->watermark();
}
}
?>