Maison > développement back-end > tutoriel php > PHP生成图片缩略图,并在浏览器中显示,灵活,实用

PHP生成图片缩略图,并在浏览器中显示,灵活,实用

WBOY
Libérer: 2016-07-29 09:01:22
original
1148 Les gens l'ont consulté

由于个人需要上传图片至网站相册,并以缩略图的形式显示,百度了很多源码屡试屡败,自己写了一个函数,已成功运行。缩略图在浏览器中的显示方法是将图片的 src 地址指向一个PHP文件,来调用此函数即可显示。

/**
 *  _thumb()生成缩略图的函数
 */

function _thumb($_filename,$_max_size){  //(图片源地址,最大宽or高)
	//获取文件后缀
	$_n = explode('.', $_filename);
	//生成png表头文件
	header('Content-type:image/png');
	//获取文件的长和高
	list($_width,$_height) = getimagesize($_filename);
	//生成微缩的长和高
	$_percent = $_max_size / (($_width > $_height) ? $_width:$_height);
	$_new_width = $_width * $_percent;
	$_new_height = $_height * $_percent;
	//创建一个微缩画布
	$_new_image = imagecreatetruecolor($_new_width, $_new_height);
	//按照已有的图片创建一个画布
	switch ($_n[1]) {
		case 'jpg':
			$_image = imagecreatefromjpeg($_filename);
			break;
		case 'png':
			$_image = imagecreatefrompng($_filename);
			break;
		case 'gif':
			$_image = imagecreatefromgif($_filename);
			break;
	}
	//将原图采集后重新复制到图上,就缩略了
	imagecopyresampled($_new_image, $_image, 0,0,0,0, $_new_width, $_new_height, $_width, $_height);
	imagepng($_new_image);
	imagedestroy($_new_image);
	imagedestroy($_image);
}
Copier après la connexion

以上就介绍了PHP生成图片缩略图,并在浏览器中显示,灵活,实用,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal