Heim >Backend-Entwicklung >PHP-Tutorial >EasyPhpThumbnail PHP图片处理类

EasyPhpThumbnail PHP图片处理类

WBOY
WBOYOriginal
2016-06-20 13:05:091803Durchsuche

EasyPhpThumbnail类可以处理图像和PHP生成缩略图支持GIF、JPG和PNG。这个类是免费的,基于100%的PHP,可用于PHP4(4.3.11以上)和PHP5,易于使用,并提供了超过60的功能操作:

提供的功能包括:调整大小,裁剪,旋转,翻转,另存为,阴影,水印,文字,边框,锐化,模糊,水波纹,反射镜,透视,动画,置换贴图和更多!

使用简介

1、基本使用

<?php<br />include_once('inc/easyphpthumbnail.class.php');<br />$thumb = new easyphpthumbnail;<br />$thumb -> Createthumb('gfx/image.jpg');<br />?>

2、动态显示指定大小图片

<?php<br /> include_once('inc/easyphpthumbnail.class.php');<br /> // Your full path to the images<br /> $dir = str_replace(chr(92),chr(47),getcwd()) . '/gfx/';<br /> // Create the thumbnail<br /> $thumb = new easyphpthumbnail;<br /> $thumb -> Thumbsize = 300;<br /> $thumb -> Createthumb($dir . 'img.jpg');<br />?>

3、生成静态多张本地图片

<?php<br />include_once('inc/easyphpthumbnail.class.php');<br />    // Your full path to the images<br />    $dir = str_replace(chr(92),chr(47),getcwd()) . '/gfx/';<br />$dir_thumbs = str_replace(chr(92),chr(47),getcwd()) . '/thumbs/';<br />if(!is_dir($dir_thumbs)) mkdir($dir_thumbs,0777);<br />    // Create the thumbnail<br />    $thumb = new easyphpthumbnail;<br />    $thumb -> Thumbsize = 600;<br />    $thumb -> Copyrighttext = 'SCUTEPHP.COM';<br />    $thumb -> Copyrightposition = '50% 90%';<br />    $thumb -> Copyrightfonttype = $dir . 'handwriting.ttf';<br />    $thumb -> Copyrightfontsize = 30;<br />    $thumb -> Copyrighttextcolor = '#FFFFFF';<br />   $thumb -> Chmodlevel = '0755';<br />$thumb -> Thumblocation = $dir_thumbs;<br />$thumb -> Thumbsaveas = 'jpg';<br />$thumb -> Thumbprefix = '120px_thumb_';<br />$thumb -> Createthumb(array($dir . '69.jpg', $dir . '70.jpg'), 'file');<br />?>

4、图片大小百分比调整及图片旋转

<?php<br />include_once('inc/easyphpthumbnail.class.php');<br />$thumb = new easyphpthumbnail;<br />$thumb -> Thumbsize = 50;<br />$thumb -> Rotate = 90;//指定度数旋转<br />//$thumb -> Fliphorizontal = true; //水平轴旋转<br />//$thumb -> Flipvertical = true; //垂直轴旋转<br />$thumb -> Percentage = true;<br />$thumb -> Createthumb('gfx/image.jpg');<br />?>

Thumbsize默认是px像素单位,然而要用百分比的话可以设置Percentage属性为ture,Rotate属性设置顺时针旋转度数。

5、给缩略图增加背景阴影

<?php<br />include_once('inc/easyphpthumbnail.class.php');<br />$thumb = new easyphpthumbnail;<br />$thumb -> Backgroundcolor = '#D0DEEE';<br />$thumb -> Shadow = true;<br />$thumb -> Createthumb('gfx/image.jpg');<br />?>

6、给缩略图增加圆角效果

<?php<br />include_once('inc/easyphpthumbnail.class.php');<br />$thumb = new easyphpthumbnail;<br />$thumb -> Backgroundcolor = '#D0DEEE';<br />$thumb -> Clipcorner = array(2,15,0,0,1,1,0);<br />$thumb -> Createthumb('gfx/image.jpg');<br />?>

Clipcorner属性的7个参数含义
[0]: 0=关闭 1=直角 2=圆角
[1]: 裁剪比例
[2]: 随机 - 0=关闭 1=开启
[3]: 左上 - 0=关闭 1=开启
[4]: 左下 - 0=关闭 1=开启
[5]: 右上 - 0=关闭 1=开启
[6]: 右下 - 0=关闭 1=开启

