首页 > php代码 > 利用php GD库 文字图片水印 缩略图

利用php GD库 文字图片水印 缩略图

GD库是php中一个默认的强大的图片处理库了,我们可以利用它来对图片进行一些操作或生成图片的操作,下面我们来看文字图片水印缩略图在php中的实例。

一:添加文字水印 使用方法

<?php
require 'image.class.php';
$src = "001.jpg";
$content = "hello";
$font_url = "my.ttf";
$size = 20;
$image = new Image($src);
$color = array(
    0 => 255,
    1 => 255,
    2 => 255,
    2 => 20
);
$local = array(
    'x' => 20,
    'y' => 30
);
$angle = 10;
$image->fontMark($content, $font_url, $size, $color, $local, $angle);
$image->show();

二:图片缩略图使用方法:

require 'image.class.php';
$src = "001.jpg";
$image = new Image($src);
$image->thumb(300, 200);
$image->show();

三:image.class.php

class image {
    private $info;
    private $image;
    public function __contruct($src) {
        $info = getimagesize($src);
        $this->info = array(
            'width' => $info[0],
            'height' => $info[1],
            'type' => image_type_to_extension($info[2], false) ,
            'mime' => $info['mime'],
        );
        $fun = "imagecreatefrom{$this->info['type']}";
        $this->image = $fun($src);
    }
    //缩略图
    public function thumd($width, $height) {
        $image_thumb = imagecreatetruecolor($width, $height);
        imagecopyresampled($image_thumb, $this->image, 0, 0, 0, 0, $width, $height, $this->info['width'], $this->info['height']);
        imagedestroy($this->image);
        $this->image = $image_thumb;
    }
    //文字水印
    public function fontMark($content, $font_url, $size, $color, $local, $angle) {
        $col = imagecolorallocatealpha($this->image, $color[0], $color[1], $color[2], $color[3]);
        $text = imagettftext($this->image, $size, $angle, $local['x'], $local['y'], $col, $font_url, $content);
    }
    //输出图片
    public function show() {
        header("Content-type:", $this->info['mime']);
        $func = "image{$this->info['type']}";
        $func($this->image);
    }
    public function save($nwename) {
        $func = "image{$this->info['type']}";
        //从内存中取出图片显示
        $func($this->image);
        //保存图片
        $func($this->image, $nwename . $this->info['type']);
    }
    public function _destruct() {
        imagedestroy($this->image);
    }
}


本文地址:http://www.phprm.com/code/86077.html

转载随意,但请附上文章地址:-)

标签:缩略图

相关文章

发表留言