php实现常见图片格式的水印和缩略图制作实现常见图片格式的水印和缩略图制作(面向对象面向对象)
主要介绍了php实现常见图片格式jpg,png,gif的水印和缩略图制作,使用面向对象方法实现PHP图片水印和缩
略图功能,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了php水印和缩略图制作代码,使用面向对象的方法来实现常见图片格式jpg,png,gif的水印和缩略图的
制作,供大家参考,具体内容如下
<?php
header('Content-Type:text/html;charset=utf-8');
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
//给图片添加水印
Class Water{
//开启水印
private $watermark_on = '1';
public $water_img;
//水印位置
public $pos = 1;
//压缩比
public $pct = 80;
//透明度
public $quality = 80;
public $text = '乐趣网zlblog.sinaapp.com';
public $size = 12;
public $color = '#000000';
public $font = 'font.ttf';
//thumb的制作
//默认缩略图功能开启
private $thumb_on = 1;
//生成缩略图的方式
public $thumb_type = 1;
//生成缩略图的宽度
public $thumb_width;
//生成缩略图的高度
public $thumb_height;
//生成缩略图的后缀名
public $thumb_fix = '_dq';
//缩略图函数处理
public function thumb( $img,$outfile='',$t_type='',$t_w='',$t_h='' ){
//验证图片是否符合要求
if(!$this->check($img) || !$this->thumb_on) return FALSE;
//定义缩略图的初始值
$t_type = $t_type ? $t_type : $this->thumb_type;
$t_w = $t_w ? $t_w : $this->thumb_width;
$t_h = $t_h ? $t_h : $this->thumb_height;
//获取到原图的信息
$img_info = getimagesize($img);
$img_w = $img_info[0];
$img_h = $img_info[1];
//取得图像类型的文件后缀
$img_type = image_type_to_extension($img_info[2]);
//获取到相关尺寸
$thumb_size = $this->thumb_size($img_w,$img_h,$t_w,$t_h,$t_type);
//确定原始图像类型
//利用自定义函数来实现图片类型的确定
$func = "imagecreatefrom".substr($img_type, 1);
$res_img = $func($img);
//缩略图资源 编辑图片资源moon
if( $img_type == '.gif' || $img_type == '.png' ){
$res_thumb = imagecreate($thumb_size[0], $thumb_size[1]);
$color = imagecolorallocate($res_thumb, 255, 0, 0);