7、给缩略图增加透明效果

<?php<br />include_once('inc/easyphpthumbnail.class.php');<br />$thumb = new easyphpthumbnail;<br />$thumb -> Backgroundcolor = '#0000FF';<br />$thumb -> Clipcorner = array(2,15,0,1,1,1,1);<br />$thumb -> Maketransparent = array(1,1,'#0000FF',30);<br />$thumb -> Createthumb('gfx/image.jpg');<br />?>

8、给缩略图增加框架效果

<?php<br />include_once('inc/easyphpthumbnail.class.php');<br />$thumb = new easyphpthumbnail;<br />$thumb -> Framewidth = 10;<br />$thumb -> Framecolor = '#FFFFFF';<br />$thumb -> Backgroundcolor = '#D0DEEE';<br />$thumb -> Shadow = true;<br />$thumb -> Createthumb('gfx/image.jpg');<br />?>

9、给缩略图增加经典相框效果

<?php<br />include_once('inc/easyphpthumbnail.class.php');<br />$thumb = new easyphpthumbnail;<br />$thumb -> Framewidth = 10;<br />$thumb -> Framecolor = '#FFFFFF';<br />$thumb -> Backgroundcolor = '#D0DEEE';<br />$thumb -> Shadow = true;<br />$thumb -> Binder = true;<br />$thumb -> Binderspacing = 8;<br />$thumb -> Clipcorner = array(2,15,0,1,1,1,0);<br />$thumb -> Createthumb('gfx/image.jpg');<br />?>

10、给缩略图增加水印效果

<?php<br />include_once('inc/easyphpthumbnail.class.php');<br />$thumb = new easyphpthumbnail;<br />$thumb -> Thumbsize = 300;<br />$thumb -> Framewidth = 10;<br />$thumb -> Framecolor = '#00000';<br />$thumb -> Backgroundcolor = '#000000';<br />$thumb -> Clipcorner = array(2,15,0,1,1,1,1);<br />$thumb -> Watermarkpng = 'watermark.png';<br />$thumb -> Watermarkposition = '50% 50%';<br />$thumb -> Watermarktransparency = 70;<br />$thumb -> Createthumb('gfx/image.jpg');<br />?>

11、给缩略图增加短文本及相框

<?php<br />include_once('inc/easyphpthumbnail.class.php');<br />$thumb = new easyphpthumbnail;<br />$thumb -> Thumbsize = 300;<br />$thumb -> Framewidth = 10;<br />$thumb -> Framecolor = '#00000';<br />$thumb -> Borderpng = 'border.png';<br />$thumb -> Copyrighttext = 'MYWEBMYMAIL.COM';<br />$thumb -> Copyrightposition = '50% 80%';<br />$thumb -> Copyrightfonttype = 'handwriting.ttf';<br />$thumb -> Copyrightfontsize = 30;<br />$thumb -> Copyrighttextcolor = '#FFFFFF';<br />$thumb -> Createthumb('gfx/image.jpg');<br />?>

12、缩略图按指定形状裁剪

<?php<br />include_once('inc/easyphpthumbnail.class.php');<br />$thumb = new easyphpthumbnail;<br />$thumb -> Thumbsize = 300;<br />$thumb -> Borderpng = 'cloud.png';<br />$thumb -> Createthumb('gfx/image.jpg');<br />?>

13、指定区域裁剪图片

<?php<br />include_once('inc/easyphpthumbnail.class.php');<br />$thumb = new easyphpthumbnail;<br />$thumb -> Thumbsize = 300;<br />$thumb -> Cropimage = array(2,0,20,20,35,35);<br />$thumb -> Createthumb('gfx/image.jpg');<br />?>

Cropimage属性六个参数说明
[0]: 0=disable 1=enable free crop 2=enable center crop
[1]: 0=percentage 1=pixels
[2]: Crop left
[3]: Crop right
[4]: Crop top
[5]: Crop bottom

14、裁剪出旧照片效果

<?php<br />include_once('inc/easyphpthumbnail.class.php');<br />$thumb = new easyphpthumbnail;<br />$thumb -> Thumbsize = 300;<br />$thumb -> Shadow = true;<br />$thumb -> Backgroundcolor = '#D0DEEE';<br />$thumb -> Cropimage = array(2,0,20,20,35,35);<br />$thumb -> Ageimage = array(1,10,80);<br />$thumb -> Createthumb('gfx/image.jpg');<br />?>

15、属性或方法详解

A

$thumb -> Addtext = array()// 对原始图像添加文字

数组有六个参数

[0]: 0=disable 1=enable

[1]: The text to add

[2]: The position of the text '50% 50%' is the center

[3]: Path to the TTF font (standard systemfont will be used)

[4]: The fontsize to use

[5]: The copyright text color in web format '#000000'

$thumb -> Ageimage = (array) // 应用灰度 array(1,0,0) 或者旧照片效果 array(1,10,80)

数组有六个参数

[0]: Boolean 0=disable 1=enable

[1]: Add noise 0-100, 0=disable

[2]: Sephia depth 0-100, 0=disable (greyscale)

$thumb -> Applyfilter = (boolean)// 应用用户自定义3x3过滤器

B

$thumb -> Backgroundcolor = (string)// Web格式的背景 '#FFFFFF'

$thumb -> Binder = (boolean) // 在缩略图左边画一粘合剂

$thumb -> Binderspacing = (int) // 以像素为单位的空间

$thumb -> Blur = (boolean) // 模糊过滤器

$thumb -> Borderpng = (string) // 边框PNG图片路径

$thumb -> Brightness = (array) // 改变图片亮度

数组有两个参数

[0]: Boolean 0=disable 1=enable

[1]: Brightness -100 to 100

C

$thumb -> Chmodlevel = (string) // 设置保存图片的权限 '0755'

$thumb -> Clipcorner = (array) // 设置圆角 array(2,15,0,1,1,1,0)

数组有七个参数

[0]: 0=disable 1=straight 2=rounded

[1]: Percentage of clipping

[2]: Clip randomly Boolean 0=disable 1=enable

[3]: Clip top left Boolean 0=disable 1=enable

[4]: Clip bottom left Boolean 0=disable 1=enable

[5]: Clip top right Boolean 0=disable 1=enable

[6]: Clip bottom right Boolean 0=disable 1=enable

$thumb -> Colorreplace = (array)// 颜色替换 array(1,'#FFFFFF','#FF6600',60)

数组有四个参数

[0]: Boolean 0=disable 1=enable

[1]: Color to replace in web format: '#00FF00'

[2]: Replacement color in web format: '#FF0000'

[3]: RGB tolerance 0 - 100

$thumb -> Colorize = (array) // 合并图像中的颜色 array(1,0,0,125,0)

数组有五个参数

[0]: Boolean 0=disable 1=enable

[1]: Red component 0 - 255

[2]: Green component 0 - 255

[3]: Blue component 0 - 255

[4]: Opacity level 0 - 127

$thumb -> Contrast = (array)// 改变图像的对比度 array(1,30)

数组有2个参数

[0]: Boolean 0=disable 1=enable

[1]: Contrast -100 to 100

$thumb -> Copyrighttext = (string) // 增加版权文本

$thumb -> Copyrightposition = (string) // 版权文本位置 '50% 50%' is the center

$thumb -> Copyrightfonttype = (string)// TTF文字字体路径 (standard systemfont will be used)

$thumb -> Copyrightfontsize = (int)// 字体大小

$thumb -> Copyrighttextcolor = (string) // 文字Web格式颜色值 '#000000'

$thumb -> Createthumb('imagepath'[,'output']) // 创建或者输出缩略图

函数有两个参数

[string/array]: 原图片完整路径字符串或数组

[string]: Output to the 'screen' (standard) or 'file' (option)

$thumb -> Createbase64('imagepath')// 以base64数据输出图片

函数有一个参数

[string]: Filename for image to convert

$thumb -> Createcanvas(i,i,i,s,b)// 创建一个画布图像 - use with Createthumb()

函数有五个参数

[int]: Canvas width in pixels

[int]: Canvas height in pixels

[int]: Imagetype PHP: IMAGETYPE_PNG, IMAGETYPE_GIF, IMAGETYPE_JPEG

[string]: Fill color

[boolean]: Transparent (boolean)

$thumb -> Create_apng(array, string, int)// 创建APNG缩略图

函数有三个参数

[array]: Array with filenames of PNG images (frames)

[string]: Filename for APNG: 'animation.png'

[int]: Delay between frames in milliseconds

$thumb -> Cropimage = (array)// 裁剪 array(0,0,20,20,20,20)

数组有六个参数

[0]: 0=disable 1=free crop 2=center crop 3=square crop

[1]: 0=percentage 1=pixels

[2]: Crop left

[3]: Crop right

[4]: Crop top

[5]: Crop bottom

$thumb -> Croprotate = (boolean)// 裁剪图片到同样大小的画布并旋转

D

$thumb -> Displacementmap = (array) // 变形

数组有7个参数: array(1,'gfx/displacementmap.jpg',0,0,0,50,50)

[0]: 0=disable 1=enable

[1]: Path to displacement image (grey #808080 is neutral)

[2]: 0=resize the map to fit the image 1=keep original map size

[3]: X coordinate for map position in px

[4]: Y coordinate for map position in px

[5]: X displacement scale in px

[6]: Y displacement scale in px

$thumb -> Displacementmapthumb = (array) // 缩略图变形

数组有七个参数: array(1,'gfx/displacementmap.jpg',0,0,0,50,50)

[0]: 0=disable 1=enable

[1]: Path to displacement image (grey #808080 is neutral)

[2]: 0=resize the map to fit the image 1=keep original map size

[3]: X coordinate for map position in px

[4]: Y coordinate for map position in px

[5]: X displacement scale in px

[6]: Y displacement scale in px

$thumb -> Divisor = (int)// The divisor for the 3x3 filter

E

$thumb -> Edge = (boolean)// 边缘过滤器

$thumb -> Emboss = (boolean) // 浮雕过滤器

F

$thumb -> Fliphorizontal = (boolean)// 在水平轴翻转图像

$thumb -> Flipvertical = (boolean) // 在垂直轴翻转图像

$thumb -> Filter = (array)// 3x3矩阵 array(-1,-1,-1,-1,8,-1,-1,-1,-1)

数组有九个参数

[0]: a1,1

[1]: a1,2

[2]: a1,3

[3]: a2,1

[4]: a2,2

[5]: a2,3

[6]: a3,1

[7]: a3,2

[8]: a3,3

$thumb -> Framewidth = (int)// 添加缩略图框架(像素)

$thumb -> Framecolor = (string) // 框架颜色 '#FFFFFF'

G

$thumb -> Gamma = (array) // Change the gamma of the image array(1,0.5)

Array with 2 values

[0]: Boolean 0=disable 1=enable

[1]: Gamma correction factor

$thumb -> Greyscale = (boolean) // 真彩色灰度转换

I

$thumb -> Inflate = (boolean) // 允许图片放大

$thumb -> insert_exif('source','exifdata')// 插入二进制数据到JPG图片

Function with 2 values

[string]: Source filename for JPG image

[string]: Binary EXIF data to insert in JPG image

K

$thumb -> Keeptransparency = (boolean) //保持原始图像的透明度

L

$thumb -> Lakefx = (array)// 应用一个湖变形图像 array(1,15,80)

Array with 3 values

[0]: Boolean 0=disable 1=enable

[1]: Density of the waves

[2]: Lake area measured from bottom 0 - 100

M

$thumb -> Maketransparent = (array)// 使图像的透明 array(1,0,'#171915',30)

Array with 4 values

[0]: Boolean 0=disable 1=enable

[1]: 0=PNG 1=GIF

[2]: Replacement color in web format: '#FF0000'

[3]: RGB tolerance 0 - 100

$thumb -> Mean = (boolean) // Auto-filter: Mean

$thumb -> Medianfilter = (boolean) // 采用中值滤波器降噪

$thumb -> Mirror = (array)// 滤镜效果 array(1,10,70,40,2)

Array with 5 values

[0]: Boolean 0=disable 1=enable

[1]: Mirror transparency gradient starting strength 0 - 100

[2]: Mirror transparency gradient ending strength 0 - 100

[3]: Mirror area 0 - 100

[4]: Mirror 'gap' between original image and reflection in px

$thumb -> Mirrorcolor = (string) // The Mirror gradient color in web format '#000000'

N

$thumb -> Negative = (boolean) // Create image negative

O

$thumb -> Offset = (int) // The color offset for the filter

P

$thumb -> Palette = (array) // Change the palette of the image array(1,32)

Array with 2 values

[0]: Boolean 0=disable 1=enable

[1]: Amount of colors for the palette

$thumb -> Percentage = (boolean) // Use percentage instead of pixels

$thumb -> Perspective = (array) // Apply a perspective to the image array(1,0,20)

Array with 3 values

[0]: Boolean 0=disable 1=enable

[1]: Direction 0=left 1=right 2=top 3=bottom

[2]: Perspective strength 0 - 100

$thumb -> Perspectivethumb = (array)// Apply a perspective to the thumbnail array(1,0,20)

Array with 3 values

[0]: Boolean 0=disable 1=enable

[1]: Direction 0=left 1=right 2=top 3=bottom

[2]: Perspective strength 0 - 100

$thumb -> Pixelscramble = (array) // Scramble pixels in the image array(1,4,2)

Array with 3 values

[0]: Boolean 0=disable 1=enable

[1]: Pixel range

[2]: Repeats (use with care!)

$thumb -> Pixelate = (array)// Pixelate the image array(1,10)

Array with 2 values

[0]: Boolean 0=disable 1=enable

[1]: Block size in px

$thumb -> Polaroid = (boolean) // Convert the thumbnail to a polaroid look

$thumb -> Polaroidtext = (string) // Write a text on the polaroid

$thumb -> Polaroidfonttype = (string)// The path to the TTF font

$thumb -> Polaroidfontsize = (int) // The fontsize to use

$thumb -> Polaroidtextcolor = (string) // The polaroid text color in web format '#000000'

$thumb -> Polaroidframecolor = (string)// The polaroid frame color in web format '#FFFFFF'

Q

$thumb -> Quality = (int)// The output quality of JPG images

R

$thumb -> Ripplefx = (array) // Apply a ripple deformation to the image array(1,5,15,5,5)

Array with 5 values

[0]: Boolean 0=disable 1=enable

[1]: Amount of horizontal waves

[2]: Amplitude of horizontal waves in px

[3]: Amount of vertical waves

[4]: Amplitude of vertical waves in px

$thumb -> Rotate = (int)// Rotate the image in degrees

$thumb -> read_exif('source') // Read EXIF information from JPG image

Function with 1 value, returns EXIF binary data

[string]: Filename for image with EXIF information

S

$thumb -> Shadow = (boolean) // Add a shadow around the thumbnail

$thumb -> Shading = (array)// Apply shading to the image array(1,70,80,0)

Array with 4 values

[0]: Boolean 0=disable 1=enable

[1]: Shading strength 0 - 100

[2]: Shading area 0 - 100

[3]: Shading direction 0=right 1=left 2=top 3=bottom

$thumb -> Shadingcolor = (string) // The shading gradient color in web format '#000000'

$thumb -> Sharpen = (boolean) // Auto-filter: Sharpen

$thumb -> Square = (boolean) // Draw thumbnail on a square canvas

T

$thumb -> Thumbfilename = (string) // New filename (with extension)

$thumb -> Thumbheight = (int) // Height of the thumbnail in pixels

$thumb -> Thumblocation = (string)// The path to the thumbnail directory

$thumb -> Thumbprefix = (string) // The prefix for the thumb filename

$thumb -> Thumbsaveas = (string)// Convert the thumbnail to a different format, JPG, GIF or PNG

$thumb -> Thumbsize = (int)// Thumbnailsize in pixels for width (landscape) or height (portrait)

$thumb -> Thumbwidth = (int) // Width of the thumbnail in pixels

$thumb -> Twirlfx = (array) // Apply a twirl deformation to the image array(1,20,0)

Array with 3 values

[0]: Boolean 0=disable 1=enable

[1]: Effect strength 0 to 100

[2]: Direction of twirl 0=clockwise 1=anti-clockwise

W

$thumb -> Waterdropfx = (array)// Apply a waterdrop deformation to the image array(1,1.2,400,40)

Array with 4 values

[0]: Boolean 0=disable 1=enable

[1]: Amplitude in px

[2]: Radius in px

[3]: Wavelength in px

$thumb -> Watermarkpng = (string) // The path to the watermark PNG image

$thumb -> Watermarkposition = (string) // The position of the watermark '50% 50%' is the center

$thumb -> Watermarktransparency = (int)// The transparency of the watermark 0 to 100

$thumb -> wipe_exif('source','destination')// Delete EXIF information from JPG image

Function with 2 values

[string]: Source filename for image with EXIF information

[string]: Filename for image without EXIF information

项目地址:http://www.mywebmymail.com/?q=content/easyphpthumbnail-class


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn